xDeepFM模型阅读笔记

--

模型目的:

传统DNNs的特征交叉主要发生在bit-wise,这个模型想在vector-wise学习特征交互。

概念:

  1. bit-wise和vector-wise feature interaction

假设有两个向量(a1, a2, a3), (b1, b2, b3)

  • bit-wise的特征交互是指,特征交互发生在神经元之间。比如(w1a1a2, w2b1b2, w3c1c2)
  • vector-wise的特征交互是指,embedding之间的特征交叉。比如w(a1b1c1, a2b2c2)

2. explicit & implicit

显示特征组合:通过一定的转化,最后能变成w*Xi*Wj的形式;

隐示特征组合:无法得到具体的组合形式。

模型结构

第一个部分linear layer:linear layer是为了feature engineering的特征

第二个部分DNN:学习bit-wise的特征交互。

第三个部分CIN layer:学习vector-wise的特征交互。

最后的模型logits是把三个output加起来再加上一个bias参数。

和其它的FM/DNN模型的区别:

传统FM模型能模拟所有的特征交互,包括有用的特征交互和没用的特征交互。没用的特征交互会引入noise,降低模型效果。DNN可以帮助学习复杂的、selected的特征交互。FNN和PNN模型有一个共同的缺点,就是忽略了低阶特征交互。Wide&Deep Model和DeepFM模型都解决了这个问题。DeepFM也学习了vector-wise的特征交互(但没有在paper中特殊说明)。xDeepFM模型可以看做是DeepFM模型的一个泛化。

模型创新:

模型创新主要在于提出CIN layer,CIN layer可以看做是对DCN模型中cross layer的改进。CIN layer可以学习高阶特征交互explicitly。

--

--

No responses yet