Field-aware Factorization Machine - FFM(领域感知的因子分解机)

FFM(Field-aware Factorization Machine)引入领域概念,解决FM模型中特征交叉不合理的问题。每个特征由对应域的多个向量表示,进行特征交叉时选择相应域的向量。虽然更合理,但计算复杂度增加到O(kn^2),限制了其应用。FFM和FM在数据稀疏场景下优于SVM,但特征交叉阶数有限。深度学习的神经网络能自动完成高效特征交叉。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

“域”概念的提出

本篇的模型是FFM,全称是Field-aware Factorization Machine。作者认为,FM中虽然对特征做了高阶(一般是二阶)交叉,但是有一个弊端:在实际场景中,特征的领域(Field)很可能不同,比如性别、品牌、国籍等,向量在不同域的表示应该不一样才对,FM只用一个向量Embedding来表示特征,也就意味着在与其他特征做交叉的时候,使用的是同一个向量,这显然是不合理的。

所以,FFM引入了(Field)的概念,做法就是每个特征不再使用单一向量表示,而是 f f f个向量,这里的 f f f就是域的个数。

特征交叉

介绍完了FFM的概念,下面用一个例子来讲一讲FFM是如何做特征交叉的,原理很简单。看下面这个例子,假设某个训练样本拥有“发行商-广告商-性别”三个维度的特征,如下图所示:

Publisher - P Advertiser - A Gender - G
ESPN NIKE MALE

如果是FM做特征交叉,回想一下,FM是给每个特征初始化一个向量(Embedding),然后用内积来表示这一对向量之间的关系,所以表达式应该是:
w E S P N ∗ w N I K E + w E S P N ∗ w M a l e + w N I K E ∗ w M a l e w_{ESPN} * w_{NIKE} + w_{ESPN} * w_{Male} + w_{NIKE} * w_{Male} wESPNwNIKE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值