这是一篇很好理解的论文,论文提出:现有的方法都没有明确考虑用户当前行为对其下一步行动的影响。 在这项研究中,我们认为长期记忆模型可能不足以对通常包含由意外点击引起的用户兴趣漂移的长时间会话进行建模。 提出了一种新颖的短期注意力/记忆优先模型作为补救措施,该模型能够从会话上下文的长期记忆中捕获用户的一般兴趣,同时从短期记忆中考虑用户当前的兴趣。

根据现有文献,几乎所有基于 RNN 的 SRS 模型都只考虑将会话建模为一系列项目,而没有明确考虑用户的兴趣随时间漂移,这在实践中可能存在问题。例如,如果某个特定的数码相机链接刚刚被用户单击并记录在会话中,则用户的下一个预期动作很可能是对当前动作的响应。 (1) 如果当前的动作是在做出购买决定之前浏览产品描述,那么用户很可能在下一步访问另一个数码相机品牌目录。 (2)如果当前动作是在购物车中添加摄像头,那么用户的浏览兴趣很可能会转移到存储卡等其他外围设备上。在这种情况下,向该用户推荐另一台数码相机并不是一个好主意,尽管本次会议的初衷是购买数码相机(正如前面的行动所反映的)。

本文主要的贡献如下:

  1. 我们引入了一个短期注意力/记忆优先级模型,该模型学习:(a) 具有跨会话项目的统一嵌入空间和 (b) 用于基于会话的推荐系统中的下一步点击预测的新型神经注意力模型。
  2. 提出了一种新的注意力机制来实现STAMP 模型,其中注意力权重是从会话上下文中计算出来的,并随着用户当前的兴趣而增强。 输出注意力向量被读取为用户时间兴趣的组合表示,并且比其他基于神经注意力的解决方案对用户兴趣随时间漂移更敏感。 因此,它能够同时捕获用户的一般长期兴趣(响应初始目的)和他们的短期注意力(当前兴趣)。

一、The Short-Term Memory Priority Model


STMP 模型将两个嵌入(ms 和 mt)作为输入,其中 ms 表示用户对当前会话的总体兴趣,定义为会话外部存储器的平均值:

符号 mt 表示用户在该会话中的当前兴趣,在本研究中,最后点击 xt 用于表示用户当前的兴趣: mt = xt 。

由于 xt 取自会话的外部记忆,我们称其为用户兴趣的短期记忆。 然后用两个 MLP 网络处理一般兴趣 ms 和当前兴趣 mt 以进行特征抽象。 图中所示的 MLP 单元的网络结构彼此相同,只是它们具有独立的参数设置。

对于给定的候选项目xi ∈V,得分函数定义为:


令 z^ 表示由三线性乘积 z_i 组成的向量,其中每个 z_i 表示关于当前会话前缀 St 的加权用户兴趣的表示与候选项目 xi 之间的非归一化余弦相似度。 然后通过softmax函数处理得到输出y^:

损失函数定义为:

从STMP模型的定义可以看出,它根据候选项目的内积和加权的用户兴趣对下次点击进行预测,其中加权的用户兴趣通过长期记忆(平均历史点击次数)和短期记忆(最后一次点击)的双线性组合表示。

然而,当从当前会话的外部存储器中以一般 ms 为用户的兴趣建模时,STMP 模型将会话前缀中的每个项目视为同等重要,我们认为这在捕捉用户的兴趣漂移(可能是由无意点击引起的),尤其是在长时间会话的情况下是不太好的。 因此,我们提出了一个注意力模型来解决这个问题——它已被证明可以有效地捕捉长序列中的注意力漂移。

二、The STAMP Model


STAMP 模型的架构如图 2 所示。从图 2 可以看出,这两个模型之间的唯一区别是,在 STMP 模型中,通常计算用户兴趣的抽象特征向量(状态向量 hs) 从外部存储器 ms 的平均值,而在 STAMP 模型中,hs 是从基于注意力的用户的一般兴趣(一个实值向量 ma )计算出来的,如图 2 所示,它是由所提出的注意力机制产生的。

所提出的注意力网络由两部分组成:(1)一个简单的前馈神经网络(FNN),负责为当前会话前缀 St 中的每个项目生成注意力权重,以及(2)一个注意力组合 通常负责计算基于注意力的用户兴趣的函数 ma 。 用于注意力计算的 FNN 定义为:

i 表示当前会话前缀内项目 xi 的注意力系数。从公式中可以看出,会话前缀中项目的注意力系数是根据目标项目 xi 的嵌入、最后点击 xt 和会话表示 ms 计算得出的,因此,它能够捕捉到 目标项目和用户兴趣的长期/短期记忆。 请注意,在等式中,明确考虑了短期记忆x_t.

在获得关于当前会话前缀 St 的注意力系数向量 α = (α1, α2, …, αt ) 后,基于注意力的用户对当前会话前缀 St 的兴趣一般 ma 可以计算如下:

