论文笔记:Sequential Recommendation with Relation-Aware Kernelized Self-Attention
论文笔记:基于关系的核化自注意力机制用于序贯性推荐系统
摘要:
最近的研究发现,顺序推荐可以通过注意力机制得到改善。通过跟踪这一发展,我们提出了关系感知核化自我注意(RKSA),采用了transformer的自我注意机制,增强了一个概率模型。Transformer最初的自我关注是一种没有关系意识的确定性度量。因此,我们在自我注意中引入了一个潜在空间(latent space),潜在空间将推荐上下文从关系建模为多元斜正态分布,并从共现中生成核化协方差矩阵。这项工作通过添加推荐任务细节的概率模型,将Transformer的自我关注和顺序推荐结合起来。我们在基准数据集上进行了RKSA实验,与最近的基线模型相比,RKSA显示出了显著的改进。此外,RKSA能够产生一个潜在空间模型,回答推荐的原因。
简介:
引入潜在空间模型以优化transformer架构,在其注意力机制中嵌入潜在空间信息。将潜在空间建模为多元偏正态分布(MSN),其维度等于序列中唯一项目的数量。MSN分布的协方差矩阵由核函数构建,反映序列、项目及用户间的关系变量,并赋予了推荐任务自适应的能力和灵活性。在完成核建模后,我们实现了MSN分布的重构参数化过程,并能够摊销地推断引入的潜在空间特征。由于关系建模依赖于内核方法,并命名为基于关系感知的内核化自我注意(RKSA)模型。我们的设计包含三项关键创新点。
- 因为推荐任务中特征的稀疏性限制了传统的transformer架构在这一场景下的表现欠佳。为了提升性能,在模型中引入了一个潜在维度,并相应地增加了相关的参数量。
- 通过引入关系感知核机制来构建协方差矩阵的方式,在一定程度上提升了自注意力机制在推荐系统中的适用性。
- 通过将注意力机制嵌入到潜在空间中进行核化处理后,在理论上为推荐系统的可解释性提供了新的研究视角。
- 针对包括ML和Steam等主流数据集在内的五个典型数据集,在性能评估方面与SASRec、HCRNN、NARM等八个基准模型进行了全面对比分析。

相关工作:(Preiminary)
1 multi-head attention architecture(多头注意力机制架构)
self-attention module作为RKSA的核心组件进行了回顾性分析。
scaled-dot product attention:普通的attention

Positional embeddings are designed to encode positional information within the attention mechanism, capturing subtle positional patterns that are essential for processing sequential data.

其中X为位置信息。
Multi-head attention: 该机制采用多头架构,在构建H个独立的注意力网络的基础上实现信息融合。其中每个子网络的参数量为原始模型的1/H。

2.多元偏正态分布(Multivariate Skew-Normal Distribution,MSN)
- 该研究通过分析特征之间的关系来建模其协方差结构。
- 该研究通过分析注意力值的分布模式来建模其非对称性。
方程:location ξ, scale ω, correlation ψ, and shape α

其中,Σ =ωψω 是协方差矩阵,φk 是k维多元标准正态密度分布函数,
3 核函数(Kernel Function)
通过核函数实现灵活的协方差结构。

通过实际数值计算观测空间X中的两个观测样本,在机器学习研究中,核函数被用作协方差矩阵来衡量两个数据点之间的相似度。采用核函数必须满足以下两个条件:
(1)对称性要求:
(i)对于所有属于X的数据点x_i和x_j有K(x_i, x_j)=K(x_j, x_i);
(ii)存在一个正定矩阵Γ使得K(x_i, x_j)=Γ^TΓ。

(2)半正定:

