xDeepFM
背景与动机
- 交叉特征非常重要
- 传统交叉特征提取方式需要大量人力,可以改进
- 认为DCN的特征组合方式存在缺陷
- cross网络是限定在一种特殊形式下实现高阶交叉特征的,即cross网络中每一层输出都是\(x_0\)的标量乘积:\(a^ix_0\)
- cross网络是以bit-wise形式交叉的,即便是同一个field embedding向量下的元素也会相互影响
贡献点
- 提出新的xDeepFM模型结构,同时显式的和隐式的学习高阶特征组合
- 提出CIN结构显式的学习高阶特征组合,特征vector-wise的交互而非bit-wise的
CIN
针对DCN中cross部分的不足,xDeepFM提出了新的解决方法,CIN
作者认为CIN有以下几个优点:
- a.vector-wise的获得组合特征,而非bit-wise;
- b.可以显式地获得高阶特征组合;
- c.网络复杂度不会随组合阶数指数级增长
CIN计算的数学形式为:
W代表参数矩阵,右半边代表两个向量的哈达玛积(即elementwise积),如果用T表示网络深度,那么CIN最高可以实现T+1阶的特征交叉。
输出:最终输出\(p+\)是每层\(x^k\)沿embedding维度sum pooling后再拼接的向量:
其中\(p^k=[p_1^k, p_2^k, ..., p_{H_k}^k], H_k代表特征图数\)
\[p_i^k=\sum_{j=1}^DX_{i,j}^k\]CIN的3D表示如上图所示,CIN(Compressed Interaction Network)中的Compressed体现在用kernel对\(Z^k\)的加权和
整体架构
Linear、CIN、DNN三部分的组合
组合公式为:
模型结构为:
-
与FM/DeepFM的关系:
- 当depth和feature maps都被设置为1时,xDeepFM就退化为了DeepFM
- 当继续移除DNN部分,同时对feature map使用sum filter,xDeepFM就退化为普通的FM模型
实验效果
-
单结构性能对比(CIN):
-
整模型性能对比: