SIGIR'23 Graph Masked Autoencoder for Sequential Recommendation

Graph Masked Autoencoder for Sequential Recommendation

来源:SIGIR 2023

摘要:目前对比方法在推荐领域大放异彩,但由于对比视图生成策略的手工制作特性,现有的cl增强模型i)很难在不同的顺序推荐任务上产生一致强大的性能;ii)会被用户行为数据噪声干扰。基于此,作者提出了一种简单而有效的图掩蔽自动编码增强序列推荐方法(MAERec),该方法自适应、动态地提取全局项目交互信息,用于自监督增强。它很自然地避免了上述严重依赖于构建高质量的嵌入对比视图的问题。大量的实验表明,作者的方法显著优于最先进的基线模型。

1 动机

    1)最先进的对比学习(CL)方法仍然严重依赖于基于启发式的手动设计的数据增强方案来构造嵌入对比的视图。当前的对比自我监督的成功在很大程度上依赖于精确的对比视图生成的高质量增强,这很难适应不同的序列推荐场景。2)噪声问题。自监督学习(SSL)模型很容易被虚假的项目相关性所误导,导致次优表现。


图1 两种经典方法造成的噪声影响

    以现有的基于cl的序列推荐方法中使用的增强策略为例,如图1所示,用户A是一个购买许多数字产品的数字爱好者。受网上零售商新年销售的影响,他/她还会购买一些受欢迎的零食和饮料。然而,CL4SRec 中的crop操作可能会丢失重要的交互数据,并保留有偏差的信息以进行增强。在这种情况下,噪声增强视图之间的对比对齐将不可避免地损害自我监督的质量,并导致误导性的用户偏好建模。同样,对用户B的项目序列的替代增强(在CoSeRec[24]中)可能会失去对长尾项目(如二胡、琵琶)的有限但重要的交互数据。其他一些更流行的乐器(如吉他)被用来替代,这可能会恶化对有限交互标签的长尾项目的推荐表现。

    为了解决上述问题,作者开发了一种新的自监督学习方法来增强序列推荐系统的鲁棒性和适应性即图掩蔽自动编码器模型(称为MAERec)来自动实现自监督增强过程。MAERec自适应地、动态地提取信息信号,以响应不断变化的顺序推荐环境。

2 自适应过渡路径掩蔽策略

    与现有的一些掩蔽自编码器[16,28]中的随机掩蔽策略不同,作者将图掩蔽自动编码器推广为自动、动态地提取有用的信息,以掩蔽不同的数据。为了使模型能够保持长程项目之间的全局上下文信息,作者用高阶项目连接来进行图掩蔽。

2.1 全局物品过渡图

    为了获取不同用户之间的依赖关系,作者考虑每条用户行为序列(如𝑆^u,𝑢∈U),共同生成图G=(V,E)来表示不同项目之间的过渡关系。项目集合V作为过渡图的顶点集,对于边集E,遍历所有用户序列,并在每个项目和每个序列中的ℎ-hop邻居之间建立一条边,重复的边只计算一次。在形式上,过渡图的边集被构建为:

式 1

    给定所构造的物品过渡图G =(V,E),具有可学习的数据增强的整体自适应路径掩蔽范式由几个关键模块组成:(i) Learning to Mask:自动发现用于掩码路径构建的锚节点集;(ii)Transition Path Masking:利用锚点集在图G上进行图掩蔽;(iii)Task-Adaptive Augmentation:重新调整任务自适应上下文的自监督图掩蔽过程。

2.2 Learning to Mask

    学习掩模模块的目标是学习为可学习图增增器生成锚节点V𝑎集的策略。作者提出通过推导在图G =(V,E)上的表示一致性来度量项目之间的语义相关性。具体来说,作者对图G上目标项目节点𝑣的𝑘-hop过渡邻居进行采样,生成目标项目v的过渡子图。有嘈杂的交互或倾向于流行的项目在其嵌入中可能有不同的分布,这可能导致它们的语义关联得分的抑制。因此,我们将语义关联得分较高的项目作为G中关于目标项目v的锚节点V𝑎,形式化为:


式 2

    其中,全局项目过渡图G上节点𝑣的𝑘-hop邻居的集合用N_v^k表示。项目𝑣和𝑣‘(𝑣’∈N_v^k)的嵌入分别用e𝑣和e𝑣‘表示,其中e𝑣,e𝑣’∈R𝑑。语义相关度得分较高的节点在其邻域中具有更高的结构一致性,这意味着由这些节点生成的路径掩码在包含更少噪声的情况下捕获了潜在的跨序列项目转换模式。这使得它们更有利于SSL重建任务。

    为了增强掩蔽学习组件的鲁棒性,我们将均匀分布的噪声纳入到确定项目语义相关性的过程中。形式表示为:


式 3

    锚定集V𝑎的大小为𝛼(|V𝑎𝑐|=𝛼),它是根据所有节点的语义相关性对所有节点进行排序,并使用这个排序来确定它们的选择概率。为了提高掩蔽学习组件对数据增强的适应性和可学习性,作者通过最大化基于infomax的语义相关性,将自监督学习信号引入到语义相关性中,即:


式 4

    优化L𝑚𝑎𝑠𝑘的目的是动态调整mask语义关联推导对下游任务的影响。这种掩蔽学习过程的自动化使它能够很好地适应不断变化的顺序推荐场景。

2.3 Transition Path Masking


