SlideShare a Scribd company logo
一淘广告机器学习平台

   蒋龙(昙宗)
   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集群训练模型


 – 模型创新:混合逻辑回归模型
一淘广告机器学习

More Related Content

Viewers also liked

CTR logistic regression
CTR logistic regressionCTR logistic regression
CTR logistic regression
Joseph Duimstra, Ph.D.
 
Linear regression on 1 terabytes of data? Some crazy observations and actions
Linear regression on 1 terabytes of data? Some crazy observations and actionsLinear regression on 1 terabytes of data? Some crazy observations and actions
Linear regression on 1 terabytes of data? Some crazy observations and actions
Hesen Peng
 
Exploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal WabbitExploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal Wabbit
Shiladitya Sen
 
Dynamic pricing
Dynamic pricingDynamic pricing
Dynamic pricing
jsnowbabyyyy
 
Cross Device Ad Targeting at Scale
Cross Device Ad Targeting at ScaleCross Device Ad Targeting at Scale
Cross Device Ad Targeting at Scale
Trieu Nguyen
 
Training Large-scale Ad Ranking Models in Spark
Training Large-scale Ad Ranking Models in SparkTraining Large-scale Ad Ranking Models in Spark
Training Large-scale Ad Ranking Models in Spark
Patrick Pletscher
 
Ranking scales
Ranking scalesRanking scales
Ranking scales
zeeshan3434
 
Outbrain Click Prediction
Outbrain Click PredictionOutbrain Click Prediction
Outbrain Click Prediction
Alexey Grigorev
 
Multinomial Logistic Regression with Apache Spark
Multinomial Logistic Regression with Apache SparkMultinomial Logistic Regression with Apache Spark
Multinomial Logistic Regression with Apache Spark
DB Tsai
 
Scaling out logistic regression with Spark
Scaling out logistic regression with SparkScaling out logistic regression with Spark
Scaling out logistic regression with Spark
Barak Gitsis
 
CTR Prediction using Spark Machine Learning Pipelines
CTR Prediction using Spark Machine Learning PipelinesCTR Prediction using Spark Machine Learning Pipelines
CTR Prediction using Spark Machine Learning Pipelines
Manisha Sule
 
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
DB Tsai
 

Viewers also liked (12)

CTR logistic regression
CTR logistic regressionCTR logistic regression
CTR logistic regression
 
Linear regression on 1 terabytes of data? Some crazy observations and actions
Linear regression on 1 terabytes of data? Some crazy observations and actionsLinear regression on 1 terabytes of data? Some crazy observations and actions
Linear regression on 1 terabytes of data? Some crazy observations and actions
 
Exploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal WabbitExploring Optimization in Vowpal Wabbit
Exploring Optimization in Vowpal Wabbit
 
Dynamic pricing
Dynamic pricingDynamic pricing
Dynamic pricing
 
Cross Device Ad Targeting at Scale
Cross Device Ad Targeting at ScaleCross Device Ad Targeting at Scale
Cross Device Ad Targeting at Scale
 
Training Large-scale Ad Ranking Models in Spark
Training Large-scale Ad Ranking Models in SparkTraining Large-scale Ad Ranking Models in Spark
Training Large-scale Ad Ranking Models in Spark
 
Ranking scales
Ranking scalesRanking scales
Ranking scales
 
Outbrain Click Prediction
Outbrain Click PredictionOutbrain Click Prediction
Outbrain Click Prediction
 
Multinomial Logistic Regression with Apache Spark
Multinomial Logistic Regression with Apache SparkMultinomial Logistic Regression with Apache Spark
Multinomial Logistic Regression with Apache Spark
 
Scaling out logistic regression with Spark
Scaling out logistic regression with SparkScaling out logistic regression with Spark
Scaling out logistic regression with Spark
 
CTR Prediction using Spark Machine Learning Pipelines
CTR Prediction using Spark Machine Learning PipelinesCTR Prediction using Spark Machine Learning Pipelines
CTR Prediction using Spark Machine Learning Pipelines
 
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
2014-10-20 Large-Scale Machine Learning with Apache Spark at Internet of Thin...
 

Similar to 一淘广告机器学习

網路廣告的基本架構
網路廣告的基本架構網路廣告的基本架構
網路廣告的基本架構
Chen-en Lu
 
