论文学习:

FISSA: Fusing Item Similarity Models with Self-Attention Networks for Sequential Recommendation

摘要

本文针对大多数基于数据驱动的序列推荐方法中用户全局偏好建模不完善和候选项目带来的用户意图不确定性这两个问题,提出了一种新的融合项目相似度模型和自关注网络(FISSA)的序列推荐方法。具体来说,我们将最先进的自关注顺序推荐模型作为本地表示学习模块,以捕获我们的FISSA中用户行为序列下的动态偏好,并进一步提出全局表示学习模块来改进用户全局偏好的建模,以及通过考虑候选项目的信息来平衡本地和全局表示的选通模块。

FISSA:将项目相似性模型与自我注意网络融合,用于顺序推荐。不失一般性,我们有一个推荐系统,其中一组用户U对一组项目I给出隐式反馈,对于顺序推荐,我们将每个用户u ∈ U的记录表示为项目序列(按交互时间排序)为$S^u= {s^u_ 1,s^u_ 2,,,s^u _{|Su|}},s^u ∈ I ​​.我们的目标是为每个用户∗∗u∗∗提供一个推荐列表,在这个列表中,我们期望真正的下一个交互项​​.我们的目标是为每个用户**u**提供一个推荐列表,在这个列表中,我们期望真正的下一个交互项​​.我们的目标是为每个用户∗∗u∗∗提供一个推荐列表,在这个列表中,我们期望真正的下一个交互项Su_{Su+1}\in I/ S^u$​出现并尽可能排名靠前。我们在图1中展示了我们的FISSA,它包含三个主要组件,包括一个局部表示学习模块、一个全局表示学习模块和一个门控模块来平衡这两种表示。在本文中,我们用粗体大写字母表示矩阵,用小写字母表示相应的行向量。

开始时,输入序列(左上角)表示为嵌入矩阵E,其中每个项目嵌入来自项目嵌入矩阵M∈R∣I∣×dM∈\mathbb{R}^{ | I |×d}M∈R∣I∣×d​作为字典工作的数据。局部表征学习模块(上半部分)由一系列堆叠的自我注意模块SAB组成.。全局表征学习模块(左下角)实际上是一个基于位置的注意力层LBA。在门控模块(右下角)中,项目相似性门控函数ISG通过将候选项目的表示、最近交互的项目mslm_{sl}msl​、用户的全局偏好作为输入来输出局部和全局表示的平衡权重。

Q:

用户全局偏好的建模不完善
用户意图的不确定性可能受到候选项目的影响

局部表示学习

在本文中,我们将局部表示学习模块建立在自关注顺序推荐模型的基础上,该模型是一个优秀的顺序推荐模型,具有令人满意的简洁性和效率。我们将来自顶部自我注意块的输出向量xℓ(b)∈R1×dx^{(b)}_ℓ∈\mathbb{R}^{1×d}xℓ(b)​∈R1×d​作为局部表示,它代表用户行为序列中第ℓ个步骤的动态偏好。层次结构对局部表示很重要,具体来说,底部的自关注块倾向于捕捉长期依赖关系,而较高的块可能会关注更近的依赖关系。

输入序列S嵌入成矩阵E=[ms1,,,msl]E=[m_{s1},,,m_{sl}]E=[ms1​,,,msl​]

为了捕捉位置影响加了一个Position:p=[p1,,,pl]p=[p_1,,,p_l]p=[p1​,,,pl​]

最终得到了输入矩阵:X=msl+plX=m_{sl}+p{l}X=msl​+pl

对X进行softmax归一化得到SAL(X)

然后通过FFL的激活函数得到self-attention block :SAB(X)

SAB(X)= FFL(SAL(X))

where X ∈ Rl×d\mathbb{R}^{l \times d}Rl×d​ 位置感知输入矩阵

全局表示学习

全局表示学习模块可以看作是一个基于位置的注意层,可以有效地适应自我注意框架的并行化训练过程。门控模块通过使用MLP层对候选项目、最近交互的项目和每个用户的全局偏好之间的关系建模来计算权重。基于MLP的门控模块,该模块通过考虑候选项目的信息来平衡本地和全局表示,以便同时处理用户意图的不确定性。

具有相似项目的序列往往具有相似的表示。我们认为,如果注意到更多有代表性的项目,这种效果可以得到加强。因此,我们引入一个所有序列共享的可学习查询向量qS∈R1×dq^S∈\mathbb{R}^{1×d}qS∈R1×d​来计算序列中最具代表性的项目,而不是使用平均权重的聚合。


局部与全局联合表示

与基于用户长短期表示的新闻推荐采用GRU网络不同的是:本文设计了一个相似的ISG门控单元。其他基本一样

参考:RecSys2020|FISSA—融合物品相似度模型与自注意力机制网络的序列推荐模型
原论文:FISSA: Fusing Item Similarity Models with Self-Attention Networks for Sequential Recommendation

