ctr|ctr 模型比较

LR LR是线性分类模型,要求输入线性独立特征。

ctr|ctr 模型比较
文章图片

LR可以视作单层节点的DNN,是一种宽而不深的结构,所有特征直接作用在最后的结果上。
优点: 简单、可控性好、可解释性强。
缺点: 效果好坏直接取决于特征工程的程度,需要非常精细的连续型、离散型特征以及对应的特征组合。非常消耗人力。
GBDT GBDT是一种迭代的决策树算法,它由多棵决策树组成,所有树累加起来作为最终答案。
优点: 能自动发现多种有区分性的特征以及特征组合,省去复杂特征处理逻辑。
GBDT + LR
ctr|ctr 模型比较
文章图片

优点: 特征泛化性能好。
缺点: 记忆性能较差,通常需要增加高维特征来增强推荐的记忆性能力,包括UserID、各种标签等特征。
FM & FFM FM可以看作是带特征交叉的LR:

ctr|ctr 模型比较
文章图片

相比于一般的线性模型,FM考虑了特征间的关联,在多项式模型中,特征xi和xj的组合用xixj表示,这一部分就是FM多出来的特征组合,从NN的角度考虑:
ctr|ctr 模型比较
文章图片

优点: FM模型覆盖了宽模型结构,同时也引入了交叉特征,增加了模型非线性和泛化能力,提升了模型容量,能够捕捉更多额外的信息。
FFM引入了域(Field)的概念,把n个特征归属到f个field里,得到nf个隐向量的二次项:

ctr|ctr 模型比较
文章图片

所以FFM可以看作是带多个域的FM,FM是只有一个域的FFM,其中fj是第j个特征所属的filed。如果隐向量长度为k,那么FFM的二次参数有nfk个,远多于FM的nk个,另外,由于隐向量与field相关,FFM二次项是不能简化的,其预测复杂度是O(kn^2)。因此,性能往往是制约FFM大规模应用的因素,如果规模不是很大,而且特征比较稀疏的场景下,FFM有很好的效果。
在实际应用中,FM比FFM更广泛一些,是对性能和效果的一些折中,比较常用的像dmlc下的FM,支持全量和增量的分布式计算,比较适合新闻推荐中场景和兴趣多变而且很多稀疏特征的情况。

ctr|ctr 模型比较
文章图片
DNN 【ctr|ctr 模型比较】上述几个浅层的网络模型对更多的隐层信息无法捕获,并且更多的稀疏特征表示不够充分,DNN逐步形成一种趋势。
优点: 能够提取更加深层的特征。
缺点: 单纯的DNN不一定对ctr有明显提升。当用户是非活跃用户,与item交互行为较少时,得到的特征向量也非常稀疏,DNN在处理这类问题时会过度泛化,导致推荐结果与用户相关较差。为了更好解决这类问题,通常会用DNN+具有记忆模型的特征,相互补充。
wide & Deep ctr|ctr 模型比较
文章图片

wide端对应线性模型,输入特征可以是连续特征,也可以是稀疏的离散特征。离散特征之间交叉后可以构成更高维的特征,通过L1正则化能够快速收敛到有效的特征组合中。

ctr|ctr 模型比较
文章图片

deep端对应的是DNN模型,每个特征对应一个低维的稠密向量,称之为特征的embedding,DNN能够通过反向传播调整隐藏层的权重,并且能够更新特征的embedding。
优点: 结合了线性模型的记忆能力和DNN模型的泛化能力,在训练中同时优化两个模型参数,达到整体模型的预测能力最优。从而避免了线性模型无法学习训练集中从未出现的特征组合以及神经网络中过度泛化的问题。

  • 参考
    https://zhuanlan.zhihu.com/p/43313461

    推荐阅读