FM模型也是非常经典的一个前深度学习模型。它主要是为了引入特征交互,再它之前是poly2,但是Poly2的特征交互太暴力了,要学习更新的参数太多,再推荐领域特征都比较稀疏,是不好更新的,而且计算复杂度太高了。所以就提出了FM,它是再二阶特征交互这块提出了每个特征保持一个隐向量,这样参数数量立马就降下来了。具体看FM模型的公式:
FM是一个通用的公式,可以基于具体的回归任务或者分类任务做具体的学习。
FM的二次项可以化简:
所以FM的复杂度就变成了O(kn),可以再线性时间计算出结果。再工业界也广泛使用,是一个很经典的模型。
参考博客: