分享自:

基于自注意力的序列推荐模型

期刊:2018 IEEE International Conference on Data MiningDOI:10.1109/icdm.2018.00035

王城康(Wang-Cheng Kang)与朱利安·麦考利(Julian McAuley)来自加州大学圣迭戈分校(UC San Diego),他们在2018年的IEEE国际数据挖掘大会(IEEE International Conference on Data Mining, ICDM)上发表了题为《自注意力序列推荐》(Self-Attentive Sequential Recommendation)的研究论文。

这项研究的背景是序列推荐系统(Sequential Recommender Systems)领域。该领域的核心目标是根据用户的历史行为,并结合其近期活动的“上下文”来预测下一个可能交互的项目。捕捉序列动态中的有用模式是该领域的主要挑战,因为作为上下文的过往行为数量会使输入空间的维度呈指数级增长。当时,处理该问题的主流方法主要分为两类:马尔可夫链(Markov Chains, MCs)和循环神经网络(Recurrent Neural Networks, RNNs)。基于MC的方法假设用户的下一步行为仅取决于其最近一个或少数几个行为,这种简单的假设使其在极度稀疏的数据集上表现优异,但可能无法捕捉复杂场景中的高阶动态。相反,基于RNN的方法理论上可以学习长期语义依赖,表现力更强,但它们需要大量且密集的数据才能超越简单基线,且计算效率较低。因此,该研究的核心动机是平衡这两种方法的优缺点,希望构建一个既能像RNN一样捕捉长期语义,又能像MC一样基于少数关键行为做出预测的模型。为此,作者们提出了一种名为SASRec(Self-Attention based Sequential Recommendation model)的全新模型,该模型基于自注意力(Self-Attention)机制。

SASRec模型的详细工作流程可以分为模型构建、训练和评估三个主要阶段。在第一部分,即模型架构构建中,研究者设计了一个不包含任何循环或卷积模块的序列模型。整个流程从嵌入层(Embedding Layer)开始。对于一个给定的用户行为序列,模型首先将其转换为一个固定长度n的序列,若原序列短于n则向左填充(Padding),若长于n则截取最近的n个行为。然后,通过一个物品嵌入矩阵(Item Embedding Matrix)M,将序列中的每个物品表示为一个d维的向量。由于自注意力机制本身无法感知序列中物品的位置信息,研究者创新性地引入了一个可学习的位置嵌入(Positional Embedding)矩阵P,并将其与物品嵌入向量相加,作为模型的最终输入Ê。这个设计至关重要,实验表明固定的位置嵌入会导致性能下降。接下来是模型的核心——自注意力模块(Self-Attention Block)。研究采用了缩放点积注意力(Scaled Dot-Point Attention)机制,其计算公式为Attention(Q, K, V) = softmax(QK^T/√d)V。在SASRec中,输入Ê通过三个不同的线性投影矩阵WQ、WK和WV分别转换为查询(Queries)Q、键(Keys)K和值(Values)V,然后再输入到注意力层。为了确保模型在预测第(t+1)个物品时不能利用未来的信息,研究者对注意力机制进行了因果性(Causality)修改,禁止了所有从查询qi到键kj(其中j>i)的连接。通过自注意力层后,每个时间步的输出s_i是对所有之前物品嵌入的加权聚合,但这个聚合仍然是线性的。为了引入非线性并考虑不同潜在维度间的交互,模型在每个自注意力层后紧跟一个逐点前馈网络(Point-wise Feed-Forward Network),其公式为F_i = ReLU(S_iW^(1) + b^(1))W^(2) + b^(2)。该网络由两层全连接层构成,且参数在所有时间步上共享。为了学习更复杂的物品转换模式,上述的自注意力层和前馈网络构成了一个完整的自注意力模块,而整个SASRec模型可以堆叠多个这样的模块。当网络加深时,容易出现模型过拟合、训练不稳定等问题。受Transformer模型的启发,研究者采用了三种关键技术来缓解这些问题:残差连接(Residual Connections),通过将输入x直接加到经过Dropout的子层输出上,有助于将低层特征(如关键的最后一个物品信息)传播到高层;层归一化(Layer Normalization),在输入每个子层前对输入特征进行归一化,以稳定和加速训练;Dropout正则化,在训练过程中以概率p随机“关闭”神经元,并在嵌入层Ê上也应用了Dropout来防止过拟合。在最后的预测层(Prediction Layer),当经历B个自注意力模块的处理后,模型基于输出F_t^(B)来预测下一个物品。研究特别强调了使用共享物品嵌入(Shared Item Embedding)的策略,即预测层中的物品嵌入矩阵N与输入层的物品嵌入矩阵M是同一个。这一设计显著提升了模型性能,因为它减少了参数规模并缓解了过拟合,同时前馈网络的非线性变换能力也使得模型能够学习到非对称的物品转换关系,打破了共享嵌入在传统方法(如FPMC)中的限制。此外,该模型本质上通过考虑用户的所有历史行为来隐式地建模用户,实验发现显式添加用户嵌入并不能进一步提升性能。

