德才兼备 知行合一

CTR预估概述

Posted on By Dason Mo

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}

基本流程

pic_9_1

广告系统

在广告系统中,需要预估某个广告对于某个群体(或个人)的CTR,然后根据CTR预估结果对备选广告进行排序,最终决定展示的广告。

广告平台更关心流量的价值,一般是根据ECPM(earning cost per mille,即每一千次展示带来的收入)来决定广告内容,而点击率就是连接广告主出价和ECPM之间的桥梁

推荐系统

在音乐、资讯、商品等各种推荐系统中,对于召回的内容列表,可以使用预估CTR进行排序,然后根据策略进行分发。

常规模型

pic_9_2

Factorization Machine

FM模型也就是因子分解机,它基于矩阵分解,可以解决在稀疏数据的条件下特征组合的问题

Problems

  1. 广告特征是高维特征,例如职业这一特征使用one-hot编码可能高达几百维。
  2. 广告特征的组合非常重要,例如职业和商品类型的关系对推荐结果影响很大。
  3. 高维特征的组合必然导致稀疏的问题,进而导致参数难以训练。 pic_9_3

Solution

  • 通过隐向量表达特征 pic_9_4

性能

  • FM模型训练和测试可以达到线性复杂度的性能 pic_9_5

深度模型

pic_9_6

all credits goes to 王喆

Deep&Wide

Google 2016

  1. Wide部分:单层的 Wide 部分善于处理大量稀疏的 id 类特征,便于让模型直接“记住”用户的大量历史信息。
  2. Deep部分:提高泛化性,利用DNN挖掘数据模式。 pic_9_7 启示:Deep LTR模型可以结合不同网络结构的不同特点,挖掘不同的数据模式

DeepFM

HUAWEI 2017

  1. Wide部分:用 FM 层替换掉了原来的 Wide 部分,加强了浅层网络部分特征组合的能力。DeepFM 相当于同时组合了原 Wide 部分 + 二阶特征交叉部分 +Deep 部分三种结构,增强了表达能力。 pic_9_8

总结和展望

CTR预估模型在解决实际问题(特征高维稀疏等)的过程中不断发展进步;同时借他山之石(图像领域的深度学习)以攻玉,发展了CTR预估领域的深度模型以增强表征能力。让我们继续期待这个领域持续的进步。

Reference

  1. 知乎 – Deep Learning 可以用来做推荐系统吗
  2. 『我爱机器学习』FM、FFM与DeepFM