机器学习与深度学习简介.pdf
机器学习与深度学习简介.pdf机器学习与深度学习简介.pdf
机器学习与深度学习简介.pdf
Cyanny LIANG
 
Streaming platform overview 2014
Streaming platform overview 2014Streaming platform overview 2014
Streaming platform overview 2014
Sean Zhong
 
云存储与虚拟化分论坛 基于云计算的海量数据挖掘
云存储与虚拟化分论坛 基于云计算的海量数据挖掘云存储与虚拟化分论坛 基于云计算的海量数据挖掘
云存储与虚拟化分论坛 基于云计算的海量数据挖掘
Riquelme624
 
Qcon2013 罗李 - hadoop在阿里
Qcon2013 罗李 - hadoop在阿里Qcon2013 罗李 - hadoop在阿里
Qcon2013 罗李 - hadoop在阿里
li luo
 
machine learning introduction
machine learning introduction machine learning introduction
machine learning introduction
FEG
 
中国の最新 GPU ディープラーニング事例のご紹介
中国の最新 GPU ディープラーニング事例のご紹介中国の最新 GPU ディープラーニング事例のご紹介
中国の最新 GPU ディープラーニング事例のご紹介
NVIDIA Japan
 
Why is data so important?
Why is data so important?Why is data so important?
Why is data so important?
Ye (Julia) Li
 
杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务
hdhappy001
 
分布式流数据实时计算平台 Iprocess
分布式流数据实时计算平台 Iprocess分布式流数据实时计算平台 Iprocess
分布式流数据实时计算平台 Iprocess
babel_qi
 
系統資源使用思維
系統資源使用思維系統資源使用思維
系統資源使用思維
YC Liang
 
Greenplum技术
Greenplum技术Greenplum技术
Greenplum技术锐 张
 
Making data-informed decisions and building intelligent products (Chinese)
Making data-informed decisions and building intelligent products (Chinese)Making data-informed decisions and building intelligent products (Chinese)
Making data-informed decisions and building intelligent products (Chinese)
Jay (Jianqiang) Wang
 
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731drewz lin
 
数据挖掘理论与实践
数据挖掘理论与实践数据挖掘理论与实践
数据挖掘理论与实践
medcl
 
唯品会大数据实践 Sacc pub
唯品会大数据实践 Sacc pub唯品会大数据实践 Sacc pub
唯品会大数据实践 Sacc pub
Chao Zhu
 
01_智慧英文評分系統 Evaluate Student Summaries
01_智慧英文評分系統 Evaluate Student Summaries01_智慧英文評分系統 Evaluate Student Summaries
01_智慧英文評分系統 Evaluate Student Summaries
IttrainingIttraining
 
大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術
Wei-Yu Chen
 
排队论及其应用浅析
排队论及其应用浅析排队论及其应用浅析
排队论及其应用浅析
frogd
 
分布式Key Value Store漫谈
分布式Key Value Store漫谈分布式Key Value Store漫谈
分布式Key Value Store漫谈
Tim Y
 

Similar to 一淘广告机器学习 (20)

網路廣告的基本架構
網路廣告的基本架構網路廣告的基本架構
網路廣告的基本架構
 
机器学习与深度学习简介.pdf
机器学习与深度学习简介.pdf机器学习与深度学习简介.pdf
机器学习与深度学习简介.pdf
 
Streaming platform overview 2014
Streaming platform overview 2014Streaming platform overview 2014
Streaming platform overview 2014
 
云存储与虚拟化分论坛 基于云计算的海量数据挖掘
云存储与虚拟化分论坛 基于云计算的海量数据挖掘云存储与虚拟化分论坛 基于云计算的海量数据挖掘
云存储与虚拟化分论坛 基于云计算的海量数据挖掘
 
Qcon2013 罗李 - hadoop在阿里
Qcon2013 罗李 - hadoop在阿里Qcon2013 罗李 - hadoop在阿里
Qcon2013 罗李 - hadoop在阿里
 
machine learning introduction
machine learning introduction machine learning introduction
machine learning introduction
 
中国の最新 GPU ディープラーニング事例のご紹介
中国の最新 GPU ディープラーニング事例のご紹介中国の最新 GPU ディープラーニング事例のご紹介
中国の最新 GPU ディープラーニング事例のご紹介
 
Why is data so important?
Why is data so important?Why is data so important?
Why is data so important?
 
杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务杨少华:阿里开放数据处理服务
杨少华:阿里开放数据处理服务
 
分布式流数据实时计算平台 Iprocess
分布式流数据实时计算平台 Iprocess分布式流数据实时计算平台 Iprocess
分布式流数据实时计算平台 Iprocess
 
系統資源使用思維
系統資源使用思維系統資源使用思維
系統資源使用思維
 
Greenplum技术
Greenplum技术Greenplum技术
Greenplum技术
 
Making data-informed decisions and building intelligent products (Chinese)
Making data-informed decisions and building intelligent products (Chinese)Making data-informed decisions and building intelligent products (Chinese)
Making data-informed decisions and building intelligent products (Chinese)
 
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731
曲琳 购物搜索引擎架构的变与不变——一淘网搜索技术分享0731
 
数据挖掘理论与实践
数据挖掘理论与实践数据挖掘理论与实践
数据挖掘理论与实践
 
唯品会大数据实践 Sacc pub
唯品会大数据实践 Sacc pub唯品会大数据实践 Sacc pub
唯品会大数据实践 Sacc pub
 
01_智慧英文評分系統 Evaluate Student Summaries
01_智慧英文評分系統 Evaluate Student Summaries01_智慧英文評分系統 Evaluate Student Summaries
01_智慧英文評分系統 Evaluate Student Summaries
 
大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術
 
排队论及其应用浅析
排队论及其应用浅析排队论及其应用浅析
排队论及其应用浅析
 
分布式Key Value Store漫谈
分布式Key Value Store漫谈分布式Key Value Store漫谈
分布式Key Value Store漫谈
 

More from Shaoning Pan

海量数据计算架构实现
海量数据计算架构实现海量数据计算架构实现
海量数据计算架构实现
Shaoning Pan
 
RTB 优化算法
RTB 优化算法RTB 优化算法
RTB 优化算法
Shaoning Pan
 
Technology Changes
Technology ChangesTechnology Changes
Technology Changes
Shaoning Pan
 
海量用户数据处理及其在一淘广告和推荐中的应用
海量用户数据处理及其在一淘广告和推荐中的应用海量用户数据处理及其在一淘广告和推荐中的应用
海量用户数据处理及其在一淘广告和推荐中的应用
Shaoning Pan
 
大型互联网广告应用系统架构
大型互联网广告应用系统架构大型互联网广告应用系统架构
大型互联网广告应用系统架构
Shaoning Pan
 
Tanx成长之路 real time media
Tanx成长之路 real time mediaTanx成长之路 real time media
Tanx成长之路 real time media
Shaoning Pan
 
移动社交网络动态框架 李章晶
移动社交网络动态框架 李章晶移动社交网络动态框架 李章晶
移动社交网络动态框架 李章晶
Shaoning Pan
 
移动互联网产业分析 梁文静
移动互联网产业分析 梁文静移动互联网产业分析 梁文静
移动互联网产业分析 梁文静
Shaoning Pan
 
曾勇 Elastic search-intro
曾勇 Elastic search-intro曾勇 Elastic search-intro
曾勇 Elastic search-intro
Shaoning Pan
 
Hadoop的etl任务—flume使用及其 优化-品友互动
 Hadoop的etl任务—flume使用及其 优化-品友互动 Hadoop的etl任务—flume使用及其 优化-品友互动
Hadoop的etl任务—flume使用及其 优化-品友互动
Shaoning Pan
 
互联网广告发展的趋势-品友互动
互联网广告发展的趋势-品友互动 互联网广告发展的趋势-品友互动
互联网广告发展的趋势-品友互动
Shaoning Pan
 
互联网行为分析和数据挖掘-品友互动
互联网行为分析和数据挖掘-品友互动互联网行为分析和数据挖掘-品友互动
互联网行为分析和数据挖掘-品友互动
Shaoning Pan
 
如何构建一个高可用可扩展的广告投放平台-品友互动
如何构建一个高可用可扩展的广告投放平台-品友互动 如何构建一个高可用可扩展的广告投放平台-品友互动
如何构建一个高可用可扩展的广告投放平台-品友互动
Shaoning Pan
 
网站前段性能优化-品友互动
 网站前段性能优化-品友互动 网站前段性能优化-品友互动
网站前段性能优化-品友互动
Shaoning Pan
 
