写点什么

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

  • 2014-07-10
  • 本文字数:915 字

    阅读完需:约 3 分钟

在上周的 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 )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-10 11:033734
用户头像

发布了 268 篇内容, 共 124.8 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

辟谣:程序员不配谈恋爱?你错的可以!真相来了

码农神说

程序员 漫画 相亲

工作那么久,才知道的 SOLID 设计原则

闻人

架构师 极客大学架构师训练营

wee1作业总结

牛珈羽

极客大学架构师训练营

MySQL InnoDB存储引擎 - 事务

Axe

RabbitMQ跨机房迁移数据零丢失

心平气和

RabbitMQ 消息队列

区块链目前实际的应用场景汇总

CECBC

区块链技术 去中心化 应用场景

架构师训练营 - 第三周学习总结

清风徐徐

【在云端 002】云时代,何以安放我的个人数据

Bora.Don

云计算 云存储

设计原则与设计模式

dapaul

极客大学架构师训练营

ARTS Week5

丽子

【极客大学】【架构师训练营】【第二周】总结:设计原则

NieXY

极客大学架构师训练营

LeetCode 655. Print Binary Tree

liu_liu

算法 LeetCode

十五年后苹果再次变心

池建强

apple 苹果 芯片 wwdc

游戏夜读 | 《老残游记》很有趣

game1night

设计模式之单例模式和组合模式

dapaul

极客大学架构师训练营

每日一题-翻转字符串里的单词

程序员老王

LeetCode

别兜售你自己不会购买的东西

Neco.W

创业 销售管理 销售

SpringBean的生命周期

编号94530

Java spring Spring Boot 生命周期

多个maven项目启动顺序

terrytian

maven

基于业务表 Binlog 的事件驱动设计

理帆

MySQL 事件驱动 Binlog

Redis系列(三):缓存过期该如何剔除?RDB和AOF又是什么?

z小赵

Java redis 高并发 高并发系统设计

第四周 学习总结

冯凯

就餐卡系统架构设计文档

牛珈羽

极客大学架构师训练营

iOS & Android 去马赛克处理

liu_liu

ios android 去马赛克

centos7 操作

InfoQ_1c4a1f813eb1

【极客大学】【架构师训练营】【第二周】依赖倒置原则和接口隔离原则

NieXY

极客大学架构师训练营

食堂就餐卡系统设计

John

极客大学架构师训练营

查找算法系列文(一)一文入门二叉树

淡蓝色

Java 数据结构 算法 二叉树

好奇心, 优秀软件工程师的内核品质

亚伦碎语

读书感悟 随笔杂谈

循序渐进的中台研发

理帆

中台 业务中台

线性表(数组、链表、队列、栈)详细总结

淡蓝色

Java 数据结构 算法 链表 线性表

Sibyl: 来自Google的大规模机器学习系统_语言 & 开发_张天雷_InfoQ精选文章