我们采用RKSA框架下的自定义核函数,并针对MSN的相关协变参数建立模型;同时通过实验验证该自定义核函数在实际应用中的有效性。
本节阐述了顺序推荐任务的基本架构以及关系感知核化自我注意(RKSA)的深入分析与参数化建模过程。
1/problem statement 问题描述
基于用户的过去行为数据集构建模型是顺序推荐的关键步骤之一。例如:U={u₁,u₂,…,u_{|U|}} 即可表示一个用户群体;I={i₁,i₂,…,i_{|I|}} 则代表一组物品;Su={i₁(u),i₂(u),…,in_u(u)} 则记录了用户 u 的所有行为序列 Su 中的具体内容;而我们的目标则是 估计 用户 u 的下一个行为的具体内容是什么?

2.自注意力块(Self-attention block)是一种改进型的设计,在Transformer架构的基础上进行了优化与创新。根据图示所示的是基于关系感知的一种定制化注意力机制(Relation-Aware Kernelized Self-Attention, RKSA)。该机制通过整合商品间的互动关系与用户行为特征,在计算出相似度矩阵的基础上构建了一种新的相似度计算模型,并在此基础上实现了相似度值的加权融合过程以提升模型性能。具体而言,在数据预处理阶段将商品间的关联性作为额外输入并结合用户的全局行为特征进行建模;在模型训练过程中引入了特征权重自动调节机制以实现对不同关系强度的关注力度动态调整;同时在推理阶段采用了一种分层加权策略以平衡不同层次的关系影响权重分配从而实现了对复杂交互模式的有效捕捉与建模能力提升

Embedding Layer
原始数据(商品及互动)经稀疏热编码处理后得到特征向量序列{X_t}={x1,x2,…,xn}。
从用户的动作序列sequence中选取前n个action:
■ 定义商品embedding为E∈ℝ^{i×d},其中d表示embedding维度;E由隐藏层输出生成。
■ 用户embedding定义为U∈ℝ^{u×d};
■ 定义一个位置嵌入矩阵P∈ℝ^{n×d}用于捕获交互中的顺序关系;
将E与P相加作为输入特征向量xt=Eit + Pit(其中i=1,2,…,n)。
○ Relation-Aware Kernelized Self-Attention:关系感知核化自我注意
○ Point-Wise Feed-Forward Network
将transformer中的点式前馈网络应用于RKSA时会生成各处输出。该前馈网络由两个线性变换构成,并在两者之间插入ReLU激活函数。
此外,在设计架构时我们采用了堆叠多个self-attention块以学习复杂的过渡模式同时在深度学习框架中采用了残差连接以增强模型表达能力。
每层后配置归一化层配合丢弃机制以提升模型稳定性。
○ Output Layer
共有B个attention blocks,在此任务中旨在预测下一个item,并基于这些块在特定位置的输出进行操作。
采用与上一层embedding层相同的参数来进行排序处理,并根据这一规则计算出每个结果对应的分数。

由最后一个attention block生成Fn(B),每个Ei表示第i个item在嵌入空间中的输入向量。基于上述公式计算得到的结果中,在预测结果序列中的下一个items将具有最高得分。
3.parameter modeling 参数建模
具体阐述了MSN建模的参数即RKSA中的变量z
Location ξ:location的任务与多元正态分布类似 假设采用MSN进行采样 用于评估源与目标的相关性 同时需给出具有最大可能性的对齐分数
因此 采用对齐分数作为位置参数如下:

f是一个激活函数,并且通过缩放因子√d对ξ进行归一化处理。
协方差矩阵Σ:
协方差反映了item之间的相关性,并且仅选取最近的n个item进行分析。 item之间的关系可以通过其共同出现的频率或非线性核函数来进行描述。
在本文研究中我们设计了一个基于核函数的关系表示方法这是因为核函数是一种有效的非线性高维距离度量工具,并可通过优化其超参数来实现参数学习。
为了构建这一关系表示方法我们采用基于item与user共同出现次数的方法:
对于给定序列在时间点i与时间点j之间对其进行标准化处理以获得xi和xj。
此外我们还计算了相应的归一化方差wi²和wj²。

