SIGIR2024 | SelfGNN: 自监督图学习序列推荐

科技   2024-07-19 08:02   新加坡  
嘿,记得给“机器学习与推荐算法”添加星标

为缓解自监督序列推荐存在的噪声问题,本文提出了一种名为SelfGNN的序列推荐框架。其能够捕捉多粒度的用户行为模式,包括短期的高阶协同关系和长期的时序变化模式。


论文:https://arxiv.org/abs/2405.20878

代码:https://github.com/HKUDS/SelfGNN


序列推荐通过模拟用户的时间和序列交互模式有效地解决了信息过载问题,为了克服监督信号的局限性,一些方法在推荐系统中采用了自监督学习技术。然而,仍有两个关键挑战尚未解决。

(1)现有的序列推荐模型主要集中于长期建模个别交互序列,忽视了不同用户行为之间宝贵的短期合作关系。

(2)现实世界的数据通常包含噪声,特别是在用户的短期行为中,这可能源于临时意图或误点击,这种噪声对图模型和序列模型的准确性产生负面影响,进一步复杂化了建模过程。


为了克服上述难题,北京大学、香港大学的研究人员提出了一种名为 Self-Supervised Graph Neural Network(SelfGNN)的全新框架,用于序列推荐。SelfGNN能够捕捉多粒度的用户行为模式:基于图神经网络(GNN)对时间片段内的交互行为建模,考虑了短期的高阶协同关系;基于序列模型对用户跨时间片段的行为进行关联学习,捕捉长期的时序变化模式。此外,研究人员提出了一种个性化自增强学习方法,通过对比长短期用户行为模式来降低数据噪音的影响,从而增强模型的稳健性。


模型方法


图1展示了展示了推荐数据中的阶段性的协同关系(第一个短期中之间的关系,第二个短期中之间的关系)、短期的突然的意图(选择)、兴趣的变化()以及具有多样化兴趣的用户()。

图1 推荐数据中的阶段性的协同关系

图2 SelfGNN的整体框架示意图
短期交互模型编码
如图1所示,在第一个周期具有明显的协同信号,而在第二个周期具有与相似的行为。
因此,SelfGNN根据时间间隔将全局数据划分为多个短期图,然后利用层图卷积神经网络(GCN)协同传播高阶信息。
分别表示从相邻节点聚集到中心节点的信息。合并不同层GCN的输出,得到第个短期阶段的用户嵌入和商品嵌入
通过这种方式,SelfGNN不仅捕获了协同信号,还包含了短期时间信息。

双粒度长期行为建模

SelfGNN通过间隔级别(interval-level)融合和实例级别(instance-level)行为建模在双粒度级别捕获长期用户和项商品表示。
从两个不同的层次进行长期特征学习,能够使得两个层次互相补偿,增加可学习的信息。

Interval-level序列建模

对于每个用户和商品的短期阶段性嵌入,通过GRU学习动态位置以构建interval-level的时间序列
基于多头自注意力机制得到interval-level的长期特征嵌入

Instance-level序列建模

基于商品的长期特征嵌入,通过融合位置编码的多头自注意力机制对用户行为序列进行学习,得到用户的实例级别长期特征

多视角融合和预测

在预将实例级和间隔级方法得到的多层次用户特征进行融合,并最终做出如下预测:
损失函数为:

个性化自监督去噪

为了缓解用户序列行为数据中普遍存在的数据稀疏性和数据噪声问题,SelfGNN通过一个个性化去噪自监督学习任务进行了进一步增强。
这里的“噪声”指的是暂时性的意图或误点击。他们不能被视为长期用户兴趣或新近兴趣点的预测。
具体而言,SelfGNN的自监督任务专注于使用长期行为模式过滤短期非固有用户偏好。
这个设计基于以下观察:用户的行为可能受到短期随机兴趣的驱动,例如,一个不喜欢徒步旅行的用户也可能因为一次性活动购买徒步鞋和能量饮料。这种噪声行为数据可能会干扰用户长期真实兴趣的建模。
此外,为了准确识别这些噪声的短期行为,根据不同用户的兴趣多样性对去噪SSL任务进行了个性化,如图3所示。

图3 个性化自监督去噪的示意图
对于每个去噪SSL的训练样本,从短期图中随机抽取两个观察到的用户-商品边,并对其成对的相似度差异评分进行对齐。
为例,其公式如下:
其中,表示用户在第个短期与商品交互的相似度得分以及长期相似度得分。
这些预测是使用学到的短期协同嵌入和学到的长期序列嵌入进行的。用户与项目交互的似然性也以类似方式计算。
通过这些相似度评分,SelfGNN对齐了短期和长期视角之间的评分差异。采用自监督目标函数:
其中,表示长期视角下边之间的相似度差异,表示第个短期视角下边之间的评分差异。
特别地,SelfGNN应用了可学习的权重,以捕捉用户短期和长期偏好一致性的不同程度。个性化自监督学习可以避免错误的跨视角偏好对齐。这些权重通过以下公式计算:
其中,, , , 是可训练的参数,sigm是sigmoid函数。决定了长期评分作为第个短期噪声修正参考的稳定性。
SelfGNN取消了长期评分的反向传播,以引导优化侧重于修正短期评分和学习用户稳定权重
在损失函数中,的作用是引导在方向和幅度上的优化。
如果表现出强的长期关系,而的关系较弱(即),且的偏好稳定性高于(即),则这将导致向更大的值优化,表示与对应的短期关系将被增强,而的短期关系将被削弱。
值越大,优化的程度越高。当时,情况则对应相反,将优化为更小的负值。
通过将SSL任务与主要推荐任务结合,得到最终的损失函数如下:

