首先解释计算广告学,追求的是,在一定环境下用户与广告的最佳匹配,这里的一定环境下,包括用户的query,当前浏览的网页,也有一些用户个人信息,但是比较少,这是用户的隐私数据,不好拿到。

点击率预估的问题:

1表示用户点击,0表示没有点击或者用户根本没看到,这个和推荐系统中用户评分差不多啊,没评分的可能表示用户根本不感兴趣或者用户根本没看到。关键的问题是:特征维度高,数据量大(每天可能上亿次的请求)。

数据预处理的问题,首先是展示于点击日志的拼接,我之前以为是在一起的。包括两方面:日志->数据,这是行上的处理,比如抽样,去除缺失数据什么的;日志->特征,这是矩阵中列的处理。

数据/特征规模的问题:百亿广告(行),千亿/百亿级的特征(列),一个问题是类别不平衡(点击的少,未点击或者用户根本没看到的多),噪声大(恶意点击等等)。

特征复杂度高:特征之间高度非线性,举个栗子:不同性别不同年龄段的人关注的广告不同,人工组合方式把特征的非线性表示出来,例如:什么样的人在什么时间应该展示出什么样的广告。话说我觉得应该是response与特征之间的高度非线性问题吧?不是特征之间的非线性,response可能依赖于非线性的某些特征,而这些特征根需要人工或者机器组合得到。

时效性高:点击率随着时间变化,也就是随着时间人的兴趣会变化。

话说核心还是人啊,有些情况下即使输入的query和广告毫不相关,用户也可能以很大的概率点击广告。当然,大部分情况下,query还是能反映出用户的一些意图的,从而推断用户的后续行为。

新广告或者流量的上下线。

数据训练频繁:包括模型更新,比如从LR->DeepLearning.另一个是策略调整(不明觉厉)。因此需要快速,要做的是1获取主要信息,2去噪,所以选择对点击概率分布足够多的样本。

数据处理,去除一些可见/不完整样本,或则机器学习的方法进行样本采样。google的做法:某个query对应的广告一个都没被点击过,则以概率p去掉该query,但是在训练时对那些以P为概率删除的样本乘以一个权重r.目的是为了补偿它。具体见google的论文<>

要用尽可能少的特征表示模型的数据,具体方法包括特征选择与特征删减。模型要小,满足速度上的需求。

主要包括大量id类特征,少量连续型特征。注意是大量id类,少量连续型。id类特征使用one-hot encoding的编码方式。

然后是一个loss function,和之前见到不同的是在非正则化项前加的C,等值线随着C的增大扩张,直到与约束(正则化项)相遇,最常见的是L1范数正则化。其实和之前的都一样。

特征删减:虽然特征那么高维,其实模型真正能用上的特征是比较少的。可以在训练前判断哪些特征的权重可能为0,比如可以根据点击的情况,也就是真实的反馈判断哪些特征权值为0,可以用一个公式衡量特征的分数,例如百度的Fea-G算法(screening test?),新的特征以概率P加入;bloomfilter + 次数超过n次的才加入;google的做法。

人工特征工程:构造高阶组合特征,描述特征间非线性关系(我还是觉得应该是response所需要的非线性特征之间的关系。ps:到底是特征间非线性关系,还是response与非线性特征之间的关系(线性or非线性)?),如下方法:1,人工经验,耗时,也容易达到上界;2,枚举,太慢了;这两种都无法泛化(泛化能力很弱)。

下面,高大上的Deep Learning登场:

DL能自动学习feature,在语音和图像上的情况是:特征少,数据量大。比如28*28的图片可以有几千万张。但是在计算广告学领域,特征的特点是大规模稀疏特征,1,目前尚无专门针对大规模稀疏特征的深度特征学习算法,2,主要是样本相对特征不充分,样本量相对特征量来说比较少。

针对第一个问题,需要降维的方法,针对第二个问题,需要把样本相对多的找出来(比如PV比较多的feature,要充分学习一个feature,需要包含该feature的样本充足)。

不过,网盟团队研发了能直接应用于大规模sparse特征的深度特征学习算法DANNOVA。逐层贪婪算法(这个信息比较有用):单特征->二阶组合->高阶组合。PPT上有个图。另外的问题:训练数据要少,模型需要稀疏才行,这样速度才会快。

