论文解读:Factorization Machine(FM)


在这里插入图片描述

概述

一种解决大规模稀疏数据下的特征组合问题的机器学习模型,它在工业界有一些很常用的应用场景。

推荐系统: 比如一个电商(某宝),它有100w种商品,每一个用户有一个账户,平台可以给用户推荐相应的产品。由于每个用户真实购买的商品非常少,不可能把所有商品都买一遍或者浏览一遍(土豪除外),那么用户对产品是否喜好的这个样本数据就会非常稀疏,即绝大部分商品跟用户都是没有关系的。

计算广告:媒体应该思考,我应该将哪些广告出现在哪些用户的页面上,以此来提高广告效率。只有用户非常想购买A广告(概率大),才会将A广告投置在该用户正在浏览的界面上。那这个过程其实也是相当稀疏的,想象一下这么次出现的广告,你点击过几次。

为什么因子分解机(FM)可以解决这些问题

一个经营服装订阅业务的公司STITCH FIX公司。

订阅业务:用户A向商家订阅了一些衣服,那商家比如说可能会寄5件商品,A收到商品并根据自己喜欢与否选择购买或者直接寄回去

通过订阅业务,我们可以得到用户的反馈数据,不断提高算法的性能,利用机器学习解决"形象顾问"问题
在这里插入图片描述
我们机器学习模型的目标是:预测用户会喜欢什么?
商家每个月给用户寄的东西都是有限的,所以商家非常希望这些东西是用户所喜欢的,可以产生购买行为。所以机器学 习模型就要挑选出用户最有可能喜欢的物品(概率)
在这里插入图片描述
使用线性回归没办法捕捉到变量之间的联系(interaction),没办法进行特征组合,则有人想出了将特征相乘:
在这里插入图片描述
这样解决了变量之间的联系,但是又有一个问题是数据的稀疏性。稀疏性会造成的问题:比如说很多商品,其中A商品现实生活中用户B非常喜欢,但是算法模型没有将商品A推荐给用户B,即没有捕捉到A与B之间的联系,这就是数据稀疏性导致的问题。

这里就引入了矩阵完全分解的思想(embedding),下面的图k为超参数。
在这里插入图片描述
为什么FM可以解决数据稀疏性问题?
因为采用了矩阵完全分解,捕捉到了隐空间的一些信息。

摘要

FM可以去估计变量之间的联系,即使在数据特别稀疏的时候,而SVM不可以。FM模型的方程计算时间复杂度为线性。

1 Introduction

SVM不能进行像协同过滤这种任务的原因是:它不能在数据非常稀疏的情况下,在复杂的高维核空间中学习可靠的参数。

FM的优点:
(1) 解决数据非常稀疏的问题
(2)线性时间复杂度
(3)适用的场景多

2. Prediction under sparisity

这一段就介绍了一个例子,推荐系统的,目的是让读者知道推荐系统中使用的数据基本都是非常稀疏的。

3. Factorization Machine(FM)

其实说为什么FM能解决数据稀疏问题呢?就是利用了矩阵完全分解思想,将原始的特征映射在低维的隐空间中,以此捕捉到变量之间的联系

在这里插入图片描述

Summary

FM模型的两个优点:
(1)即使在高稀疏度下,也可以估计变量之间的相互作用。特别是,它可以推广到unobserved interactions
(2)时间复杂度为线性

FM在召回中如何使用

多路召回
只需要迭代一遍,矩阵分解,ftrl

正样本(之前的数据)和负样本采样(从语料库中)

auc做排序,广告

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

InceptionZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值