实验

总体效果

和多个不同类型的推荐方法对比,SelfGNN由于其长短期兴趣学习能力和自监督的能力得到了更好的推荐效果。
在论文中,SelfGNN也提供了消融实验对各个结构的有效性进行了分析。

噪声实验

为了评估SelfGNN在噪声问题上的鲁棒性,通过随机替换所有用户的实际交互项的不同百分比为随机生成的虚假项,并使用这些损坏的序列作为输入重新训练模型。
实验结果显示了SelfGNN在处理数据噪声方面的潜力。

图4 在不同噪声场景下的性能下降情况
在较为稀疏的Amazon数据集中,虽然SURGE在少量噪声下表现良好,但在面对20%的噪声时,其性能迅速下降。
另一方面,与其他模型相比,SelfGNN受噪声影响较小。即使在20%的噪声下,它在没有噪声的情况下也能达到72%的HR@10和73%的NDCG@10。
在相对密集的Movielens数据集中,模型在20%的噪声情况下达到了相对79%的HR@10和78%的NDCG@10。
在噪声问题的鲁棒性归因于SelfGNN在个性化自监督学习中通过长期特征来减轻短期图中的噪声的能力。
SelfGNN的长期表示是通过间隔级别GRU注意机制结合短期特征获得的,这使得最终的长期用户兴趣表示在短期噪声减少时受益于去噪效果。

案例研究

利用具体的数据实例来研究自监督学习去噪的效果。
如图5所示,随机选择了一个用户(id为6128)和该用户的一部分行为序列,以及另一个与用户(id为6128)具有至少20个共同交互项的用户(id为824)。
作者计算并归一化了在没有(wo-score)和有(w-score)自监督学习情况下的最终用户-物品相似度分数

图5 商品(书籍)的得分、标题和类别
通过观察,可以看到商品(id为6282)的得分在包含自监督学习后从0.8239下降到0.3686。这表明模型识别该物品为需要减弱的噪声交互。
论文中从两个方面证明这种行为可能是噪声行为:
首先,书籍商品(id为6282)的类别是「Mystery」,这与用户关注的其他物品的类别(「Action & Adventure」)不同。作为一个与用户(id为6128)共享许多相似兴趣的用户,用户(id为824)并未关注商品(id为6282)。
其次,从商品的编码热图中可以明显看出,商品 (id为6282) 在多个维度上表现出与其他物品不同的特征。与没有使用自监督学习的情况相比,同一用户连续交互的物品特征表现出更大的差异性,这证明了自监督学习范式减轻了由图神经网络引起的平滑问题。
为了验证在所有用户序列中,类似于商品(id为6282)的其他噪声物品是否相对于其各自序列中的正常物品表现出显著的特征差异,进行了一个统计实验。
论文中计算了在有和没有自监督学习范式下,用户(id为6128)的行为序列中商品(id为6282) 与其他商品之间的特征嵌入的平均余弦相似度。
然后,同样计算了在其他用户序列中满足噪声条件的商品与该商品所在序列的其余商品之间的平均余弦相似度。
统计结果如下表所示,结果表明在自监督学习模型(w-SAL)中,噪声物品与其他物品之间的平均余弦相似度显著低于没有自监督学习的模型(w/o-SAL)中的对应值。
SelfGNN展示了准确识别和减弱可能为噪声的交互行为的能力。

总结与未来工作

SelfGNN使用图神经网络的用户序列学习,并提出了一种新颖的个性化自监督学习范式来增强鲁棒性。
SelfGNN通过结合周期性协同信息和行为序列依赖性,学习了更好的兴趣表示,并通过自增强学习根据个体用户的稳定性特征自适应地减弱短期噪声。
在未来的研究中,首先,可以计划探索自适应动态短期图划分技术,以更好地捕捉不同数据的短期特征。其次,SelfGNN的个性化自监督学习范式不局限于图神经网络的序列推荐框架中,它可以被推广、应用到更多的结构和场景中来完成良好的去噪效果。

欢迎干货投稿 \ 论文宣传 \ 合作交流

推荐阅读

ACL2024推荐系统/大模型论文整理
SIGIR2024 | 大模型推荐的数据高效微调方法
TPAMI2024 | 多样性协同度量学习推荐方法

由于公众号试行乱序推送,您可能不再准时收到机器学习与推荐算法的推送。为了第一时间收到本号的干货内容, 请将本号设为星标,以及常点文末右下角的“在看”。

喜欢的话点个在看吧👇

机器学习与推荐算法
专注于分享经典的推荐技术,致力于传播基础的机器学习、深度学习、数据挖掘等方面的知识。
 最新文章