Neural Factorization Machines for Sparse Predictive Analytics阅读笔记

动机

本文是2017年SIGIR上的一篇论文,提出了经典的深度学习模型NFM,可用于推荐系统、计算广告、搜索引擎等领域。NFM全称为Neural Factorization Machines,很容易看出来它是FM和神经网络的结合,更具体的,它结合了FM中线性的二阶特征交互和神经网络中非线性的高阶特征交互,解决了FM受限于其线性和神经网络无法很好进行特征间的交互的问题。

方法

NFM结构如下图所示(一阶线性回归部分没有表示出来)。

NFM预估表示如下

其中\(x\)就表示一系列特征,其实我个人认为这个模型可以看作是类似于Wide&Deep这种由两部分组成的模型,一部分是Wide部分(线性部分,主要包含一阶特征信息),为,另一部分就相当于deep部分,这里的重点也就是要讲一下deep部分。
可以看上述的结构图,首先是embedding层,这里的embedding层和常用的不太一样,是一个带权重的embedding层。
之后是Bi-Interaction层,这一层是本文的重点。这一层计算每两个特征之间的交互,但是用的不是内积方法,而是对应元素乘积的方法,具体公式如下

可将其优化为具有线性复杂度的计算公式

接着将得到的表示输入进隐藏层中

最终在预测层得到输出

损失函数可根据具体的任务进行选择,本文中的任务是预测评分,属于回归任务,使用平方损失函数

实验结果

作者在两个数据集上进行实验,NFM均取得最好的效果。

总结

本文的关键点就在于Bi-Interaction层,它使得NFM同时具有FM和神经网络的优点,令模型更容易训练且有更好的效果。

posted @ 2022-08-08 23:11  South1999  阅读(46)  评论(0编辑  收藏  举报