-->

AI内参_88_084_雅虎的广告点击率预估模型

你好,我是洪亮杰。

今天我和你分享的主题是雅虎的广告预估模型。

在上一篇文章中,我和你分享了广告回馈预估的一个实例。

Facebook的广告点击率预估,我们重点讲了facebook利用归一化的交叉熵这个概念来衡量广告模型的精准度。

另外我们还分享了facebook提出的两层模型架构,也就是一开始先利用数模型GBDT来对特性进行非线性转换和选择,然后再利用一个在线学习的线性模型进行最后的预测。

这个架构后来得到了很多研究者和实践者的追随。

今天我们来分析另外一个经典的公司实例,雅虎的广告预估模型。

对于曾经的互联网巨头雅虎来说,广告系统很早就成为其重要的经济支柱。

早在二零零七年甚至更早的时候,雅虎的工程师和研究人员就投入到了对广告点击率预估的研究中。

这方面的几个代表作,我列在了文末的参考文献里。

如果感兴趣,你可以进一步学习。

我们在这里集中讲一讲这些工作的核心思路。

首先,雅虎的研发人员很早就注意到了广告预估模型的一个难点,那就是数据的稀疏性。

这些具有稀疏性的数据带来了一个后果,那就是模型对很多罕见事件的估计会出现很大的不稳定性。

我们来举个例子,如果广告一在纽约地区展示了一万次,点击二百次点击率是零点零二。

而广告二在旧金山地区展示了一百次,点击三次点击率是零点零三。

在这样的情况下,我们能判断广告二就一定比广告二就更高的点击率吗?这里面至少有两个因素需要考虑。

第一,上下文的特性信息非常重要。

这两个广告可能是类型不同,可能展示的地区不同,因此并不能完全直接来对这两个广告进行比较。

第二,广告二在旧金山地区的展示次数还比较少,因此零点零三这个预估值可能是非常不准确的,或者说至少是不稳定的的误差要大于第一个广告。

这个时候研发人员就会思考如何对这些广告的预估进行更加精确的处理呢?在这样的背景下,雅虎的研发人员提出了一个点击率,估计方法其实也是一种两层模型。

第一层模型就是最原始的对点击率的估计,也就是类似我们上面所说的,直接按照数据进行估计。

当然这里的问题我们刚才也已经提到了,就是估计的不稳定性。

第二层模型是对第一层模型的修正。

所谓修正,就是利用层次化信息来对原始的估计值进行平滑。

什么是层次化信息呢?我们举例来说明,比如两个广告都来自于同一个广告商,因此他们应该有一定的类似的点击率。

两个广告被展示到同一个地区,他们也应该有一定的类似的点击率。

这些层次信息给了我们一些启示,来对原始估计时进行修正。

当然根据我们这两个例子,你就可以看出一个广告可以受到多个层次信息的影响,比如广告商的层次信息、地理位置的层次信息以及类别的层次信息等。

所以要想设计一套完善的基于层次信息的平滑方案,也并非易事。

这个时期,雅虎在这方面的工作都围绕着一个主题,那就是如何对平滑方案进行创新。

一种方法是利用产生式模型的概念,把层次信息的叶子节点的数据产生过程。

定义为基于其父节点数据的一个概率分布产生过程,从而把整个平滑方案的问题转换成为了一个有向无环图上的每个节点的后验概率参数的估计问题。

另外一种方法则采取了一个不太一样的思路。

那就是在做平滑的时候,在这种产生式建模之后,在追加了一个过程,利用树模型来对平滑的结果进行再次修正,使得最后的结果能够达到更高的精度。

这系列工作虽然在概念上有很高的学术和时间价值,那就是如何利用层次性信息来对预测进行平滑产个方面。

但是从整体上来说,预估方案变得非常复杂,而且环节太多。

雅虎后期的广告预估模型又比较复杂的两层模式转换成了一层模式。

这个转换主要是考虑到了整个流水线的复杂度,以及需要处理的数据规模逐渐变大,那么利用更加稳定和简单的方法就势在必行了。

对于雅虎后期的广告预估模型或参考论文简单和可扩展的展示,广告响应建结在这里为你简单做一个总结。

总体来说,整个模型回到了相对简单的对数几率回归,并且直接对所有的特性进行建模。

这里面唯一可能和之前的很多工作不太一样的地方,是大量使用了特性。

哈希的方法。

简单来说,特性哈希就是把原来大规模的有可能是极其稀疏的特性,给压缩到了一个固定维度的特性空间里。

当然,这肯定会对精度等性能有一定影响,因此,这是一个需要有一定取舍的决策。

在这篇论文中,作者们还介绍了如何对大量的数据进行采样样及及何利用配对的特性。

也就是把把种不同的特性,比如广告商和地理位置进行配对,来自动产生更多的非线性因素的方法。

第么这个一层模式的方法所达到的效果怎样呢?论中论述相比于之前的两层结构,这个方法所达到的效果有很大程度的提升升。

今天我为你介绍了虎虎广告告击率率估估模型。

一起来回顾一下要点。

第一,雅虎早期的广告预估算法,其重点放在了一种两层模型架构上。

第二,雅虎广告预估后期的一些思路,重点则放在了回归到一种更加简单的架构上。

最后,雅虎留一个思考题,何何在对数几率归归?这样的性模型中引入层次化的平滑思路呢,欢迎你给我留言,和我一起讨论。