图2 模型架构

    作者希望过渡路径掩蔽机制应该具有两个基本属性: (1)重建的项目过渡关系不仅应该包含序列内的项目关联,还应该包含序列间的项目依赖性;(2)应保留近期和过去交互的不同序列模式,以反映短期和长期的项目依赖性。为了实现这一目标,作者使用掩蔽学习模块生成的锚节点集V𝑎以及图路径屏蔽信息项目-项目过渡模式作为基于ssl的重构信号。

    具体地说,作者提出基于递归随机游走过程的方法来确定掩蔽的路径,该过程在过渡图G =(V,E)进行。给定2.2节中的锚点集合V𝑎,路径掩蔽机制被正式定义如下:


式 5

    P^k表示所包含的项目过渡连接的集合。在这里,作者定义N(P^{k-1})表示通过边能够连接到P^{k-1}内的点的点集,操作𝜑(·,·)表示使用比率0<𝑝< 1进行dropout。在该框架的扩展步骤中,首先从锚节点V𝑎开始随机游走,递归地添加连接项,通过函数𝜑(·,·)采样过渡路径,之后再进行drop。通过这样做,该方法能够捕获用户行为的复杂和动态特性。此外,此框架使锚定节点在序列中的位置多样化,它同时注入了短期和长期的自我监督信号。

2.4 Task-Adaptive Augmentation

    为了减轻任务无关信息和数据方差的影响,作者通过任务适应增强了掩蔽学习器。这使其能够处理更广泛的用户行为序列。为了实现这一点,作者引入了一个任务自适应函数,指导学习屏蔽范式,通过屏蔽更多信息的项目过渡路径进行自我监督来提高模型的泛化能力。否则,对任务无关信息的重建会削弱自监督学习模型的表示能力。作者引入了一个由𝑟(·)表示的任务自适应函数:


式 6

    L𝑟𝑒𝑐表示下游任务的损失函数。∇L𝑟𝑒𝑐表示当前训练步骤与上一步之间的差值,而∇L‘𝑟𝑒𝑐表示L𝑟𝑒𝑐相较于前𝛿个步骤的平均变化。数据特定掩蔽的贡献是通过相应的重建SSL损失所带来的损失收益来衡量的。该功能使可学习的掩蔽范式能够根据当前掩蔽对下游任务的影响来调整其掩蔽策略。使用较小的常数𝜖<1。如果当前掩模的自监督重建任务导致L𝑟𝑒𝑐的下降速度更快,则对应的掩模损失L𝑚𝑎𝑠𝑘较小。否则,掩模损失将更大。由此,Mask损失可以表示为:

式 7

    整体的自适应路径掩蔽过程可以表述如下:


式 8

    3 Graph Masked Autoencoder

        通过2的策略获得图\overline{G}后,作者将其输入一个图自动编码器框架,作者利用简化的图卷积网络作为图嵌入的编码器,以及一个跨层MLP作为重构掩蔽路径的解码器。

        图编码器公式如下:


式 9

        为了解决GCNs的过平滑问题,作者使用跨层多层感知器(MLP)作为解码器。对于mask的项目-项目边(𝑣,𝑣‘),在编码器的每一层中使用项目嵌入e𝑣和e𝑣’来构建对应的边缘嵌入:


式 10

        编码器GCN中的层数用𝐿表示,连接操作用∥表示,矩阵元素乘法⊙表示。之后,便可以计算其重构损失:


式 11

        与e_{v,v’}和e_{v,v’’}对应的MLP的输出用s_{v,v’’}和s_{v,v’}表示。它们表示(𝑣,𝑣‘)是一个masked的项目-项目边的概率。为了加速优化,采用负采样法对负边进行采样(𝑣,𝑣”)。

    4 Transformer as Sequence Encoder

        对于历史交互序列的建模依旧使用transformer,每个项目𝑣∈V都被分配了一个可学习的嵌入e𝑣,用于在训练过程中生成过渡路径掩码和图编码,在加入位置编码后有初始嵌入如下:

式 12

        生成的项目表示e_{s1}^u是通过聚合不同图层之间的信息来获得的,如式子9所示。

        之后利用多头自注意力机制进行聚合:


式 13

        为了预测用户与项目𝑣交互的概率,在上面得到了用户历史行为序列的最终嵌入作为最后一个多头自注意块的输出后通过目标项目嵌入e𝑣计算其点积。使用交叉熵损失函数来计算推荐任务的优化目标:


式 14

        因此最终的损失函数为:


式 15

5 实验


图3 实验效果

5.2 消融实验


图4 消融实验

    第一个变体,-L2M,用相同比例的随机掩蔽取代了我们设计的掩模生成器。结果表明,非自适应掩蔽可能会损害重要的过渡关系,或对基于掩蔽的重构任务引入噪声信息,从而削弱表征,导致性能次优。

    第二个变体,-PA研究了掩蔽过渡路径而不是单个节点的好处。在这个变体中,掩蔽路径的最大长度被设置为𝑘=1,这使得路径掩蔽相当于单节点掩蔽。结果表明,所提出的过渡路径掩蔽显著提高了整体性能,突出了从序列内和序列间的角度学习掩蔽项目转换模式的有效性。

     第三个变体,具有任务自适应函数𝑟(·)的自适应掩蔽损失也是我们的MAERec算法的一个关键组成部分。为了研究其影响,作者消除了变体-TA中可学习掩蔽L𝑚𝑎𝑠𝑘的权值,使任务自适应正则化失效。结果表明,任务自适应函数根据目标推荐任务的梯度引导模型训练朝着更好的方向发展。

5.3 超参数分析


图5 超参数分析
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容