【推荐算法论文阅读】STAMP: Short-Term Attention/Memory Priority Model for Session-based Recommendation相关推荐

  1. 【推荐算法论文阅读】LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation

    这篇文章是基于NGCF提出的改进,NGCF相关的工作参考[推荐算法论文阅读]Neural Graph Collaborative Filtering 一.背景 通过严格的对照实验(在相同的数据集和评估 ...

  2. STAMP: Short-Term Attention:Memory Priority Model for Session-based Recommendation简介

    STAMP: Short-Term Attention/Memory Priority Model for Session-based Recommendation 介绍 作者提出lstm虽然能很好的 ...

  3. 长尾推荐算法论文阅读笔记合集(papers / literatures for long tail recommendation)

    写在前面: (1)我将长尾推荐系统相关论文做了一个整理,主要包括:论文题目.发表的会议/期刊(出处).发表时间.被引量(主要是google scholar),有的论文将对其内容进行简单介绍.最后提供这 ...

  4. 【推荐算法论文阅读】Sampling-Bias-Corrected Neural Modeling for Large Corpus Item Recommendations

    一.背景 工业界现有的推荐系统都需要从一个超大规模的候选集中拉取item进行打分排序.解决数据稀疏和指数级候选集分布的一种通常做法是从item的内容特征中学习出item的稠密表示.这里很自然地就想到了 ...

  5. 【推荐算法论文阅读】BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Trans

    一.背景 之前基于RNN的推荐模型都是按照从左到右单向建模的,单向结构限制了用户行为序列中隐藏表示的能力--它们通常假定一个严格有序的序列,而这并不总是实用的. 本文提出了 bert4rec,应用de ...

  6. 造球粒径检测算法论文阅读笔记

    造球粒径检测算法论文阅读笔记 1.图像感兴趣区域的划分 2.生球区图像高斯滤波 3.生球区域与阴影区域的分割 4.对生球区域的分类标记(区分上下层球) 1.图像感兴趣区域的划分 依据光照的不同,将图像 ...

  7. 【论文阅读】GETNext: Trajectory Flow Map Enhanced Transformer for Next POI Recommendation

    [论文阅读]GETNext: Trajectory Flow Map Enhanced Transformer for Next POI Recommendation 前言 Next POI 推荐是根 ...

  8. keras cnn注意力机制_2019 SSA-CNN(自注意力机制)目标检测算法论文阅读笔记

    背景 <SSA-CNN Semantic Self-Attention CNN for Pedestrian Detection>是2019 的工作,其作者来自于南洋理工.这篇文章主要是做 ...

  9. 【推荐算法论文】ItemCF原文

    论文背景 22 January 2003 谷歌学术被引用次数:6769(截至2020年12月2日) 期刊:IEEE Internet Computing DOI: 10.1109/MIC.2003.1 ...

  10. 推荐算法论文:Deep Neural Networks for YouTube Recommendations

    吹牛逼 按照经典的信息检索方式讲推荐系统划分为两部分 深度候选生成模型 深度排序模型 1. 介绍 youtube推荐系统面临的三个问题 规模:当前的推荐算法可以很好的解决数据量较小的问题,但是针对Yo ...

最新文章

  1. java.lang.reflect.InvocationTargetException异常
  2. 龙将加速浏览器_《看门狗:军团》即将开启预载,迅游加速器支持下载和联机加速 18183手机游戏网...
  3. LESSON 3 线性回归的手动实现
  4. 【非广告,纯干货】这大概是我看过最有温度的面经分享(已收割京东美团技术专家offer)
  5. positionnbsp;absolutenbsp;relativenbsp;z-index
  6. 电脑运行adb闪退_adb命令调试工具
  7. 网站产品设计应避免的7个误区
  8. OpenCV学习笔记五-图像混合
  9. python同步oracle_Python cx_Oracle 7引入苏打文档存储
  10. HDU2021多校第五天 1009 Array-树状数组求二阶前缀和
  11. ASP.NET MVC 利用AreaRegistration进行Area区域模块化开发
  12. 苏炳添成为小米代言人
  13. ROS学习笔记九:用C++编写ROS发布与订阅
  14. android dialog 点击遮罩 关闭_如何用构建者模式打造自己dialog
  15. Eclipse开启或取消快速导航栏(toggle breadcrumb)
  16. 从USB驱动器运行Windows 10
  17. C Primer Plus学习笔记(二)
  18. CAD2008详细安装教程和激活失败方法
  19. 安卓4.X的桌面启动器-尖端启动器APEX_我是亲民_新浪博客
  20. 蚂蚁金服副总谈区块链

热门文章

  1. Android跨进程通信——AIDL原理解析
  2. 教你itunes电脑版怎么下载
  3. rs232接口_为什么越来越多人用RS232接口,却还分不清DB9、DB25的引脚定义?
  4. 如何做好高端的总结汇报PPT呢?
  5. 钣金行业精益化生产和管理的必要性
  6. Ubuntu Tty (字符终端) 显示中文,和字体大小设置
  7. vscode终端显示中文字符乱码解决
  8. PHP连接MySQL-踩坑总结
  9. robotium和appium区别
  10. 关于conime.exe