对于上述公式,在其中采用softplus函数作为标准偏差的激活函数设计架构时,则会保证标准偏差值始终呈现正值特性。此外,请注意以下三个核函数的设计方案,并且在后续分析中将所有变量记作ξ而非ξ^形式。
Counting kernel:具体而言,则是通过计算每一对项目共同出现的频率来定义其核函数形式


具体来说,在计算相似度时,默认情况下我们假定每个项i和j都具有相同的权重值w_i和w_j。具体来说,在计算相似度时,默认情况下我们假定每个项i和j都具有相同的权重值w_i和w_j. 这种方法的一个显著优点是其计算过程相对高效且易于实现. 这种方法的一个显著优点是其计算过程相对高效且易于实现.

● Radial Basis Function(RBF):

■ User kernel:利用用户与item的表征,核函数如下:


us represents a d-dimensional user embedding, while Ws denotes a d×d dimensional weight matrix, with the circled dot symbol representing the Hadamard product. Finally, the kernel function used in this model is formed by summing up the three basic kernel functions mentioned earlier.

○ Shape α:形状参数α表征了目标序列中各位置与其对应特定项之间的关系。
定义:其中,α = \{α_1,…,α_n\}表示目标序列\{i_1,…,i_n\}中各位置对应的形状参数。
基于以上定义可知aj的计算公式为:

其中,sj为可学习的缩放参数,a^为共现矩阵C的比例参数。
aj^的定义如下:

其中,Ci,j表示共现矩阵C中第i行第j列的位置上的数值。
其中,Ci,j表示共现矩阵C中第i行第j列的位置上的数值
4. 模型推理

○ 损失函数:通过简森不等式推断下界。

基于Lz采用负采样策略计算得到的二元交叉熵损失作为评估指标,在模型训练完成后系统会自动确定最终确定的总损失值由两部分组成:基于Lz算法计算出的预测损失以及共现损失。

λr为正则化参数
○ Z的再参数化:

实验结果(Experiment Result)
● Dataset: Amazon,CiteULike,Steam,MovieLens
● Beseline:
○ Pop always recommends the most popular items.
○ Item-KNN (Linden, Smith, and Y ork 2003) recommends an item based on the measured similarity of the last item.
○ BPR-MF(Rendle et al. 2009) recommends an item by theuser and the item latent vectors with the matrix factoriza-tion.
○ GRU4REC(Hidasi et al. 2015) models the sequential user history with GRU and the specialized recommendation loss function such as Top1 and BPR loss.
○ NARM(Li et al. 2017) focuses on both short and longterm dependency of a sequence with an attention and a modified bi-linear embedding function.
○ HCRNN( Song et al. 2019) considers the user’s sequential interest change with the global, the local, and the temporary context modeling. It modifies the GRU cell structure to incorporate the various context modeling.
○ AttRec(Zhang et al. 2019) models the short-term intent using self-attention and the long-term preference with metric learning.
○ SASRec(Kang and McAuley 2018) is a Transformer model which combines the strength of Markov chains and RNN. SASRec focuses on finding the relevant items adaptively with self-attention mechanisms.
● 具体实验:
○ GRU4REC、NARM、HCRNN和SASRec,我们使用相应作者编写的官方代码。
○ 在GRU4REC、NARM和HCRNN中,我们应用了NARM提出的数据扩充方法
○ 对于SASRec与RKSA,使用两个attention block以及one head。
○ 以上所有实验,batchsize=128,embedding=64,dropout=0.5,lr=0.001,opt=adam。
○ 其余baseline参数与原作者保持一致。
○ RKSA的loss函数中,λr正则化参数为0.001
○ 以上所有实验,使用学习率下降(learning rate decay)以及早停(early stop)策略。
○ 我们对所有数据集使用最新的50个动作序列。

