推荐系统3--FM和FFM_Evey_zhang的博客-CSDN博客_推荐系统fm
推荐系统的发展,由最初的协同过滤到矩阵分解再到机器学习模型gbdt+lr(gbdt用来做特征筛选,lr处理稀疏 特征,这个是推荐系统特征工程化的开始)
lr只是对特征进行加权组合,不能特征交叉生成组合特征,表达能力受限
poly2,fm与fmm的出现为了解决lr无法做特征交叉的问题(特征交叉一个经典的例子是将年龄和性别进行组合,特定年龄段的女性对于化妆品的喜好会有不同)
poly2在lr的基础上加了二阶特征交叉项
poly2的问题,数据稀疏性,交叉特征乘积为零,对应的权重在训练时无法收敛,参数量过大
fm
把poly2交叉特征的系数矩阵参考矩阵分解的方式进行处理,将w_ij写成隐向量相乘的形式,fm的参数量由n^2减少到了kn,包含xi的项都可以用来学习vi,缓解了数据稀疏的影响,
两个优点降低了参数量,参数更容易学习,受数据稀疏影响较小
ffm
把样本特征按所属域进行区分,每一个特征都和不同域的特征学习隐向量,体现不同域特征的差异项,表达能力更强,降低一侧隐向量的维度