我们假设事件的发生并不是相互独立的,相反,在层级结构中相对比较靠近的两个事件的相关性要大于距离较远的两个事件,它们之间拥有很多共通之处。于是,我们便可以利用“相似”事件的信息来丰富某个我们感兴趣的事件(这个事件本事的发生的次数比较少)。具体到我们现有的场景下,可以利用与我们需要预估的事件(比如query-ad pair,或者page-ad pair)的“相似”事件的信息来帮助我们来做出预估计算。

假设有相同account下的N个ad

,以及所在的page,我们感兴趣的是page-ad pair的CTR,于是我们可以利用贝叶斯的方法来结合(1)这个ad本身的信息,以及(2)该page下与这个ad来自相同account的其它ad的信息。我们观测到的点击信息为

,这些点击信息源自各个ad的隐含CTR信息

,点击信息服从二项分布

。而隐含的每个ad的CTR,可以看做是来自于它们相同的account的公有信息,其服从贝塔分布

。于是乎,每个ad的隐含CTR值,不仅与观测到的展示点击数据

有关,还与其所属的account的整体信息有关,即与

这对超参数有关。我们可以利用二项分布和贝塔分布的共轭特性,计算所有ad所属的相同account的似然函数,然后利用最大似然估计(MLE)来计算超参数

。当有了

的估计值

后,我们便可以得到每个ad的后验估计:

。这个后验估计值可以作为一个平滑后的CTR值,它要比单纯地统计CTR

拥有更小的方差,更加稳定。

3. 数据的连续性

在很多场景下,我们更关心CTR的趋势,而不是一个特定时间点的CTR值。因为对于展示量较少的page-ad pair,某个特定时间点的CTR预估值是包含很大噪声的。我们将展现和点击看做是离散集合的重复观测值,然后使用指数平滑技术进行CTR平滑。

假设对于page-ad pair,我们有M天的展现

和点击

,然后我们希望预估出第M天的CTR。我们将平滑后的展现和点击记为

,它们可由下面公式得到(这里只给出了点击的公式计算,展现也同理):

其中,

是平滑系数,它控制着我们把历史信息纳入我们平滑的计算中的权重大小。

上述的两种方法:(1)数据层级结构的贝叶斯平滑,(2)时间窗口的指数平滑,可以结合使用。

4. 数据层级结构的贝叶斯平滑方法具体介绍

这里我们规定将page-ad pair的信息在层级结构上上升到publisher-account pair的信息(不同page隶属于相同的publisher,不同的ad隶属于相同的account)。

有两个假设:

(1)对于publisher-account pair,有1个隐含的CTR概率分布,而每个page-ad pair的CTR可以看作是从这个整体的CTR分布中随机采样出来的。

(2)对于page-ad pair,我们观测到其对应的展现信息和点击信息。

其对应的概率图模型如下,灰色部分是观测变量,白色部分是隐含变量:

对于该publisher-account下的所有page-ad pair的点击计算出似然函数:

将上述的log似然函数分别对α和β求导数,即为:

通过fixed-point iteration方法,我们可以得到α和β在每一轮迭代中的更新公式:

迭代的终止条件为一个固定的迭代次数(如1000次),或者α和β在一次迭代中的变化值都小于一个epsilon(如1E-10)。一旦有了

的估计值

后,我们便可以得到每个ad的后验估计:

5. 贝叶斯参数估计

这里简单介绍一下为什么有了

的估计值

后,便可以得到后验估计:

我们知道贝叶斯参数估计的基本过程是:先验分布 + 似然函数 = 后验分布

由于我们假定了先验分布是Beta分布,而似然函数是二项分布,由Beta-Binomial共轭,我们可以得到,后验分布也是Beta分布,如下:

Beta(p|a,b) + BinomCount(m1,m2) = Beta(p|a+m1,b+m2)

这种共轭形式的好处是,我们能够在先验分布中赋予参数很明显的物理意义,这个物理意义可以延续到后验分布中进行解释,同时从先验分布变换到后验分布过程中从数据中补充的知识也容易有物理解释。

在我们这里,先验分布是服从Beta(α,β)分布的,而通过似然函数BinomCount(C,I-C)后,后验分布变为Beta(α+C,β+I-C)。

对这个后验分布,我们有两种参数估计方法:

1)MAP估计:直接看后验分布Beta(α+C,β+I-C)取值最大时候的参数,这时候为:(α+C-1) / (α+β+I-2)。

2)贝叶斯估计:对服从后验分布Beta(α+C,β+I-C)的变量求数学期望,这时候为:(α+C) / (α+β+I)。

数学期望的计算过程如下所示:

6. 实验介绍

评估指标:

1)MSE

2)KL_divergence

实验策略:

选取展示数不低于10000次的page-ad pair作为实验数据集,从中采样1% / 0.1% / 0.001% 用于预测page-ad ctr,剩余99%  / 99.9% / 99.99% 的数据集用于对预测值进行评估。

7. 参考文献

1. Click-Through Rate Estimation for Rare Events in Online Advertising

版权声明:

本文由笨兔勿应所有,发布于http://www.cnblogs.com/bentuwuying。如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任。

ctr 平滑_CTR预估中的贝叶斯平滑方法及其代码实现相关推荐

  1. 基于变化点 copula 优化算法中的贝叶斯研究(Matlab代码实现)

  2. 贝叶斯线性回归方法的解释和优点

    本文对比了频率线性回归和贝叶斯线性回归两种方法,并对后者进行了详细的介绍,分析了贝叶斯线性回归的优点和直观特征. 我认为贝叶斯学派和频率学派之间的纷争是「可远观而不可亵玩」的学术争论之一.与其热衷于站 ...

  3. 广告点击率的贝叶斯平滑

    广告点击率的贝叶斯平滑 声明: 1)该博文是Yahoo专家所无私奉献的论文资料整理的.具体引用的资料请看参考文献.具体的版本声明也参考原文献 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并 ...

  4. 点击率预测的贝叶斯平滑

    文章目录 背景 贝叶斯平滑 点击率贝叶斯平滑的假设 点击率的极大似然估计 点击率的贝叶斯估计 平滑系数的计算 贝叶斯平滑因子的工程实践 矩估计 工程实践 非二项分布的贝叶斯平滑 背景 电商领域中经常需 ...

  5. gamma函数、beta分布、贝叶斯平滑、特征校准

    目录 一. gamma函数 二.Beta分布 三.贝叶斯估计 四.贝叶斯估计的运用 一. gamma函数 1.在实数域上伽玛函数定义为 Γ ( x ) = ∫ 0 + ∞ t x − 1 e − t ...

  6. 机器学习之朴素贝叶斯(一):朴素贝叶斯的介绍、概率基础(拉普拉斯平滑)、sklearn朴素贝叶斯实现API、朴素贝叶斯分类的优缺点、文本的特征工程

    朴素贝叶斯 文章目录 朴素贝叶斯 一.介绍 1.1 文本分类的应用 词云的例子 垃圾邮件分类 文章类别的概率 二.概率基础 2.1 概率例题 2.2 联合概率和条件概率 2.3 朴素贝叶斯-贝叶斯公式 ...

  7. 贝叶斯滤波和贝叶斯平滑(Kalman滤波,RTS平滑)

    文章目录 贝叶斯滤波(*Bayesian filtering equations*) 贝叶斯滤波方程 Kalman滤波 贝叶斯平滑(*Bayesian smoothing*) 贝叶斯最优平滑方程 Ra ...

  8. 独家 | 一文读懂机器学习中的贝叶斯统计学

    作者:Matthew Stewart, PhD Researcher 翻译:吴金笛 校对:丁楠雅 本文约4300字,建议阅读15分钟. 本文主要是向新手介绍贝叶斯方法并将其与频率方法进行比较. 你有没 ...

  9. python3中朴素贝叶斯_贝叶斯统计:Python中从零开始的都会都市

    python3中朴素贝叶斯 你在这里 (You are here) If you're reading this, odds are: (1) you're interested in bayesia ...

最新文章

  1. Django入门教程(二)
  2. OPPO尝鲜android版本更新,安卓11迎来四大贴心升级,OPPO小米率先尝鲜
  3. linux网卡team0,Linux双网卡绑定单个IP之(team)
  4. 工作中的沟通及信息传递
  5. Flutter Hero动画让你的APP页面切换充满动效 不一样的体验 不一样的细节处理
  6. phome_enewsclass 数据表字段解释(栏目主表)
  7. python入门之控制结构循环结构_python入门教程04-05(python语法入门之流程控制)...
  8. android备忘录_苹果备忘录怎样把内容置顶?有置顶功能的备忘录便签
  9. 三菱基于雷诺平台推全新跑车 搭1.1T引擎
  10. 聊聊互联网秋招总结 经验分享
  11. IOS: Xcode报 Undecleared selector Warning错误的解决方法
  12. Silverlight实现文件的下载[很简单]
  13. 计算机信息处理工具教案设计,高一信息技术《现代信息处理工具》教案
  14. 转置矩阵(Transpose of a matrix)
  15. 将Android Studio的设置恢复到初始化(清除所有的设置)
  16. python:制作水印图片
  17. 计算机考研四大名著,2017考研英语翻译每日一句:四大名著
  18. OBS Studio录屏黑屏解决办法win10
  19. HTML特殊字符编码对照表 —— (二)
  20. 视频照片合成软件哪个好?快速把手机照片做成视频,简单操作,效果精美!

热门文章

  1. [多图]Google Chrome漫画书中文版
  2. 如何将多个文件捆绑成一个可执行文件
  3. 程序员的SOHO:接单到完成的全过程
  4. 计算机族应常喝的健康饮品
  5. Python常见数据结构整理,分享给你们
  6. 新版 chrome 将原生支持图片懒加载!
  7. 你不知道的BAT大数据面试题
  8. ug添加imachining变量_UG用的不够快?是不是还没建标准库
  9. leetcode:剑指offer----数组中重复的数字
  10. Apriori关联规则算法实现及其原理(基础篇)