【每周一文】Field-aware Factorization Machine(2014)

FFM(Field-aware Factorization Machine)是一种在机器学习中用于预测任务的模型,尤其在CTR和CVR预估中有广泛应用。它通过特征域划分和向量表示改进了FM模型,减少了特征组合的数量,提高了模型效率。FFM-LR是其线性回归变种,使用SGD求解,优化损失函数。该模型解决了线性模型和2阶多项式模型的特征组合问题,提供了一种更有效的特征交叉方法。

概述

FFM 近年来在各类比赛取得不俗的成绩,该文介绍了FFM的算法思路和求解过程。

FFM模型

线性模型由于其简单好优化在工业界广泛使用,特别是LR、SVM等表达能力比较强的线性模型。这些模型一个共同的问题是需要人工进行特征组合进行模型优化,沿着这个思路出现了几个模型。

线性模型

基础模型,表示为:

Φ(w,x)=w0+i=1nwixi

线性模型对特征进行线性加权去表达目标,表达能力较弱。

2阶多项式模型

为了考虑二维特征组合,考虑如下模型

Φ(w,x)=w0+i=1nwixi+i=1nj=i+1nwi,jxi,j

加入一个二次项,将特征进行两两组合。此时能够自动进行特征组合,但是模型计算复杂度和本身复杂度都较大。

FM模型

多项式模型相当于得到一个权重的矩阵,并且非常稀疏,可以采用降维的思路将权重表示成一个向量,由此得到FM模型

Φ(w,x)=w0+i=1nwixi+i=1nj=i+1n<vi,vj>xixj

这样可以解决样本不足导致过拟合的问题,但是FM模型本身也比较容易过拟合,并且向量长度不好选择,过长不容易优化,过短效果不好。

FFM模型

FM模型的改进,将特征进行按照域划分,在每一个维度上都学到一个向量表示,此时选择较小的向量长度就可以得到较好的效果,目标如下:

Φ(w,x)=w0+i=1nwixi+i=1nj=i+1n<vi,fj,vj,fi>xixj

(FFM提出者直接将常数项和一次项去掉)

FFM-LR

基于FFM的LR模型的损失函数表示为

mini=1L(log(1+exp(yiϕ(w,x)))+λ2||w||2)

求解思路

直接采用SGD进行求解。具体可以参考

总结

目前FFM模型在公司CTR、CVR预估上广泛使用,由于该类预测问题会很自然的将特征划分为用户特征、广告特征和上下文特征等,采用FM模型交叉太多而且模型也非常大。采用FFM能够进行特定域下的交叉,方便也很直观。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值