构建企业级推荐系统:算法、工程实现与案例分析
上QQ阅读APP看书,第一时间看更新

7.8 分解机的优势

前面在介绍FM时,零星提到了FM的各种特点。本节梳理一下FM的优势,让大家对FM的特性有一个更具体直观的了解。FM之所以在学术界和工业界受到追捧,得益于它的各种优点,这些优点主要体现在如下几个方面。

1.可以整合交叉特征,效果不错

在真实业务场景中,特征之间的交叉对模型预测往往是非常有帮助的,而分解机可以自动整合二阶(高阶)交叉特征,免去了部分人工特征工程(如logistic回归需要大量的人工特征工程)的工作,从而(相比矩阵分解及logistic回归等模型)可以达到更好的训练效果。

2.线性时间复杂度

FM通过对预测函数做数学变换,将二阶交叉特征的计算从二阶多项式的复杂度降低到线性复杂度,方便模型预测和通过SGD等迭代方法估计参数,从而让FM在工业界的大规模数据场景下的应用(推荐系统、CTR预估等)变得可行。

3.可以应对稀疏数据情况

FM通过分解二阶交叉特征的系数到低维向量空间,避免了交叉特征的系数独立的情况,减少了参数空间,并且由于不同交叉项之间的系数是有关联的,在高度稀疏的情况下,也容易估计模型系数,模型泛化能力强。

4.模型相对简单,易于工程实现

FM模型原理非常简单,思想也很朴素,并且预测过程可以降低到线性时间复杂度,可以采用SGD等常用算法来进行训练,在工程实现上是相对容易的,有很多开源的工具都有FM的实现,我们可以直接拿来用。正因为它的工程实现简单,才在工业界得到大规模推广和应用。