CTR(Click-Through Rate)也就是点击率,是一个广告系统的术语,用以衡量一个广告被点击的可能性。在广告系统和推荐系统中,CTR作为一个备选广告和推荐列表的排序标准被广泛应用。由于它和流量收入等直接相关,研究如何提高CTR预估的准确率,始终是一个值得不断探究的方向。本文将分析常规到深度CTR预估方法的演变,争取从中整理出CTR预估的基本技术脉络。
定义与应用场景
CTR(click-through rate)也就是点击率,是一个广告系统的术语,用以衡量一个广告被点击的可能性。具体为点击次数除以展示次数,计算公式如下: \begin{equation} CTR = \frac{Number\ of\ click\ throughs}{Number\ of\ impressions} * 100\% \end{equation}
基本流程
广告系统
在广告系统中,需要预估某个广告对于某个群体(或个人)的CTR,然后根据CTR预估结果对备选广告进行排序,最终决定展示的广告。
广告平台更关心流量的价值,一般是根据ECPM(earning cost per mille,即每一千次展示带来的收入)来决定广告内容,而点击率就是连接广告主出价和ECPM之间的桥梁
推荐系统
在音乐、资讯、商品等各种推荐系统中,对于召回的内容列表,可以使用预估CTR进行排序,然后根据策略进行分发。
常规模型
Factorization Machine
FM模型也就是因子分解机,它基于矩阵分解,可以解决在稀疏数据的条件下特征组合的问题
Problems
- 广告特征是高维特征,例如职业这一特征使用one-hot编码可能高达几百维。
- 广告特征的组合非常重要,例如职业和商品类型的关系对推荐结果影响很大。
- 高维特征的组合必然导致稀疏的问题,进而导致参数难以训练。
Solution
- 通过隐向量表达特征
性能
- FM模型训练和测试可以达到线性复杂度的性能
深度模型
all credits goes to 王喆
Deep&Wide
Google 2016
- Wide部分:单层的 Wide 部分善于处理大量稀疏的 id 类特征,便于让模型直接“记住”用户的大量历史信息。
- Deep部分:提高泛化性,利用DNN挖掘数据模式。 启示:Deep LTR模型可以结合不同网络结构的不同特点,挖掘不同的数据模式
DeepFM
HUAWEI 2017
- Wide部分:用 FM 层替换掉了原来的 Wide 部分,加强了浅层网络部分特征组合的能力。DeepFM 相当于同时组合了原 Wide 部分 + 二阶特征交叉部分 +Deep 部分三种结构,增强了表达能力。
总结和展望
CTR预估模型在解决实际问题(特征高维稀疏等)的过程中不断发展进步;同时借他山之石(图像领域的深度学习)以攻玉,发展了CTR预估领域的深度模型以增强表征能力。让我们继续期待这个领域持续的进步。