优化算法:google保留前N次的梯度,这个貌似是针对L-BFGS说的?每条样本要多训练几次,一次学不完样本中的所有信息(这个我没明白,一次不久行了吗?)。SOA算法,貌似是模型优化算法?

对于L-BFGS算法来说,每一次的梯度之差,步长之差都要保留,为了根据割线定理计算hession矩阵?,由于是个向量,而且维度上千亿,所以对内存是个很大的挑战,而且,当特征矩阵的谱很大时(特征值变化范围较大),收敛速度慢;启动慢,每次重新训练时都要先得到历史上m次的梯度之差,当初始点离真实的解很近时不能很快收敛到真实解。百度自己的shooting算法,对hession矩阵分块,使得特征值差不多的靠的更近。

陈雨强的分享:

首先说广告中的长尾分布,长尾query,百度每天有约20%的query是历史记录中从没有出现过的。长尾问题,是针对query的长尾。不是广告的长尾(展示广告中是广告长尾?)理解点击:1,广告并不是用户所需要的信息(这个容易理解)2,不只是<ad-query>语义。做搜索还行,做广告就不行,对搜索广告来说,语义不是最关键的。

数据比较复杂,则模型也要复杂;数据与模型要线性的?(模型与非线性特征之间的线性?)。常用的方法:大量特征+线性模型;小量特征+非线性模型。

各大公司的方法,来自于论文以及各种传说:

1,小规模feature + 非线性模型:MS:浅层ANN;yahoo!:GBDT;淘宝:局部线性LR(从盖坤的PPT上可以看到);facebook:二层结构,low hierarchies + high hierarchies

2, 大规模特征+线性模型:百度,特征精细描述用户行为,比如query是否有空格等等。

已经证实LR对ctr预估问题有效。通过设计特征提升准确度,feature engineering.

L-BFGS:特征向量上千亿维,一条历史记录的梯度都要占用很大内存。可以使用坐标下降法,随机挑选n列(虽然是随机,但是要尽量使得能遍历全部)update。

优化数据流:所用时间少。

LR:人工加特征,组合特征。但是,人工的方式目前已经没法做了,如何改进?

高大上Deep Learning:

1,学习高层特征,2,逐层贪心算法学习(again)。

DL所遇到的问题:1,特征维度太高,2,模型不能太大,因为要数十毫秒内给出结果(只在线上的时候)。所以要对特征降维:各种降维算法(主要针对id类的,embedding function),连续值型的没必要了。

对于大规模feature,使用cpu/LBFGS即可;小规模feature(容量合适的情况下),可以使用GPU()。

另一个问题:E&E问题,这个就是机制的问题了。baseline算法比如LR可以接触到更多的badcase,从而很好的训练模型,DL接触的机会小,难以说明是不是改进的算法不行。

大家提的一些问题:

1,特征降维:根据特征的层级性。2,数据分布不一致:迁移学习,原数据->目标数据,通过学习数据量比较多的原数据的特征,加入到目标数据中,另外,定义元数据与目标数据的相似度。3,要实用更通用的特征,泛化能力强。4,分布式,SGD不适合分布式,mini-batch SGD,一般是100左右的batch。异步SGD。

总结:

核心还是人。

网搜和商搜用DL的方式不同:网搜直接针对高维稀疏特征,输入是单特征;商搜是先降维(有监督、无监督方法),针对categorical variable降维。方法还是逐层训练不是直接BP。

另外夏粉提到的数据压缩Fea-G,不知道是指的哪些方法。

DL省去了人工组合特征,让机器自己找,有监督的方法会不会更好些?特征可以是高阶,但是特征和模型要线性。

以前考虑广告数据和图像语音数据的不同,图像,语音数据具有结构性,可以抽象出直观的high level feature,所以DL取得的效果比较好。现在觉得,那并不是主要原因吧,关键应该还是非线性模型对线性低阶特征的拟合。

至少知道了我之前的想法中哪些是合理的,哪些是无解的。没办法,没人带就自己一点点儿琢磨吧…

