PANE-GNN Unifying Positive and Negative Edges in Graph Neural Networks for Recommendation论文阅读笔记

发布时间 2023-12-14 21:56:35作者: ANewPro

Abstract

目前利用GNN的推荐系统主要关注用户的正面反馈,而忽略了负面反馈提供的见解。于是我们提出了PANG- GNN,该模型将图神经网络的正面和负面边统一在一起。PANG-GNN首先将原始评分图根据正面和负面反馈划分为两个不同的二分图。接下来分别使用两个独立的嵌入,即感兴趣嵌入和无兴趣嵌入,来捕捉用户的喜恶。为了促进有效信息的传播,我们为正面和负面反馈设计了不同的消息传递机制。此外我们还引入了负向图的扰动,它只包含负向反馈边,用于对比训练。这个扰动在有效去噪负向反馈方面发挥了关键的作用。

Introduction

推荐系统的用户-项目互动图的基本结构可以表示为有向二分图,包括用户的正面反馈和负面反馈。正面反馈表示用户感兴趣,而负面反馈表示用户不感兴趣。引入负面反馈的假设在正面反馈缺失的情况下具有重要意义,是防止向用户提供无关或不必要的推荐的关键手段。
现存的问题
1.现有的图神经网络范例在推荐系统中未能有效的整合负反馈信息,这个现在阻碍了在推荐系统中对有价值的用户反馈的全面利用
2.尽管通过多行为图整合负反馈似乎是一种自然的方法,但是我们观察到,直接整合负反馈并不总会带来好处
面临的挑战
从有符号二部图中学习高阶结构信息面临着网络同质性假设和平衡理论假设的限制。网络同质性假设任认为相似的节点比不相似的节点更有可能互相连接。
但是在有符号图中,同质性并不适用,因为不相似的节点是通过负边连接的。
平衡理论假设“我敌人的敌人是我的朋友”,也就是“同一用户不喜欢的两个项目时相似的”的基本思想并不能准确捕捉到现实情况的复杂性。这些限制需要开发新的方法来利用推荐系统中的负反馈,新的方法需要考虑有符号二部图的独特特征和现实世界中用户的多样兴趣。
本文的观点
关键思想是同时利用正图和负图的高阶结构信息。为了通过整合负反馈来增强推荐,本文提出了一种名为PANE-GNN(unify Positive And Negative Edges in Graph Neural Networks for recommendation)的模型。在该模型中,每个用户或物品被分配为两个嵌入,即感兴趣的嵌入和不感兴趣的嵌入,分别捕捉用户感兴趣的和不感兴趣的。考虑到同质性假设,我们为正图和负图设计了两种消息传递机制,在正图上,进行传播和更新嵌入,用来捕捉用户的兴趣,另一方面,在负图上,传播和更新不感兴趣的嵌入,用来捕捉用户的不感兴趣的五哦。然后了为了生成鲁棒性的嵌入,我们利用负图和其扰动版本进行图对比学习。这种方法增强了模型在图噪声存在的情况下捕捉相关模式的能力。
本文的主要贡献

  • 提出了PANE-GNN的新型的基于GNN的推荐模型。该模型在正图和负图上进行消息传递,有效的整合了正反馈和负反馈,
  • 设计了负图上的对比学习,一种带有不感兴趣分数过滤器的新的排序方法,以及一种双重反馈感知的贝叶斯个性化排序损失,所有这些方法通过整合正反馈和负反馈信号来提高推荐准确性。

Method

PANE的架构图如下:
pihh8m9.png
主要包含三个关键技术设计

  • 在正图\(G_p\)和负图\(G_n\)上进行消息传递
  • 在负图上面进行对比学习
  • 带有不感兴趣分数过滤器的排序
    在消息传递阶段,信息在正图和负图上进行传播。这种解决方案能够利用两个图中存在的结构信息来增强表示学习过程。
    对比学习阶段专注于负图\(G_n\)。通过采用对比学习,该模型对负反馈进行去噪,并生成对图扰动保持不变的鲁棒嵌入
    应用带有不感兴趣分数过滤器的排序方法生成最终的推荐结果。该方法将从正图和负图中学到的嵌入用于对物品进行排序,并过滤掉与用户兴趣不符的物品

正负图消息传递

正图和负图都采用了LightGCN的结构,Light Graph Convolution

负图的对比学习

负反馈比正反馈更容易受到时效性的影响,并且会包含更多的早上。为了解决这个问题,我们将原始的负图进行扰动成一个新的图\(G_d\),并且在两个图之间应用对比学习来减少噪声。这种方法通过将负图的邻接矩阵\(A_n\)应用于边删除来实现,从而得到修改后的邻接矩阵\(A_d\)。掩码矩阵是从参数为p的伯努利分布中随机抽取的。

使用不感兴趣的分数过滤器进行排名

我们利用用户嵌入和项目嵌入的矩阵乘法来计算感兴趣或不感兴趣的分数。用户u的最终推荐结果是通过对元组\(\{(u,i,S_{it},S_{dt})\}\)应用一个排序函数Rank()和一个过滤函数Filter()来确定的
Filter()函数返回一组被过滤过的元组,确保只有得分低于阈值的不感兴趣的项作为推荐,Rank()函数基于\(S_{it}\)对过滤后的元组进行排序。通过结合这些步骤,对用户u的最终推荐结果可以表示为:
\(Result(u)=Rank(Filter(\{(u,i,S_{it},S_{dt})|i\in I\},\delta))\)
这个公式允许生成根据感兴趣分数进行排名的建议,并过滤以排除具有高不感兴趣分数的项目

Optimization

最终的损失函数为
\(L=L_{DB}+\lambda_1\cdot L_{CL}+\lambda_2\cdot L_{reg}\)
其中\(L_{reg}\)表示第0层嵌入的\(L_2\)正则化项
然后\(L_{DB}\)是本文提出的一种双反馈感知的BPR Loss
pih4X5t.png
其中\(\sigma\)是Sigmoid函数,b>1是一个反馈感知系数,b的存在确保了以下优先级顺序:正反馈>负反馈>无反馈。这种优先级意味着积极反馈比消极反馈都被任务比没有反馈更有价值
然后,我们使用InfoNCE损失设计副图上的对比目标
pih5VP0.md.png
这个对比学习目的是增强推荐过程中不感兴趣的嵌入的鲁棒性和鉴别能力。
以下是这个模型的完整流程
pih4YuQ.png

Conclusion

在这项工作中,我们解决了利用负反馈来改进推荐系统的问题。现有文献中的方法主要集中在金考虑正图上的消息传递的基于GNN的推荐模型上。为了克服这个限制并捕捉正负图的高阶结构信息,我们提出了PANE- GNN模型。通过在这两个图上聚合和更新消息,我们使模型能够有效地整合正反馈和负反馈。此外我们在负图上面采用对比学习来减少噪声并过滤掉具有高不感兴趣分数的物品,确保推荐结果的相关性。