xDeepFM Combining Explicit and Implicit Feature Interactions for Recommender Systems阅读笔记

动机

本文是2018年的一篇论文,提出了经典的模型xDeepFM。在当时,DNN通常学习特征在bit-wise上的隐式交互,而本文提出的CIN生成的是在一种显示并且是vector-wise上的特征交互。之前的论文DCN尝试过显示交叉高阶特征,但是DCN存在一定的问题,本文还将CIN和DNN网络结合生成一种新模型xDeepFM,可以看作是DCN的改进版。
这里bit-wise可以理解为特征交叉最小的单位是一个位,存在自身特征不同位的交叉,vector-wise是不同特征之间的交叉,最小单位是一个特征向量。

方法

本文提出的xDeepFM主要由三部分组成,分别是Linear、CIN、DNN,这里主要介绍CIN,其余部分和Wide&Deep、DeepFM、DCN几乎完全相同。

DCN的局限性

DCN中的cross网络是一种bit-wise的显示特征交叉,具体公式为

但是,这样最终的输出\(x_k\)\(x_0\)的一个标量倍。
\(x_1\)可写作

其中是一个标量,同理

其中是一个标量,通过归纳法可推出cross部分最终的输出\(x_k\)也是\(x_0\)的一个标量倍。

CIN

CIN的每层计算公式为

\(X_{h,*}^k\)是第k层的第h行的表示。这种计算方式和CNN中的卷积计算方式类似,可将\(W^{k,h}\)看作一个卷积核。
上述公式可计算出每层的表示\(X^k\),对于每层我们使用一个sum pooling有

之后可以获得一个pooling vector
最终拼接起来每层的pooling vector
如果只是用CIN进行预测,那么最后的输出为

xDeepFM

xDeepFM将Linear、DNN、CIN组合起来,最终的输出为

损失函数为

实验结果

首先来看CIN网络的表现,这里只比较单个网络。本文提出的CIN网络超越所有的基准模型。

再将xDeepFM与一些基准模型比较,xDeepFM的效果也是最好的。

总结

本文提出的CIN网络可以有效地显示地进行vector-wise的特征交叉,相比与DCN中的cross net,CIN具有更强的表达能力。同时本文的xDeepFM模型也是DCN的改良版,拥有更强的表达能力,有一些不足的是该模型的参数相比DCN明显变多,这相当于是用参数数量换取模型的能力。

posted @ 2022-07-18 10:26  South1999  阅读(65)  评论(0编辑  收藏  举报