当前位置: 主页 > 皇冠官方网 > 工程案例 » Facebook利用人工智能调整网络服务器性能|皇冠官方网
皇冠官方网
本文摘要:机器学习近年来已被用作调整机器学习本身的性能,那么为什么不必机器学习来提升网络服务器的性能呢?
机器学习近年来已被用作调整机器学习本身的性能,那么为什么不必机器学习来提升网络服务器的性能呢?Facebook的研究人员就是这样做到的,他们周一公开发表了有关用机器学习调整运营在社交网络服务器基础设施上的服务器设置的文章。BenjaminLetham、BrianKarrer、GuilhermeOttoni和EytanBakshy的文章公开发表在_BayesianAnalysis_期刊上,作者还在Facebook的人工智能研究博客上发了博文。
Facebook与所有互联网服务一样也运营所谓的A/B测试,目的是评估服务器在各个变量发生变化时的运营情况。有些人调整过有所不同版本的网页,例如转变按钮的外观或文本的布局,他们就告诉,调整(例如在一个商业网站上的调整)可以优化诸如点击率或购物车用于之类的东西。Facebook的科学家在这项研究中研究了动态生产系统(JIT:Just-in-time)编译器选项的转变对性能的影响,编译器将Python切换为Facebook用作获取HTTP催促的开源Web服务器内的本机x86服务器代码,即“HipHop虚拟机”。
例如,可以将JIT设置为继续执行等价代码块的嵌入之类的操作者。这样的调整会令代码更大些,因此必须展开A/B测试,原因是更大的代码不会消耗更好的服务器内存,因而有适当确认否有一点这样做到。文章的作者用了取名为“贝叶斯分析”的方法,贝叶斯分析是一种机器学习算法,基本思想是特别强调用于过去或先前的信息来确认最佳解决方案。贝叶斯分析在过去十年里被普遍用来优化“超强参数”机器学习,例如用来确认批量的大小或自学速度参数的大小。
由于贝叶斯优化可以替换人手做到超强参数设计的苦差事,有人将用了贝叶斯优化的机器学习称作“自动化”机器学习。文章的作者在用于JIT编译器的设置运营A/B测试时在各种有所不同的地方用了贝叶斯。这样做到仅次于的益处是速度。由于必需在生产环境中展开测试以仔细观察有所不同设置的影响,因此期望需要较慢已完成测试,以便将变更更进一步用作网络服务器。
作者在文章里回应,典型的A/B测试是在每一次只测试一个配备的转变,而贝叶斯优化则“容许我们用较少的测试联合调整更好的参数并寻找更佳的值。”这里的关键是“联合”这个词:贝叶斯机制可以从等价的A/B测试推断出其他参数,以增大“不切实际的“配备,因而需要展开适当的实际A/B测试就能回避某些配备自由选择。
作者用了普遍搜寻能力的字眼,称之为“倒数空间里参数值的测试不仅为我们获取了关于这些参数结果的信息,而且还获取了关于附近点的信息。”贝叶斯模型可以从前期测试结果中取得了新的经验数据,这些经验数据又可以用作更进一步增大搜寻潜在拟合配备的范围,因此整个A/B测试逐步地就更加高效了。Facebook这项贝叶斯优化研究的新贡献是处置噪声。
作者认为,在A/B实验中测试服务器设置与优化机器学习网络有所不同,这时的测试结果和测量皆不存在很多噪音,在现实世界中,设置的变化对服务器性能的影响可以是各种各样的,而且还不存在“噪声”约束,例如服务器内存的用于必须在合理的范围之内。文章的作者明确提出了在贝叶斯算法中解决问题这种噪声的方法,他们得出结论的结论是,用新方法比用其他类型的贝叶斯方法更容易获得拟合解法。用了此方法的A/B测试方法不存在一个有意思的小问题,有些配备从会被中用:因为贝叶斯优化分析的预测几乎回避了那些配备,适当的变量已在测试中被去除。
文章的作者则指出这是个益处,可以增加用户展开大量有所不同实验的苦恼。
本文来源:皇冠官方网-www.casalillibelle.com