关注我们,一起学习~
title:Coarse-to-Fine Sparse Sequential Recommendation link:https://arxiv.org/pdf/2204.01839.pdf from:SIGIR 2022
1. 导读
本文是针对序列推荐的一篇短文,主要针对自注意力方法无法很好地应对稀疏数据,无法对稀疏数据提高较好的保证,而提出的从粗到细的自注意力方法CaFe。该方同时从购物意图和交互商品中对用户动态性进行建模,显式地从粗粒度和细粒度两方面学习序列中的含义。
- CaFe从粗粒度的序列中学习用户意图,从而提供高质量的用户意图表征;
- CaFe将意图表征融合到商品编码器输出中,提升商品表征。
- 结合两种表征进行后续商品交互预测
2. 预备知识
2.1 问题定义
商品集合为V,意图集合为C,|C|<<|V|,用户集合为U,交互序列集合为
。如上所示,意图可以是一些商品的类型,而下面的商品则是具体的。用户的交互数据表示为
,其中
。给定交互序列
,预测
。
2.2 自注意力推荐
本文的主干网络采用SASRec,SASRec采用自注意力机制挖掘用户行为序列中的关系,这里对SAS做简要介绍。详细可阅读原论文或本文的第2节。
- Embedding层:Embedding层对交互序列中的商品进行编码,结合对应位置的embedding构成最终的序列embedding;
- Transformer编码器:这部分采用多头自注意力机制,经过多层自注意力层得到输出,其中O为输出,m为不同的头,W为可学习参数,H为经过l层自注意力得到的序列中交互商品的embedding。要求j>i,因为只能之前的行为对之后的行为有影响,反之不行。
3. 方法
image.png
3.1 Embedding层
用户u的交互序列
包含商品序列
和意图序列
,两者对应的embedding分别为
,
,d为embedding维度,|V|,|C|为商品和意图集合的大小。两类序列中的位置编码分别表示为
,
。分别对两个序列进行编码可以得到下式,
embedding的计算方式和SASRec类似,公式如下
3.2 从粗到细的编码器
3.2.1 意图编码器
对于意图序列,目的是捕获用户的粗粒度兴趣动态。意图序列通常是稠密的,因为 |C|远小于|V |。因此,使用SASRec 模型作为意图序列的编码器。给定意图embedding
,SASRec 编码器的输出用作意图序列表征
。
3.2.2 商品编码器
越靠近当前时间的交互,对预测越重要。对应的商品编码器也是Transformer形式,但增强了关注最近商品的能力。在注意力权重计算中加入掩码分数
增强商品编码器中的短期用户动态性建模。公式如下,θ=1时就是标准版的点积注意力机制,exp(w)θ可以写成**exp(w lnθ)**,lnθ通过下式计算,其中w,b为可学习参数,H为多头注意力机制经过l层后的输出商品embedding,H以及自注意力计算方式和2.2 SASRec一样,d表示两个商品间的距离向量,dij表示距离embedding表中第n i-j个embedding,m表示第m个头,即这里使用的是多头自注意力。
同样经过和意图编码类似的步骤得到商品的embedding
,使用商品embedding来关注近期的偏好,使用意图序列得到的embedding来关注长期偏好,最终embedding为下式,
3.2.3 预测
在 CaFe 中,同时用
和 R 预测下一个意图和商品。采用矩阵分解 (MF) 来计算时间步