百度计算广告学沙龙笔记相关推荐

  1. 百度计算广告学沙龙学习笔记 - 内容匹配广告

    百度计算广告学沙龙学习笔记 - 内容匹配广告 时间 2014-02-05 18:53:55 CSDN博客 原文  http://blog.csdn.net/three_body/article/det ...

  2. 百度计算广告学沙龙学习笔记 - 品牌展示广告

    第三期百度计算广告学沙龙( http://wenku.baidu.com/course/view/1488bfd5b9f3f90f76c61b8d ) 介绍了内容匹配广告和展示广告相关技术. 本博客记 ...

  3. 计算广告学学习笔记---计算过广告基本概念

    学刘鹏老师的<计算广告学>笔记,课程是免费的,课程地址 一.广告的目的和效果是什么? 广告 Advertisng:广告是由已确定的出资人通过各种媒介进行的有关产品(商品.服务和观点)的,通 ...

  4. 【读书笔记】计算广告学 Mooc

    作者:LogM 本文原载于 https://segmentfault.com/u/logm/articles,不允许转载~ 本文是 计算广告学Mooc 的读书笔记,Mooc讲得比较宏观,没涉及太多具体 ...

  5. 百度大牛讲机制设计和计算广告学

    转自: http://blog.sina.com.cn/s/blog_747e86a90100reyd.html 声明:本系列是一般性介绍,多处引用了田国强老师的<经济机制设计和信息经济学> ...

  6. 刘鹏计算广告学1:广告的基本知识(一)

    计算广告学是一门由信息科学.统计学.计算机科学以及微观经济学等学科交叉融合的新兴分支学科.前MediaV首席科学家.前Yahoo!高级科学家刘鹏开设计算广告学(Computational Advert ...

  7. 《计算广告》学习笔记(一)

    <计算广告>学习笔记(一) 0.写在前面 1.第一章:在线广告综述 1.1:免费模式与互联网核心资产 1.2:大数据与广告的关系 1.3:广告的定义与目的 1.4:在线广告的表现形式 1. ...

  8. 计算广告学(Computational Advertising)CA

    计算广告学是一门正在兴起的分支学科,它涉及到大规模搜索和文本分析.信息获取.统计模型.机器学习.分类.优化以及微观经济学.计算广告学所面临的最主要挑战是在特定语境下特定用户和相应的广告之间找到&quo ...

  9. 《计算广告》学习笔记(二)

    <计算广告>学习笔记(二) 第三章:在线广告产品概述 3.1商业产品的设计原则 3.2广告系统的产品接口 第四章:合约广告 4.1广告位合约 4.2受众定向 4.2.1受众定向方法概览 4 ...

最新文章

  1. 带你走进Kaggle Kernels(内附视频讲解)
  2. 算法-------三角形最小路径和(Java版本)
  3. phpcms v9 内容页显示会员的详细信息(包括自定义字段)
  4. 台湾大学林轩田机器学习基石课程学习笔记14 -- Regularization
  5. SAP Spartacus 如何获得当前渲染页面的 CMS 元数据
  6. 1/1!-1/3!+1/5!-……
  7. matlab水力学工具箱,新浪潮水工设计软件
  8. java mvc mvvm_从MVC到MVVM(为什么要用vue)
  9. 风云气象卫星数据处理调研报告
  10. windows消息机制
  11. [转]caffe源码解析 — caffe.proto
  12. Oralce性能优化-绑定变量窥视
  13. 笔记本电脑的电池损耗度——命令符查看
  14. ios 纯代码怎么适配ipad_iOS屏幕适配(纯代码)
  15. UVA 10815 安迪的第一个字典
  16. 两个例子让你了解什么是中介作用和调节作用
  17. 8 岁小学生 B 站教编程惊动苹果,库克亲自送生日祝福!
  18. JavaEE经典试题(一)
  19. DS18B20测量温度液晶1602显示
  20. 金庸--王重阳谈学习、旅游、谈交友等等

热门文章

  1. python 矩形树图_好看的数据可视化的图片是怎么样做的?
  2. 教师招聘计算机专业技能测试,教师招聘考试面试,专业技能测试考什么?全在这了...
  3. hadoop找出QQ共同好友算法实现
  4. CNC数控编程模具设计讲解数控机床原理
  5. [Unity]风铃悬挂物体实现
  6. Linux 系统监控工具链
  7. 【Effection C++】读书笔记 条款10~条款12
  8. 台式计算机如何设置三道密码,台式电脑怎么设置待机密码
  9. 图像处理、计算机视觉、算法相关资源
  10. C语言:输入a,b,c的值求一元二次方程x的解