推荐系统CTR预估学习路线:从LR到FM/FFM探索二阶特征的高效实现
![v2-071e132c7353c2be34deb925be1bf617_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/fc2a0f0dcac83004cef5e37a7284455d.jpeg)
导语
在广告、推荐系统CTR预估问题上,早期的完全规则方法被过渡到以LR为代表的机器学习方法,为了充分发挥组合特征的价值,在相当长一段时间里,业界热衷于使用LR+人工特征工程。但人工组合特征成本高昂 ,在不同任务上也难以复用。2010年FM因子分解方法的出现解决了人工组合特征的困境,2014年Facebook提出的GBDT+LR也给出了一种利用树模型特点构建组合特征的思路。不过随着深度学习的崛起,2015年以后,借助非线性自动组合特征能力的深度模型,开始成为业内的主流。从经典DNN到结合浅层的Wide&Deep,用于CTR预估的深度模型在近些年间百花盛开,各种交叉特征建模方法层出不穷,Attention机制也从其他研究领域引入,帮助更好的适应业务,提升模型的解释性。在这进化路线之下,核心问题离不开解决数据高维稀疏难题,自动化组合特征,模型可解释。我们梳理了近些年CTR预估问题中有代表性的模型研究/应用成果,并对部分经典模型的实现原理进行详细剖析,落成文字作为学习过程的记录。
目录
0. CTR预估模型进化路线
1. 从LR到FM/FFM:探索二阶特征的高效实现
1.1 LR与多项式模型
1.2 FM模型
1.3 FFM模型
1.4 双线性FFM模型
2. GBDT+LR:利用树模型自动化特征工程
3. 深度模型:提升非线性拟合能力,自动高阶交叉特征,end-to-end学习
3.1 特征的嵌入向量表示
3.2 经典DNN网络框架
3.3 DNN框架下的FNN、PNN与DeepCrossing模型
3.4 Wide&Deep框架及其衍生模型
3.4.1 Wide部分的改进
3.4.2 Deep部分的改进
3.4.3 引入新的子网络
4. 引入注意力机制:提高模型自适应能力与可解释性
4.1 AFM模型
4.2 AutoInt模型
4.3 FiBiNET模型
4.4 DIN模型
4.5 DIEN模型
5. 总结
(2) GBDT+LR:利用树模型自动化特征工程
![v2-3de1878667ee1453fd3ae71a19dc0f32_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/243ba86a105de7ddaa0762d51206719d.jpeg)
在FM/FFM之外,2014年Facebook提出的GBDT+LR[6]是实现用模型自动化特征工程的一项经典之作。GBDT+LR是级联模型,主要思路是先训练一个GBDT模型,然后利用训练好的GBDT对输入样本进行特征变换,最后把变换得到的特征向量作为LR模型的输入,对LR模型进行训练。举个具体例子,上图是由两颗子树构成的GBDT,将样本x输入,假设经过自上而下的节点判别,左边子树落入到第二个叶子节点,右边子树落入到第一个叶子节点,那么两颗子树分别得到向量[0, 1, 0]和[1, 0],将各子树的输出向量进行concat,得到的[0, 1, 0, 1, 0]就是由GBDT变换得到的特征向量,最后将此向量作为LR模型的输入,训练LR的权重w0, w1,...。在此过程中,从根节点到叶子节点的遍历路径,就是一种特征组合,LR模型参数wi,对应一种特征组合的权重。
Facebook的论文实验证明了GBDT+LR有显著的提升,相比仅使用LR或Trees模型,loss降低了3%左右。
![v2-44a1c9e33d390cad1e65eb3282cfedfe_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/8a8e1bd78f4cf5e02445414f793a0540.jpeg)
虽然如此,GBDT+LR也有较明显的短板,例如,
1)树模型在节点分裂时需要遍历特征集,通常不适用于海量离散ID类特征场景
2)引入级联模型误差,无法做end-to-end学习
![v2-071e132c7353c2be34deb925be1bf617_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/fc2a0f0dcac83004cef5e37a7284455d.jpeg)