写点什么

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:033660
用户头像

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

关注

评论

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

云安全将进入黄金时代 - Gartner 报告解读

HummerCloud

云计算 云安全 Gartner

阿里老表总结的“JVM核心笔记”,让我瞬涨7K!

程序知音

Java 架构 性能优化 JVM 后端技术

面试官:你说说Vue中的组件和插件有什么区别?

CoderBin

vue.js 面试 前端 组件 10月月更

从零手写react-router

helloworld1024fd

JavaScript

阿里全新推出:微服务突击手册,把所有操作都写出来了|超清PDF

程序知音

Java 微服务 阿里 SpringCloud 后端技术

TDengine 3.0 中如何编译、创建和使用自定义函数

TDengine

数据库 tdengine 开源 时序数据库

一步步实现React-Hooks核心原理

helloworld1024fd

JavaScript

技术内幕 | StarRocks Pipeline 执行框架(上)

StarRocks

数据库

idea启动build过慢

拾光师

IDEA 10月月更

啃透Alibaba这份面试通关宝典,信心倍增!我成功拿下今年第15个Offer

Geek_0c76c3

Java 数据库 开源 程序员 架构

一文带你玩转ProtoBuf

王中阳Go

Go 微服务 RPC protobuf 10月月更

鹅厂二面,nginx回忆录

有态度的马甲

React源码分析7-state计算流程和优先级

goClient1992

React

人工智能软件及服务细分市场数据监测报告合集

易观分析

人工智能 报告

运维监控管理平台 TASKCTL 流程启动的3种不同模式

敏捷调度TASKCTL

大数据 数据仓库 自动化运维 TASKCTL DevOps工具

leetcode 220. Contains Duplicate III 存在重复元素 III(困难)

okokabcd

LeetCode 数据结构与算法

太神了!阿里p7大佬总结的Java面试心得,起始—进阶—突击,一应俱全!

Geek_0c76c3

Java 数据库 开源 程序员 架构

打造面向工业4.0的智能工厂01|云边协同架构助力视觉AI缺陷检测应用构建

EMQ映云科技

AI 物联网 IoT emqx 10月月更

在 Go 语言中使用 exec 包执行 Shell 命令

宇宙之一粟

Shell Go 语言 10月月更

腾讯强推Spring Security速成笔记太香了!认证授权一键搞定

程序知音

Java 架构 spring security 后端技术 Spirng

自己手写一个redux

helloworld1024fd

JavaScript

JPEX推出竞猜世界杯冠军球队活动,质押平台通证赢奖金

股市老人

太强了!阿里巴巴最新开源303页Spring全家桶高级笔记,深入瓦解源码

Geek_0c76c3

Java 开源 程序员 架构 开发

京东的“618”高并发秒杀终极版教程!(Java语言设计)

程序知音

Java 架构 并发编程 高并发 后端技术

中国CRM要超车,没有弯道

ToB行业头条

基于 openEuler 22.09 版本构建的 NestOS 全新发布!

openEuler

镜像 操作系统 openEuler

基础设施 NFTScan 正式发布 Avalanche 网络 NFT 浏览器

NFT Research

区块链 NFT web3 数据基础设施 Avalanche

《数字经济全景白皮书》证券财富管理篇 重磅发布

易观分析

金融 证券

阿里大牛强力推荐:springboot实战派文档,采用知识点+实例的形势,深入了解

Geek_0c76c3

数据库 spring 开源 程序员 架构

React源码分析8-状态更新的优先级机制

goClient1992

React

实践了上万次,原来这些才是敏捷测试需要遵循的原则

敏捷开发

敏捷 测试 单元测试

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