BT

Sibyl: 来自Google的大规模机器学习系统

作者 张天雷 发布于 2014年7月11日 | 被首富的“一个亿”刷屏?不如定个小目标,先把握住QCon上海的优惠吧!

在上周的IEEE/IFIP可靠系统和网络(DSN)国际会议上,Google的软件工程师Tushar Chandra做了一个关于Sibyl系统的主题演讲。Sibyl是一个监督式机器学习系统,用来解决预测方面的问题,比如YouTube的视频推荐。

Tushar主题演讲的题目是“Sibyl:一个用于大规模监督式机器学习的系统”。作为一个靠广告盈利的搜索引擎公司,Google每时每刻都在千方百计的努力理解用户的行为,从而投放更精准的广告。在不同的场景下,用户对于不同信息的反映是不同的,Sibyl的目标就是要学习在这些场景下,什么样的信息能够得到最好的用户反映,然后用机器学习模型来计算展示什么样的内容和广告。

这里机器学习技术主要用在改善内容和用户的相关度,帮助网站主改善站点投放广告的强度,避免恶意广告以及改善广告主的回报率等等。而大规模则是指每天一亿次访问。这样量级访问的业务在Google这样的大公司里比比皆是,如其搜索,视频,邮件,手机系统,Google+等业务。在采用了机器学习技术以后(通常着力于改善算法的准确性),业绩提升有10%左右,基本是工业界的最佳实践。

在讲稿中,Tushar给出了Sibyl的系统架构,如下图所示:

讲稿中还向听众报告了Sibyl系统的现状:用了很多理论上很扎实的机器学习算法,如著名的并行Boosting算法,还带有很多损失函数以及规范化方法,解决了很多互联网全网量级的问题,使用的资源请求在合理范围内。Sibyl系统所采用的技术也是业界流行的:在可扩展问题上采用了MapReduce技术,在并行计算上采用了多核多线程技术,在海量数据存储上采用了Google文件系统(GFS),在数据压缩上采用了面向列的数据格式,在模型训练上充分使用内存(类似Spark的思想)。Tushar还尤其给出了多个业务数据在系统中进行训练的过程和实例数字。

最后,Tushar对大规模机器学习系统设计做了一些展望,如要有一个清晰的流水线,数据预处理、训练、使用等要隔离,开发可以分析TB量级数据的工具,以及加入非监督学习(深度学习之类)的算法模型。


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论
提供反馈
错误报告
商务合作
内容合作
Marketing
InfoQ.com及所有内容,版权所有 © 2006-2016 C4Media Inc. InfoQ.com 服务器由 Contegix提供, 我们最信赖的ISP伙伴。
北京创新网媒广告有限公司 京ICP备09022563号-7 隐私政策
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.