品友互动 Hadoop的etl任务—flume使用及其 优化
品友互动 Hadoop的etl任务—flume使用及其 优化品友互动 Hadoop的etl任务—flume使用及其 优化
品友互动 Hadoop的etl任务—flume使用及其 优化
Shaoning Pan
 
分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏
Shaoning Pan
 
Cassandra实时统计分享 - 赵伟
Cassandra实时统计分享  - 赵伟Cassandra实时统计分享  - 赵伟
Cassandra实时统计分享 - 赵伟
Shaoning Pan
 
Android应用开发 - 沈大海
Android应用开发 - 沈大海Android应用开发 - 沈大海
Android应用开发 - 沈大海
Shaoning Pan
 
淘宝数据魔方的系统架构 -长林
淘宝数据魔方的系统架构 -长林淘宝数据魔方的系统架构 -长林
淘宝数据魔方的系统架构 -长林
Shaoning Pan
 
Think social to go global
Think social to go globalThink social to go global
Think social to go global
Shaoning Pan
 

More from Shaoning Pan (20)

海量数据计算架构实现
海量数据计算架构实现海量数据计算架构实现
海量数据计算架构实现
 
RTB 优化算法
RTB 优化算法RTB 优化算法
RTB 优化算法
 
Technology Changes
Technology ChangesTechnology Changes
Technology Changes
 
海量用户数据处理及其在一淘广告和推荐中的应用
海量用户数据处理及其在一淘广告和推荐中的应用海量用户数据处理及其在一淘广告和推荐中的应用
海量用户数据处理及其在一淘广告和推荐中的应用
 
大型互联网广告应用系统架构
大型互联网广告应用系统架构大型互联网广告应用系统架构
大型互联网广告应用系统架构
 
Tanx成长之路 real time media
Tanx成长之路 real time mediaTanx成长之路 real time media
Tanx成长之路 real time media
 
移动社交网络动态框架 李章晶
移动社交网络动态框架 李章晶移动社交网络动态框架 李章晶
移动社交网络动态框架 李章晶
 
移动互联网产业分析 梁文静
移动互联网产业分析 梁文静移动互联网产业分析 梁文静
移动互联网产业分析 梁文静
 
曾勇 Elastic search-intro
曾勇 Elastic search-intro曾勇 Elastic search-intro
曾勇 Elastic search-intro
 
Hadoop的etl任务—flume使用及其 优化-品友互动
 Hadoop的etl任务—flume使用及其 优化-品友互动 Hadoop的etl任务—flume使用及其 优化-品友互动
Hadoop的etl任务—flume使用及其 优化-品友互动
 
互联网广告发展的趋势-品友互动
互联网广告发展的趋势-品友互动 互联网广告发展的趋势-品友互动
互联网广告发展的趋势-品友互动
 
互联网行为分析和数据挖掘-品友互动
互联网行为分析和数据挖掘-品友互动互联网行为分析和数据挖掘-品友互动
互联网行为分析和数据挖掘-品友互动
 
如何构建一个高可用可扩展的广告投放平台-品友互动
如何构建一个高可用可扩展的广告投放平台-品友互动 如何构建一个高可用可扩展的广告投放平台-品友互动
如何构建一个高可用可扩展的广告投放平台-品友互动
 
网站前段性能优化-品友互动
 网站前段性能优化-品友互动 网站前段性能优化-品友互动
网站前段性能优化-品友互动
 
品友互动 Hadoop的etl任务—flume使用及其 优化
品友互动 Hadoop的etl任务—flume使用及其 优化品友互动 Hadoop的etl任务—flume使用及其 优化
品友互动 Hadoop的etl任务—flume使用及其 优化
 
分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏
 
Cassandra实时统计分享 - 赵伟
Cassandra实时统计分享  - 赵伟Cassandra实时统计分享  - 赵伟
Cassandra实时统计分享 - 赵伟
 
Android应用开发 - 沈大海
Android应用开发 - 沈大海Android应用开发 - 沈大海
Android应用开发 - 沈大海
 
淘宝数据魔方的系统架构 -长林
淘宝数据魔方的系统架构 -长林淘宝数据魔方的系统架构 -长林
淘宝数据魔方的系统架构 -长林
 
Think social to go global
Think social to go globalThink social to go global
Think social to go global
 

一淘广告机器学习

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