一淘广告机器学习
Upcoming SlideShare
Loading in...5
×
 

一淘广告机器学习

on

  • 4,704 views

#LAMP人#第14期《海量数据挖掘与应用 – e淘专场》 之 《一淘广告机器学习平台》- 蒋龙(昙宗)

#LAMP人#第14期《海量数据挖掘与应用 – e淘专场》 之 《一淘广告机器学习平台》- 蒋龙(昙宗)

Statistics

Views

Total Views
4,704
Views on SlideShare
4,164
Embed Views
540

Actions

Likes
13
Downloads
160
Comments
0

1 Embed 540

http://blog.lamper.cn 540

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    一淘广告机器学习 一淘广告机器学习 Presentation Transcript

    • 一淘广告机器学习平台 蒋龙(昙宗) 2012年4月 1
    • 第14期: 《海量数据挖掘与应用 》- e淘专场 www.LAMPER.cn http://weibo.com/lampercn
    • 内容提要• 机器学习 – 机器学习与互联网广告 – 并行计算与机器学习• 一淘广告中的机器学习 – 广告点击率预估 – 混合逻辑回归模型
    • 机器学习• 计算机自动从数据中发现规律,并应用于 解决新问题 – 给定数据(X1,Y1), (X2,Y2), … ,(Xn,Yn) – 对新的Xi,预测其Yi – 例子 • 智商测试:1, 3, 6, 10, ? – (1,1),(2,3),(3,6),(4,10) ,(5,?) – f(n) = (n^2+n)/2
    • 机器学习与互联网• 机器学习技术 – 分类,聚类,回归,排序...• 互联网应用 – 用户分类,网页/新闻分类,Query分类,商品 分类 • 同样于聚类 – 点击率预估 – 网页搜索排序
    • 互联网广告• 广告 – 恰当的用户,恰当的环境,恰当的内容 – 广告主,广告平台,用户共赢• 机器学习应用 – 用户的偏好和需求理解 – 广告内容理解 – 相关性计算(用户,环境,内容) – 展现分配
    • 挑战• 海量数据 – 训练样例 • 每天的访问量上亿级别 • 相关信息不断累积 – 特征空间 • 用户,Query,广告,商品,图片,文字,销量…• 时效性 – 实时反应数据的变化
    • MPI并行计算• 消息传递接口(Message Passing Interface, MPI) – 并行计算编程模型 – 通过在进程间传递消息完成数据交换• MPI基本函数 – Init, Finalize – Comm_size, Comm_rank – Send, Recv,
    • MPI与Map-Reduce• MPI模型 – 基于进程通信的计算模型 – 程序员能更多控制内部交互 – 适合逻辑复杂的分布式运算,如机器学习算法• Map-Reduce模型 – 适合独立的线性计算过程 – 超大数据量进行并发计算 – 内置容错逻辑• 综合利用 – 利用Map-Reduce模型处理数据 – 利用MPI进行模型训练
    • 阿里Hadoop集群• 2000+台机器 – 几十PB容量 – 扫描数据>1PB/天• 适合于数据处理 – 商品,日志,用户
    • 一淘MPI集群• 2011年启动 – 100+台机器• 算法 – 逻辑回归 – 混合逻辑回归• 应用 – 广告点击率预估 – 广告质量分计算
    • 内容提要• 机器学习 – 机器学习与互联网广告 – 并行计算与机器学习• 一淘广告中的机器学习 – 广告点击率预估 – 混合逻辑回归模型
    • 广告点击率预估• CPC广告排序规则 – RankScore = CTR*BidPrice • BidPrice:广告主出价 • Ctr:广告的点击率 – 排序时CTR未知,需要预估• 任务 – 搜索广告 • 给定一个query,估计该每个广告的ctr – 定向广告 • 给定一个用户,估计每个广告的ctr
    • 广告点击率预估• 逻辑回归模型 1 P(Y  1 | X )  1 e (  0   i xi ) p1 ln ( )   0    i  xi p0• 参数估计 – 最大似然法 – 基于L-BFGS算法快速迭代计算
    • 特征来源• 商品/广告信息: – 文字描述、类目、价格、成交量等• 卖家信息: – 信誉度、收藏数据量等• 用户信息: – 历史搜索、点击、购买、收藏记录等• 其他信息 – 季节、节假日等
    • 模型训练• Hadoop原始数据 – ~100TB – 处理时间:~5小时• 基于MPI的模型训练 – 十亿级特征 – 百亿级训练样例 – 运算时间:~10小时
    • 效果评价• 线下评估: – AUC评估:真实ctr高的广告是否预测ctr也高? – MAE/MSE评估:预测值是否和真实值差距小?• 人工评估 – 预估ctr高的广告是否好广告?• 线上评估: – 对比基准系统CTR是否提升?
    • 小结 实验评估 MPI集群分布 式模型训练Hadoop超大规模特征抽取
    • 混合逻辑回归模型• 问题 – 目前在业界广泛使用的传统逻辑回归模型无法抓住数 据的非线性关系• 非线性关系 – 已知数据 1. 广告历史CTR: ad_ctr 2. 广告历史PV:ad_pv 3. 广告所在类目CTR:cat_ctr – 一种可能的预测规则为
    • 如何解决?• 方法一:使用特征变换 – 在使用线性模型之前,对特征进行预变换 • (单维特征)离散化、(单维特征)交叉 – 问题: • 离散化区间过少,则表达能力不足 • 离散化区间过多,则面临数据稀疏问题 • 离散化、交叉的选择太多,费时费力,很难找到较 好的处理方式 • 特征数多时,无法穷举所有的交叉组合,因此仍然 不能完全抓住数据的非线性关系
    • 如何解决?• 方法二:使用非线性学习机器 – 1. 决策树和GBDT类(boosting) • 问题1:对维数很大的数据不适用(会生成过多的树 叶,造成计算复杂度问题以及推广性问题) • 问题2:模型的预测输出对输入特征是不连续的。造 成突变影响预测值的稳定性,也影响推广性能 – 2. 其它非线性学习机器,例如kernel SVM等 • 问题:无法适用于大规模数据
    • 如何解决• 我们的方法 – 适用于大规模、高维度数据的非线性学习机器—混 合逻辑回归模型• 重新考虑: – 简单原理解释:首先,根据一个线性模型ad_pv-K 的值将数据分别分到两个领域中: • 第一领域内使用线性模型ad_ctr预测; • 第二个领域内用另一个线性模型cate_ctr预测。
    • 总结• 互联网->机器学习->并行计算• 一淘广告中的机器学习 – Hadoop处理数据 – MPI集群训练模型 – 模型创新:混合逻辑回归模型