Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >WWW'22「快手」序列推荐:解耦长短期兴趣

WWW'22「快手」序列推荐:解耦长短期兴趣

作者头像
秋枫学习笔记
发布于 2022-09-19 02:56:52
发布于 2022-09-19 02:56:52
8480
举报
文章被收录于专栏:秋枫学习笔记秋枫学习笔记

关注我们,一起学习~

title:Disentangling Long and Short-Term Interests for Recommendation link:https://arxiv.53yu.com/pdf/2202.13090.pdf code:https://github.com/tsinghua-fib-lab/CLSR from:WWW 2022

1. 导读

本文结合自监督方法提出CLSR模型来挖掘用户的长短期兴趣,并进行进一步的解耦。

1. 首先提出了两个独立的编码器来独立捕获不同时间尺度的用户兴趣。

2. 然后从交互序列中提取长期和短期兴趣代理,作为用户兴趣的伪标签。

3. 然后设计成对对比任务来监督兴趣表征与其相应兴趣代理之间的相似性。

4. 最后由于长期和短期兴趣的重要性是动态变化的,通过基于注意力的网络自适应地聚合它们进行预测。

2. 定义

令商品数为N,用户数为M,以

\{x^u\}_{u=1}^M

表示用户的交互数据集合,

x^u=[x_1^u,...,x_{T_u}^u]

表示用户

x^u

的交互数据,即商品列表。

输入:交互序列

输出:是否会点击商品的概率

3. 方法

3.1 用户兴趣建模

由于用户的长短期兴趣随时间的动态变化很大,因此将这两个方面分别建模而不是使用统一的表征来表达它们。长期兴趣是相对稳定的,而短期兴趣是动态的、经常变化的。并且每次交互都由这两个方面以及目标商品决定。利用以下三个机制来建模,其中f1(),f2(),f3()分别对用户长期兴趣,短期兴趣和交互进行建模。其中U是用户,V为商品,Y表示交互。当前时间表示t,前一时刻表示为t-1。U中包含了用户ID和交互序列,三者的关系如图所示。