FISSA:融合项目相似度模型和自注意网络的时序推荐相关推荐

  1. 基于项目的协同过滤推荐算法单机版代码实现(包含输出电影-用户评分矩阵模型、项目相似度、推荐结果、平均绝对误差MAE)

    基于项目的协同过滤推荐算法单机版代码实现(包含输出电影-用户评分矩阵模型.项目相似度.推荐结果.平均绝对误差MAE) 一.开发工具及使用技术 MyEclipse10.jdk1.7.movielens数 ...

  2. 项目管理基础:项目的生存周期模型

    1.概念介绍 软件生命周期模型是一个包含软件产品开发.运行和维护中有关过程.活动和任务的框架,它覆盖了系统从需求定义到系统使用的结束阶段. 特点: 描述了开发的主要阶段 定义了每个阶段需要完成的任务和 ...

  3. 产品健康度模型(4) 打分I

    产品健康度模型之打分I 在这个项目上,大家可能会发现,很多做法比较主观,但是原因我认为"健康度"本身就是一个主观概念,哪里去找真正的"产品健康度"呢?这和离网用 ...

  4. 5种项目生命周期模型(个人笔记)

    1.项目生命周期定义参考网站:http://wiki.mbalib.com/wiki/%E9%A1%B9%E7%9B%AE%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F 2. ...

  5. sklearn使用投票回归VotingRegressor算法构建多模型融合的投票回归模型、并自定义子回归器的权重(weights)、评估多模型融合的回归模型、评估R2、mse、rmse、mape

    sklearn使用投票回归VotingRegressor算法构建多模型融合的投票回归模型.并自定义子回归器的权重(weights).评估多模型融合的回归模型.评估R2.mse.rmse.mape 目录

  6. 后盾网lavarel视频项目---lavarel使用模型进行增删改查操作

    后盾网lavarel视频项目---lavarel使用模型进行增删改查操作 一.总结 一句话总结: 使用模型操作常用方法 查一条:$model=Tag::find($id); 删一条:Tag::dest ...

  7. 基于GRU和am-softmax的句子相似度模型 | 附代码实现

    作者丨苏剑林 单位丨广州火焰信息科技有限公司 研究方向丨NLP,神经网络 个人主页丨kexue.fm 前言:搞计算机视觉的朋友会知道,am-softmax 是人脸识别中的成果.所以这篇文章就是借鉴人脸 ...

  8. 基于概率的项目相似度之并行方法

    推荐系统是个好东西,数据越大一般情况下效果越好,其挑战就是运算量问题,并行处理是近几年烽烽火火的一个主题,本文就从并行的角度来实现上一篇博客的算法 实现平台:Hadoop-1.0.3  ;  Hive ...

  9. 结构方程模型:技术接受度模型TAM2

    课程地址:https://study.163.com/course/courseLearn.htm?courseId=1210809833#/learn/video?lessonId=12832440 ...

最新文章

  1. Python广度优先查找和深度优先查找(内附python教程分享)
  2. outlook 2010 记忆式键入不工作的解决办法
  3. android 布局preview 技巧
  4. 洛谷 [P1801] 黑匣子
  5. 对的调用没有匹配的函数_前端开发之——函数、事件、js对象
  6. kafka 0.9 java开发_kafka 0.9 java producer and consumer demo
  7. php按照文件名字排序,php readdir 排序问题,如何按照日期进行排序
  8. EMR Spark Runtime Filter性能优化
  9. 高斯双边模糊_OpenCV 学习:9 双边滤波bilateralFilter
  10. ubuntu 修改默认用户名_Tars框架在Ubuntu上的部署小结
  11. JavaScript中call,apply,bind方法
  12. 报数(约瑟夫环问题)
  13. 一功能简单的BBS系统源代码
  14. 【Pandas】实操手册
  15. 为知笔记linux输入中文,为知笔记wiznote无法输入中文,fcitx输入法问题解决
  16. Multisim14.0详细安装教程图文
  17. idea 类注释模板
  18. html的根标签是什么,html标签
  19. 待办事项列表,敏捷项目管理的核心工件
  20. 百度网盘不限速下载工具,无需登录实现高速下载 (1)

热门文章

  1. 如何使用组托管服务帐户(GMSA)保护Reporting Services
  2. iPhone X 弹出输入框隐藏后页面上移不回位问题的解决办法
  3. 想入职阿里的Java开发者必看,阿里巴巴面试官实战经验分享!
  4. Linux Guard Service - 守护进程分裂
  5. Linux 系统使用之 VMware Tools安装
  6. java Unicode转UTF-8代码
  7. 数据结构开发(5):线性表的链式存储结构
  8. Linux环境安装配置Swftools
  9. fastDFS 命令笔记
  10. php : 工厂类演示