定量分析如下:根据表2中的结果, 我们基于两个经过广泛验证的评估指标——Hit Rate@K 命中率以及 NDGG@K——对RKSA模型进行了评估, 并得出了其优越的表现, 其中 RKSA 模型在各项测试中均表现优异, 而 beauty 数据集中表现尤为突出, 其显著的优势在于该数据集因其稀疏特性成为研究焦点
● 消融实验 :三个核函数的组合,I,U,C,在数据集Beauty与MovieLens上进行。

对Beauty与MovieLens两个数据集中的核函数组合进行了比较分析。我们将Beauty视为一个典型的稀疏型数据集,并将MovieLens视为一个典型的稠密型数据集。表3详细列出了各个内核函数的表现情况。假设基于稀疏数据的学习难以有效提取item与user的表示向量。研究表明,在稀疏型数据环境下应用计数型核函数的RKSA模型取得了最佳的效果;另一方面,在稠密型场景下应用基于用户与物品相关性的混合核策略表现最优;对比实验结果表明,在稠密型场景下采用基于用户与物品相关性的混合核策略表现最优;对比实验结果表明,在稠密型场景下采用基于用户与物品相关性的混合核策略表现最优;对比实验结果表明,在稠密型场景下采用基于用户与物品相关性的混合核策略表现最优
2. 定性分析:
○ 该商品的嵌入表示 ,同一类别内的商品间关联度较高:由(b)可以看出。
通过构建合成序列来考察训练核函数间的相关性。采用计数型与项内核结合的方式,并非基于用户的内核模型,在此情况下进行分析较为合理。合成序列包含四个主要电影系列及一部动画作品(如《进击的巨人》)。如图3b所示,在实验结果中发现同一系列的电影在相关性上表现更为突出;相比之下,在类别间则呈现出较低的相关程度。

在最后阶段, 我们对计数、项目以及用户核心的重要性进行了评估, 并参考了图4a中的信息, 发现其中包含着重要的提示意义。由于各个数据集具有独特的特征, 因此它们在展现计数、项目以及用户关系时采取了不同的策略。值得注意的是,在MovieLens中虽然存在较高的计算密度, 但在其内部核心机制中并非主导因素, 相反, 用户核心却占据了更重要的地位。从每个用户的平均操作次数来看, MovieLense作为一个相对密集的数据源为我们提供了宝贵的参考依据。我们提出的方法RKA通过深入挖掘各数据特性和具体应用场景的特点, 并特别关注于提升用户体验能力的同时优化了针对核心机制的支持策略

图(a)展示了不同数据集之间的内核权重差异;在稀疏情况下,RKSA模型的预测的秩值表现更为突出。
不常见项目的预测排名
与Beauty类似,在数据集中也存在许多不常见项。这些项由于其信息稀疏性难以进行预测。为了克服这一挑战,RKSA方法依赖整个数据集中的相关信息,而非仅针对单个序列进行预测。如图4b所示,与SASRec方法相比,随着信息稀疏性的恶化,RKSA能够显著提升目标项目的排名效果。
○ attention 权重学习:
如图5所示,SASRec与RKA模型均采用了注意力机制,并着重刻画了各项目间的共同出现信息.研究发现,在时间步0、1、2及5时,序列实例均呈现出较高的共现值.研究表明,RKSA较SASRec表现出更高的注意力水平.相比之下,在相同条件下RKSA的注意力权重显著低于SASRec.

总结
我们提出了一种用于顺序推荐任务的关系感知核化自我注意(RKSA)。RKSA引入了一种新的自我注意机制,这种机制是随机的,并且被关系信息核化。虽然过去的注意机制是确定性的,但我们在注意中引入了一个潜在变量。此外,潜在变量利用了核化相关矩阵,因此核可以扩展为包含关系信息和建模。通过这些创新,我们能够在所有实验环境中看到最佳性能。我们期望在不久的将来,变压器随机性的进一步发展。