\zeta=\left\{\begin{array}{l} U_{l}=f_{1}(U) \\ U_{s}^{(t)}=f_{2}\left(U_{s}^{(t-1)}, V^{(t-1)}, Y^{(t-1)}, U\right) \\ Y^{(t)}=f_{3}\left(U_{l}, U_{s}^{(t)}, V^{(t)}, U\right) \end{array}\right.

image.png

  • 长期兴趣:长期兴趣相对稳定,因此这里是从整个序列中提取。
  • 短期兴趣:随着用户不断与推荐商品进行交互,短期兴趣会不断变化。例如,用户可能会在点击某个商品后建立新的兴趣。同时,用户也可能逐渐失去某些兴趣。也就是说,短期利益是时间相关的变量,因此利用前一时刻的兴趣来建模当前时刻的兴趣。
  • 交互预测:利用长短期兴趣和交互数据进行预测。

3.2 自监督实现

在本节中设计了两个独立的编码器来实现 𝑓1 和 𝑓2,它们学习长短期兴趣的表征。然后以通过自我监督来实现解耦。最后,基于注意力机制的自适应融合模型来完成𝑓3。CLSR 的概述如图 2 所示。

3.2.1 为长短期兴趣生成查询向量

\begin{array}{l} q_{l}^{u}=\operatorname{Embed}(u) \\ q_{s}^{u, t}=\operatorname{GRU}\left(\left\{x_{1}^{u}, \cdots, x_{t}^{u}\right\}\right) \end{array}

先对用户特征做embedding,经过GRU捕获随时间变化的关系。长短期兴趣分属于不同的编码器

\phi

,

\psi

,分别利用上述得到的两个embedding与交互序列,输入到两个编码器可以得到长短期兴趣表征,公式如下,

\begin{aligned} \boldsymbol{u}_{l}^{t} &=\phi\left(\boldsymbol{q}_{l}^{u},\left\{x_{1}^{u}, \cdots, x_{t}^{u}\right\}\right) \\ \boldsymbol{u}_{s}^{t} &=\psi\left(\boldsymbol{q}_{s}^{u, t},\left\{x_{1}^{u}, \cdots, x_{t}^{u}\right\}\right) \end{aligned}

3.2.2 长期兴趣编码器

图2(B)中是长期兴趣编码器

\phi

的过程,使用注意力机制,公式如下,其中W为可学习参数,

\tau_l

表示多层MLP,||表示拼接,E(x)表示商品的embedding。

\begin{aligned} v_{j} &=\boldsymbol{W}_{\boldsymbol{l}} \boldsymbol{E}\left(x_{j}^{u}\right) \\ \alpha_{j} &=\tau_{l}\left(v_{j}\left\|\boldsymbol{q}_{l}^{u}\right\|\left(v_{j}-q_{l}^{u}\right) \|\left(v_{j} \cdot q_{l}^{u}\right)\right) \\ a_{j} &=\frac{\exp \left(\alpha_{j}\right)}{\sum_{i=1}^{t} \exp \left(\alpha_{i}\right)} \end{aligned}

得到系数后,对序列中的embedding加权求和,公式如下,

u_l^t=\sum_{j=1}^t{a_j \cdot E(x^u_j)}

3.2.3 短期兴趣编码器

利用循环神经网络捕获短期兴趣,其中W为可学习参数,ρ表示循环神经网络模型,例如LSTM,GRU等。

\begin{array}{l} \left\{o_{1}^{u}, \ldots, o_{t}^{u}\right\}=\rho\left(\left\{E\left(x_{1}^{u}\right), \ldots, E\left(x_{t}^{u}\right)\right\}\right) \\ v_{j}={W}_{s} \boldsymbol{o}_{j}^{u} \end{array}

利用长期兴趣中计算注意力系数的方式可以同样利用现有的v可以求得短期兴趣的注意力系数b。加权求和后得到短期兴趣embedding,如下,

u_s^t=\sum_{j=1}^t{b_j \cdot o_j}

3.2.4 自监督解耦长短期兴趣

因为上面是通过无监督的方式提取出长短期兴趣表征的,无法确保长短期兴趣的解耦,因此这一节采用自监督的方法来进行解耦。

计算整个交互历史的平均表征作为长期兴趣的代理,并使用最近𝑘次交互的平均表征作为短期兴趣的代理。利用代理来监督解耦,公式如下,其中E(x)表示交互序列中的商品embedding。

\begin{array}{l} \boldsymbol{p}_{l}^{u, t}=\operatorname{MEAN}\left(\left\{x_{1}^{u}, \cdots, x_{t}^{u}\right\}\right)=\frac{1}{t} \sum_{j=1}^{t} E\left(x_{j}^{u}\right) \\ \boldsymbol{p}_{s}^{u, t}=\operatorname{MEAN}\left(\left\{x_{t-k+1}^{u}, \cdots, x_{t}^{u}\right\}\right)=\frac{1}{k} \sum_{j=1}^{k} E\left(x_{t-j+1}^{u}\right) \end{array}

仅在序列长度大于阈值

l_t

时才计算代理,因为如果整个序列仅包含几个商品,则无需区分长期和短期。

l_t

和𝑘是超参数。

使用代理作为标签,可以利用它们来监督长短期兴趣的解耦。在编码器输出和代理之间进行对比学习,这要求学习到的长短期兴趣表征与其对应的代理更相似,而不是相反的代理。在图 2 (A) 中说明了对比任务。公式如下,以长期兴趣为例,长期兴趣保证和长期兴趣代理表征的相似度要大于长期兴趣和短期兴趣的表征,并且大于短期兴趣和长期兴趣代理之间的相似度。

\begin{array}{l} \operatorname{sim}\left(u_{l}^{t}, p_{l}^{u, t}\right)>\operatorname{sim}\left(u_{l}^{t}, p_{s}^{u, t}\right) \\ \operatorname{sim}\left(p_{l}^{u, t}, u_{l}^{t}\right)>\operatorname{sim}\left(p_{l}^{u, t}, u_{s}^{t}\right) \\ \operatorname{sim}\left(u_{s}^{t}, p_{s}^{u, t}\right)>\operatorname{sim}\left(u_{s}^{t}, p_{l}^{u, t}\right) \\ \operatorname{sim}\left(p_{s}^{u, t}, u_{s}^{t}\right)>\operatorname{sim}\left(p_{s}^{u, t}, u_{l}^{t}\right) \end{array}

本文采用BPR损失或Triplet loss来对上述的约束关系构建损失函数,公式如下,将上述u,p,q带入即可构建四个相应的损失函数。在BPR中sim()函数为内积,Triplet loss中为欧氏距离。

\begin{array}{l} \mathcal{L}_{\mathrm{bpr}}(a, p, q)=\sigma(\langle a, q\rangle-\langle a, p\rangle) \\ \mathcal{L}_{\mathrm{tri}}(a, p, q)=\max \{d(a, p)-d(a, q)+m, 0\} \end{array}

损失函数就是把四个损失函数相加,如下,其中f()表示两种损失函数之一。

\mathcal{L}_{\text {con }}^{u, t}=f\left(u_{l}, \boldsymbol{p}_{l}, \boldsymbol{p}_{s}\right)+f\left(\boldsymbol{p}_{l}, \boldsymbol{u}_{l}, \boldsymbol{u}_{s}\right)+f\left(\boldsymbol{u}_{s}, \boldsymbol{p}_{s}, \boldsymbol{p}_{l}\right)+f\left(\boldsymbol{p}_{s}, \boldsymbol{u}_{s}, \boldsymbol{u}_{l}\right)

3.2.5 自适应兴趣融合

长短期兴趣那个发挥更重要的作用取决于历史序列。例如,用户在不断浏览同一类别的商品时,主要受短期兴趣的驱动。同时,也取决于目标商品。例如,运动爱好者可能由于长期兴趣而点击推荐的自行车,即使在他/她浏览了几本书之后。因此,将历史序列目标商品都包含在聚合器的输入中,其中历史序列用 GRU 压缩。基于注意力的自适应融合模型如图 2 (D) 所示,自适应的动态融合长短期兴趣。公式如下,其中σ为sigmoid函数,

\tau_f

表示MLP。

\begin{array}{l} \boldsymbol{h}_{t}^{u}=\operatorname{GRU}\left(\left\{\boldsymbol{E}\left(x_{1}^{u}\right), \ldots, \boldsymbol{E}\left(x_{t}^{u}\right)\right\}\right) \\ \alpha=\sigma\left(\tau_{f}\left(\boldsymbol{h}_{t}^{u}\left\|\boldsymbol{E}\left(x_{t+1}^{u}\right)\right\| \boldsymbol{u}_{l}^{t} \| \boldsymbol{u}_{s}^{t}\right)\right. \\ \boldsymbol{u}^{t}=\alpha \cdot \boldsymbol{u}_{\boldsymbol{l}}^{t}+(1-\alpha) \cdot \boldsymbol{u}_{s}^{t} \end{array}

最后经过两层MLP(图2 E)进行预测,公式如下,

\hat{y}^{t+1}{u,v}=MLP(u^t||E(v))

损失函数如下,

\mathcal{L}_{\mathrm{rec}}^{u, t}=-\frac{1}{N} \sum_{v \in O} y_{u, v}^{t+1} \log \left(\hat{y}_{u, v}^{t+1}\right)+\left(1-y_{u, v}^{t+1}\right) \log \left(1-\hat{y}_{u, v}^{t+1}\right)

结合之前的对比学习损失函数,总的损失函数如下,

\mathcal{L}=\sum_{u=1}^{M} \sum_{t=1}^{T_{u}}\left({\mathcal{L}}_{\mathrm{rec}}^{u, t}+\beta{\mathcal{L}}_{\mathrm{con}}^{u, t}\right)+\lambda\|\Theta\|_{2}

4. 结果

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秋枫学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
KDD'22|序列推荐:多行为超图增强的Transformer
本文主要针对序列推荐场景学习用户动态偏好,以往的方法更多的是关注单一交互类型,本文设计了一个多行为超图增强的 Transformer 框架 (MBHT) 来捕获短期和长期的跨类型行为依赖关系。具体来说,多尺度 Transformer 结合低秩自注意力,从细粒度和粗粒度级别联合编码行为感知序列模式。将全局多行为依赖商品合并到超图神经架构中,捕获分层的长期商品相关性。
秋枫学习笔记
2022/09/19
1.2K0
WWW'22 用户意图发掘:序列推荐中的意图对比学习
用户与物品的互动是由各种意图驱动的(例如,准备节日礼物、购买捕鱼设备等)。然而,用户的潜在意图往往是不被观察到/潜在的,因此很难利用这些潜在意图进行序列推荐(SR)。本文提出了意图对比学习(ICL),通过聚类将潜在意图变量引入SR。其核心思想是从未标记的用户行为序列中学习用户的意图分布函数,并通过考虑学习的意图来优化SR模型,从而改进推荐模型。
秋枫学习笔记
2022/09/19
1.2K0
CIKM'22「清华+华为」DualRec:考虑过去和未来信息的双网络序列推荐模型
序列推荐(SR)在个性化推荐系统中发挥着重要作用,因为它从用户的实时增长行为中捕获动态和多样的偏好。与标准的自回归训练策略不同,未来数据(在训练期间也可用)已用于促进模型训练,因为它提供了关于用户当前兴趣的更丰富的信号,并可用于提高推荐质量。然而,这些方法存在严重的训练推理差距,即,在训练时,过去和未来的上下文都由同一编码器建模,而在推理过程中只有历史行为可用,这种差异可能导致性能下降。为了缓解训练推理的差距,本文提出了一种新的框架DualRec,该框架通过一个新的双网络实现了过去-未来的解耦和过去-未来相互增强。具体而言,利用双重网络结构分别对过去和未来的环境进行建模。双向知识迁移机制增强了双网络学习的知识。
秋枫学习笔记
2023/01/30
3.1K0
WSDM'22「京东」个性化会话推荐:异构全局图神经网络
本文是针对会话推荐提出的相关方法,兼顾历史会话信息和会话中商品间的转换模式,提出异构全局图网络HG-GNN,利用所有会话中的商品转换(历史和当前的会话)来推断用户的偏好。全局图包含会话内的item-item关系,user-item关系和全局item共现关系。同时提出一个个性化会话编码器,结合当前会话的一般用户偏好和临时兴趣来生成个性化会话表征进行推荐。
秋枫学习笔记
2022/09/19
3230
WSDM'22「微信」在线推荐:图神经网络+元学习->长短期时序元学习
title:Long Short-Term Temporal Meta-learning in Online Recommendation link:https://arxiv.fenshishang.com/pdf/2105.03686.pdf from:WSDM 2022
秋枫学习笔记
2022/09/19
2750
WSDM'22 | 序列推荐:对比学习缓解表征退化问题
本文是针对序列推荐提出的方法,作者发现现有模型生成的商品embedding会发生退化,导致一些不相似的稀有商品的embedding很集中,相似。本文提出DuoRec利用对比学习来重建序列的表征。并且,在模型中构建基于Dropout的模型级增强来保留更好语义信息。
秋枫学习笔记
2022/09/19
9700
CMI:结合对比学习和多兴趣挖掘的微视频推荐
本文主要关注微视频的推荐方面的一篇短文,现有的微视频推荐模型依赖于多模态信息,并且学习的embedding无法反映用户对微视频的多种兴趣。本文结合对比学习提出提取对比多兴趣并设计微视频推荐模型 CMI。CMI 从用户的历史交互序列中为每个用户学习多个兴趣embedding,其中隐式正交微视频类别用于解耦多个用户兴趣。此外,构建对比多兴趣损失,以提高兴趣embedding的鲁棒性和推荐的性能。
秋枫学习笔记
2022/09/19
6120
ICDE'22「华为」MISS:多兴趣自监督学习框架用于点击率预估
本文提出了一种新颖的多兴趣自我监督学习(MISS)框架,该框架通过兴趣级别的自监督信号增强了特征embedding。在两个新的基于 CNN 的多兴趣提取器的帮助下,使用两个基于CNN的兴趣提取器考虑不同兴趣表征(逐点(point)和联合(union))、兴趣依赖性(短期(short range)和长期(long range))以及兴趣相关性(商品间和商品内)。并利用对比学习增强特征的表征学习。
秋枫学习笔记
2022/09/19
4410
CIKM'22 | EC4SRec:可解释引导的对比学习用于序列推荐
对比学习被广泛的应用于序列推荐,以解决交互数据稀疏的问题,但现有的基于对比学习的方法无法确保通过对给定锚用户序列的一些随机增强(或序列采样)获得的正(或负)序列在语义上保持相似(或不同)。当正负序列分别为假阳性和假阴性时,可能会导致推荐性能下降。本文通过提出解释引导增强(EGA)和解释引导对比学习序列推荐(EC4SRec)模型框架来解决上述问题。EGA 的关键思想是利用解释方法来确定商品在用户序列中的重要性,并相应地推导出正负序列。然后,EC4SRec 在 EGA 操作生成的正负序列上结合自监督和监督对比学习,以改进序列表征学习以获得更准确的推荐结果。
秋枫学习笔记
2023/01/30
8510
KDD'22 | 自监督超图Transformer构建推荐系统
现有基于 GNN 的推荐系统的思想是递归地执行沿用户-商品交互边传递消息,从而得到相应的embedding。尽管它们很有效,但大多数当前的推荐模型都依赖于充足且高质量的训练数据,因此学习的表征可以很好地捕捉用户偏好。许多实际推荐场景中的用户行为数据通常是嘈杂的并且呈现出偏态分布,这可能导致基于 GNN 的模型中的表征性能欠佳。本文提出了 SHT,自监督超图Transformer框架 (SHT),它通过以显式方式探索全局协作关系来增强用户表征。具体来说,利用图协同过滤范式使用超图Transformer来维持用户和商品之间的全局协作效果。利用提炼的全局上下文,提出了一种跨视图生成自监督学习组件,用于在用户-商品交互图上进行数据增强,以增强推荐系统的鲁棒性。
秋枫学习笔记
2022/09/19
1.1K0
ICDE'22「字节」EMBSR:挖掘会话推荐中用户行为的【顺序关系】和【二元关系】
本文是针对会话推荐提出的相关方法,主要关注会话序列中用户执行的各种活动,如点击,添加购物车等微行为。本文提出EMBSR关注两种不同的行为模式:“顺序模式”和“二元关系模式”。为了建立用户微行为的统一模型,
秋枫学习笔记
2022/09/19
4240
RecSys'22|CARCA:交叉注意力感知上下文和属性进行推荐
本文将用户的上下文信息和商品的属性结合起来考虑,提出上下文和属性感知推荐模型 (CARCA) ,该模型可以通过多头自注意力块将上下文特征和商品属性结合起来。现有的大部分序列推荐方法是采用序列中最近的商品表征和目标商品计算点击来计算评分,而CARCA利用交叉注意力记住计算所有序列商品和目标商品来预测他们的最终分数。利用交叉注意力,计算旧商品和最近商品之间的相关性以及它们对决定接下来推荐哪个项目的影响。
秋枫学习笔记
2022/09/19
6620
CIKM'21「网易」新用户冷启动:MAIL生成虚拟用户交互表征
本文是针对新用户方面的冷启动文章,作者提出双塔结构的MAIL,一个塔用于冷启动,另一个塔关注排序问题。
秋枫学习笔记
2022/09/19
4560
SIGIR'22「amazon」CaFe:从粗粒度到细粒度的稀疏序列推荐
本文是针对序列推荐的一篇短文,主要针对自注意力方法无法很好地应对稀疏数据,无法对稀疏数据提高较好的保证,而提出的从粗到细的自注意力方法CaFe。该方同时从购物意图和交互商品中对用户动态性进行建模,显式地从粗粒度和细粒度两方面学习序列中的含义。
秋枫学习笔记
2022/09/19
6270
CIKM'22 | 序列推荐中的多层次对比学习框架
本文主要针对序列推荐中的数据稀疏问题提出相应的解决方法,针对现有对比学习在缓解该问题上的不足提出MCLSR。现有方法的不足:由于对复杂的协作信息(例如用户-商品关系、用户-用户关系和商品-商品关系)的建模不足,学习信息丰富的用户/商品embedding还远远不够。本文提出了一种新的用于序列推荐的多层次对比学习框架,称为 MCLSR。与之前基于对比学习的 SR 方法不同,MCLSR 通过跨视图对比学习范式从两个不同级别(即兴趣级别和特征级别)的四个特定视图学习用户和商品的表征。具体来说,兴趣级对比机制与顺序转换模式共同学习协作信息,特征级对比机制通过捕获共现信息重新观察用户和商品之间的关系。
秋枫学习笔记
2023/01/30
1.1K0
CIKM'21「eBay」推荐系统--利用超图对商品的多模态信息建模
Click-Through Rate Prediction with Multi-Modal Hypergraphs https://dl.acm.org/doi/pdf/10.1145/3459637.3482327 CIKM 2021
秋枫学习笔记
2022/09/19
6740
CIKM'21「华为」推荐系统 | 因果推断+强化学习:反事实用户偏好模拟
文中涉及变分推断,可参考这篇阅读:https://zhuanlan.zhihu.com/p/70644599
秋枫学习笔记
2022/09/19
7800
NIPS'21「微信」推荐系统:结合课程学习的多反馈表征解耦
为了解决上述问题,本文提出CDR,提出利用协同过滤动态路由机制去噪并挖掘不同意图之间的关系,同时利用课程学习,从易到难,并且在标签级别去噪。
秋枫学习笔记
2022/09/19
2530
序列推荐 | 利用超图对价格偏好和兴趣偏好共同建模
现有的基于会话的推荐方法只关注建模用户的兴趣偏好,而忽略了价格因素。而将价格偏好纳入基于会话的推荐存在以下挑战。
秋枫学习笔记
2022/09/19
7750
CIKM'21 「腾讯」对比学习+课程学习进行序列行为增广
本文作者提出的Contrastive Curriculum Learning(CCL)方法,主要包含两方面,分别解决上述问题:
秋枫学习笔记
2022/09/19
4800
推荐阅读
KDD'22|序列推荐:多行为超图增强的Transformer
1.2K0
WWW'22 用户意图发掘:序列推荐中的意图对比学习
1.2K0
CIKM'22「清华+华为」DualRec:考虑过去和未来信息的双网络序列推荐模型
3.1K0
WSDM'22「京东」个性化会话推荐:异构全局图神经网络
3230
WSDM'22「微信」在线推荐:图神经网络+元学习->长短期时序元学习
2750
WSDM'22 | 序列推荐:对比学习缓解表征退化问题
9700
CMI:结合对比学习和多兴趣挖掘的微视频推荐
6120
ICDE'22「华为」MISS:多兴趣自监督学习框架用于点击率预估
4410
CIKM'22 | EC4SRec:可解释引导的对比学习用于序列推荐
8510
KDD'22 | 自监督超图Transformer构建推荐系统
1.1K0
ICDE'22「字节」EMBSR:挖掘会话推荐中用户行为的【顺序关系】和【二元关系】
4240
RecSys'22|CARCA:交叉注意力感知上下文和属性进行推荐
6620
CIKM'21「网易」新用户冷启动:MAIL生成虚拟用户交互表征
4560
SIGIR'22「amazon」CaFe:从粗粒度到细粒度的稀疏序列推荐
6270
CIKM'22 | 序列推荐中的多层次对比学习框架
1.1K0
CIKM'21「eBay」推荐系统--利用超图对商品的多模态信息建模
6740
CIKM'21「华为」推荐系统 | 因果推断+强化学习:反事实用户偏好模拟
7800
NIPS'21「微信」推荐系统:结合课程学习的多反馈表征解耦
2530
序列推荐 | 利用超图对价格偏好和兴趣偏好共同建模
7750
CIKM'21 「腾讯」对比学习+课程学习进行序列行为增广
4800
相关推荐
KDD'22|序列推荐:多行为超图增强的Transformer
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文