在模型训练阶段,研究者将输入序列和期望输出序列(即输入序列向后平移一位)作为训练数据。他们采用了二元交叉熵损失(Binary Cross Entropy Loss)作为目标函数,并对每个时间步在序列中随机采样一个负样本进行优化。优化器选用了Adam。在模型评估阶段,为了比较的公平性和计算效率,研究者对每个用户,随机采样100个用户未曾交互过的负样本,连同真实的下一个物品共101个,在这101个候选物品中评估模型推荐性能,并采用了命中率@10(Hit Rate@10)和归一化折损累计增益@10(NDCG@10)两个Top-N评价指标。实验在四个领域、平台和稀疏度差异显著的公开数据集上进行:高度稀疏的Amazon Beauty和Amazon Games,新引入的Steam游戏评论数据集以及稠密的MovieLens-1M。对比的基线方法包括不考虑序列的通用推荐方法(PopRec, BPR)、一阶马尔可夫链方法(FMC, FPMC, TransRec)以及基于深度学习的序列推荐方法(GRU4Rec, GRU4Rec+, Caser)。

实验结果全面地展示了SASRec的优越性。在回答第一个研究问题“SASRec是否优于现有最优模型”时,表现数据显示出一个清晰的模式:非神经网络的简单模型在稀疏数据集上表现强劲,而复杂的神经网络模型在稠密数据集上表现更优。然而,SASRec模型在所有数据集上都一致性地、显著地超越了所有基线方法。平均而言,相较于最强基线模型,它在命中率上提升了约6.9%,在NDCG上提升了9.6%。研究通过消融实验(Ablation Study)详细分析了模型中各组件的影响。结果显示,移除位置嵌入会在稠密数据集上导致性能下降,突显了其对序列顺序建模的重要性;使用非共享的物品嵌入会导致严重的性能衰减,尤其是在稀疏数据集上,验证了共享嵌入策略在缓解过拟合方面的价值;移除残差连接会导致性能大幅下滑,证明了将底层关键信息(如最后一个物品的嵌入)直接传递给最终预测层的重要性;Dropout对于稀疏数据的正则化效果尤为明显。在堆叠模块数量上,0个模块性能极差,1个模块效果尚可,而2个(默认设置)与3个模块在稠密数据上表现更好,证明了层次化自注意力结构对于学习复杂转换的有效性。尽管Transformer中采用了多头(Multi-Head)注意力,但SASRec在推荐任务的小维度设置下,单头注意力表现更优。在训练效率和可扩展性方面,SASRec对一个epoch的模型更新仅需1.7秒,比Caser快11倍以上,比GRU4Rec+快18倍以上,且收敛到最优性能所需的总时间也远少于两者,展现了优异的GPU并行加速能力。可扩展性实验表明,模型性能随着最大序列长度n的增加而提升,直到n=500左右才趋于饱和,但即便n高达600,其训练时间仍小于CNN/RNN方法,显示出其能轻松处理数百个长度的序列。最后,研究者对注意力权重进行了可视化分析。位置注意力热力图显示,在稀疏数据集上模型更关注最近的物品,行为类似一阶马尔可夫链;而在稠密数据集上,模型会关注到更久远的历史,并对近期物品有更强的位置敏感性,这直观解释了SASRec为何能自适应地处理不同稀疏度的数据集。不同层的热力图对比揭示了模型的层次化行为:低层注意力范围更广,高层则更聚焦于最近的位置。基于物品类别的注意力热力图进一步表明,即使未在训练中明确提供类别信息,自注意力机制也能自发地学习到物品的潜在属性,并对相似物品(如同一电影类别)赋予更高的注意力权重。

本研究的结论是,提出的SASRec模型创新性地纯基于自注意力机制对整个用户序列进行建模,能够自适应地根据不同数据集的特性(如稀疏度)来权衡利用近期和远期信息进行预测。其不仅在推荐准确性上全面超越了包括MC、CNN、RNN在内的所有最先进基线模型,而且在训练速度上实现了一个数量级的提升。这项工作的科学价值在于,它成功地将自然语言处理领域革命性的自注意力机制(特别是Transformer架构)适配并引入到序列推荐问题中,开创性地展示了一种不同于MC和RNN的强大新范式,并为理解序列推荐模型的行为提供了良好的可解释性。其应用价值巨大,所提出的SASRec模型兼具高性能与高效率,非常适用于现代工业级推荐系统对海量数据和低延迟响应的需求。

该研究的亮点突出体现在三个方面:首先是其核心创新,即模型架构的纯粹性,它完全摒弃了循环或卷积单元,仅依靠自注意力来同时捕获长短期依赖,实现了对MC和RNN两类方法的优势融合;其次是其自适应能力,通过可视化等技术揭示了模型能根据数据密度动态调整注意力范围,这是其能在稀疏和稠密数据集上均取得最优性能的关键内在机制;最后是其实用性,模型在保证最高准确度的同时,实现了比主流深度学习方法快一个数量级的训练速度和优秀的可扩展性。此外,引入共享物品嵌入、可学习位置嵌入以及证明去除多头注意力在特定条件下的有效性等,都是具有实践指导意义的发现。研究未来计划探索将丰富的上下文信息(如停留时间、操作类型等)整合进模型,并研究处理极长序列的方法。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com