【序列推荐】RecSys2020|FISSA---融合物品相似度模型和自注意力网络的推荐

前言

文章发表在2020年的顶会RecSys,提出了一个融合物品相似度和自注意力机制的序列推荐模型FISSA。FISSA融入了SASRec模型,将其看作是提取用户行为的局部表示(local representation,短期兴趣),又加入了对全局偏好(global preferences,长期兴趣)的提取。并且,提出一种类似LSTM单元的门控函数,将两者进行有效的融合。
「原文地址」:https://dl.acm.org/doi/10.1145/3383313.3412247
有意思的是,给我推荐了上次发表在RecSys的论文SSE-PT。

本文约3.0k字,预计阅读10分钟。

概要

本篇论文抛出了当下序列推荐模型中两个重要的问题:

  1. 对于很多序列推荐模型中,例如SASRec、Caser,它们太过关注于用户的局部偏好,也就是短期兴趣,而忽略了用户的长期兴趣。而向AttRec、STAMP等模型,建立长期兴趣(作者将其称为全局、静态的偏好)的方法太过简单,低估了其作用;

  2. 作者认为,现在绝大多数模型,都认为能够从用户的历史行为中完全能够捕捉到用户当前兴趣,这是一种理想主义。在现实中,用户的意图往往是很难进行确定的,特别是处于一个长期行为(电影、长时间的一个购物记录),而不是一个短期行为(听音乐)。判断一个新产品是否能吸引用户的正确方法是,考虑它如何能引起用户不同部分的兴趣(即短期兴趣和长期兴趣)。

【注】谈一谈我个人的一些看法,关于第1点,其实现在很多序列推荐模型都开始将用户行为序列建模分为两个部分:短期偏好和长期偏好,但是对于长期偏好的建模确实过于简单【尝试过通过self-attention来提取长期偏好(平均),不过效果一般,短期偏好才是yyds】。第2点,等于是得到两个兴趣后,如何去合并?不错的方法是分配不同的权重,而权重是通过计算候选物品与兴趣的相似程度。其实DIN模型就是这样做的(通过attention),但是他是CTR模型,如果放到召回(Top-K)中,会影响模型预测效率,应该很难使用FAISS库等可以计算邻近。

因此,作者提出了FISSA模型有效的解决上述两个问题。

模型结构

FISSA模型结构清晰,分为三个模块,局部表示学习(Local Representation Learning)、全局表示学习(Global Representation Learning)、门控函数(Gating)。模型结构如下所示:

问题定义

定义用户集合 和物品集合 ,对于单个用户 ,其历史物品序列为。序列推荐的目的是,模型能够为用户 提供一个推荐列表,下一个真实的交互物品 出现在推荐列表中,并且排名尽可能得高。

局部表示学习

第一部分是采用self-attention的局部表示学习模块,并没有什么创新,不过作者自己也指出了,本篇论文不要过多的关注局部表示模块,因为大家都已经做得很好了,所以主要来看全局表示学习是如何做的。这里我简单阐述下:

作者规定输入序列为用户 的最近前 个行为(不足进行填充), 为物品的embedding矩阵, 为embedding维度。因此,用户行为的Embedding矩阵为。采用self-attention网络进行局部表示的学习。由于注意力网络不具备位置关系,因此添加了可学习的位置embedding矩阵 </

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值