论文阅读——LIGHTGCL: SIMPLE YET EFFECTIVE GRAPH CONTRASTIVE LEARNING FOR RECOMMENDATION

论文阅读——LIGHTGCL: SIMPLE YET EFFECTIVE GRAPH CONTRASTIVE LEARNING FOR RECOMMENDATION

LIGHTGCL:简单而有效的图对比学习推荐

摘要

图神经网络(GNN)是一种基于图的推荐系统的强大学习方法。最近,与对比学习相结合的 GNN 在推荐方面表现出了优异的性能,其数据增强方案旨在处理高度稀疏的数据。尽管取得了成功,大多数现有的图对比学习方法要么在用户-项目交互图上执行随机增强(例如,节点/边缘扰动),要么依赖基于启发式的增强技术(例如,用户聚类)来生成对比视图。我们认为这些方法不能很好地保留内在的语义结构,并且很容易受到噪声扰动的影响。在本文中,我们提出了一种简单而有效的图对比学习范式 LightGCL,它可以缓解这些损害基于 CL 推荐器的通用性和鲁棒性的问题。我们的模型专门利用奇异值分解进行对比增强,这使得能够通过全局协作关系建模进行无约束的结构细化。在几个基准数据集上进行的实验表明,我们的模型的性能比最先进的模型有了显着的提高。进一步的分析证明了 LightGCL 针对数据稀疏性和流行度偏差的鲁棒性的优越性。模型的源代码 https://github.com/HKUDS/LightGCL 。

1 INTRODUCTION

为了解决数据稀疏性问题,对比学习在推荐中被用于增强数据。对比学习增强用户和项目表示的主要思想是通过将定义的正实例对与负实例对应物进行对比来研究生成的嵌入视图之间的一致性。

对比推荐系统的局限性:

  • 随机扰动的图增强可能会丢失有用的结构信息,从而误导表示学习。
  • 启发式引导表示对比方案的成功很大程度上建立在视图生成器的基础上,这限制了模型的通用性并且容易受到嘈杂的用户行为的影响。
  • 当前大多数基于 GNN 的对比推荐器都受到过度平滑问题的限制,导致无法区分的表示。

对此,作者提出了一种简单而有效的增强方法LightGCL。在模型中,图增强由奇异值分解(SVD) 引导,不仅提取用户-项目交互的有用信息,而且还将全局协作上下文注入对比学习的表示对齐中。

贡献:

  • 作者通过设计一个轻量级且强大的图对比学习框架来增强推荐系统,以解决与该任务相关的已确定的关键挑战。
  • 作者提出了一种有效且高效的对比学习范式LightGCL,用于图增强。通过注入全球协作关系,可以减轻不准确的对比信号带来的问题。
  • 与现有的基于 GCL 的方法相比,作者的方法表现出更高的训练效率。
  • 对多个真实世界数据集的大量实验证明了LightGCL 的性能优势。深入分析证明了LightGCL的合理性和鲁棒性。

2 RELATED WORK

作者对基于图对比学习的推荐和基于自监督学习的推荐做了相关工作的简述,大家感兴趣的话可以自行去文中学习。

3 METHODOLOGY

在这里插入图片描述

如图所示,作为提取局部图依赖关系的 GCN 主干(图上半部分)的补充,SVD 引导的增强(图下半部分)通过全局协作关系分析来增强图对比学习,以学习有效的用户和项目表示。

3.1 LOCAL GRAPH DEPENDENCY MODELING

作为协同过滤的常见做法,我们为每个用户 u i u_i ui 和项目 v j v_j vj 分配一个嵌入向量 e ( u ) i , e ( v ) j ∈ R e(u)^i , e(v)^j \in \Bbb R e(u)i,e(v)jR ,其中 d d d 是嵌入大小。所有用户和项目嵌入的集合定义为 E ( u ) ∈ R I × d E(u) \in \Bbb R^{I×d} E(u)RI×d E ( v ) ∈ R J × d E(v) \in R^{J×d} E(v)RJ×d,其中 I I I J J J 分别是用户和项目的数量。借鉴Xia et al (2022b),作者采用两层GCN来聚合每个节点的邻居信息。在 l l l层,聚合过程表示如下:
z i , l ( u ) = σ ( p ( A ~ i , : ) ⋅ E l − 1 ( v ) ) , z j , l ( v ) = σ ( p ( A ~ : , j ) ⋅ E l − 1 ( u ) ) (1) \boldsymbol{z}_{i, l}^{(u)}=\sigma\left(p\left(\tilde{\mathcal{A}}_{i,:}\right) \cdot \boldsymbol{E}_{l-1}^{(v)}\right), \quad \boldsymbol{z}_{j, l}^{(v)}=\sigma\left(p\left(\tilde{\mathcal{A}}_{:, j}\right) \cdot \boldsymbol{E}_{l-1}^{(u)}\right)\tag 1 zi,l(u)=σ(p(A~i,:)El1(v)),zj,l(v)=σ(p(A~:,j)El1(u))(1)

Lianghao Xia, Chao Huang, Yong Xu, Jiashu Zhao, Dawei Yin, and Jimmy Xiangji Huang. Hypergraph contrastive collaborative filtering. In Proceedings of the 45th International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR 2022, Madrid, Spain, July 11-15, 2022., 2022b.

其中 z i , l ( u ) 和 z j , l ( v ) z^{(u)}_{i,l} 和 z^{(v)}_{j,l} zi,l(u)zj,l(v) 表示用户 u i u_i ui 和项目 v j v_j vj 的第 l l l 层聚合嵌入。 σ ( ⋅ ) σ(·) σ() 表示负斜率为 0.5 的 LeakyReLU。 A ~ \tilde{\mathcal{A}} A~ 是归一化邻接矩阵,我们在其上执行边缘 dropout,表示为 p ( ⋅ ) p(·) p(),以减轻过度拟合问题。我们在每一层中实现残差连接以保留节点的原始信息,如下所示:
e i , l ( u ) = z i , l ( u ) + e i , l − 1 ( u ) , e j , l ( v ) = z j , l ( v ) + e j , l − 1 ( v ) (2) e_{i, l}^{(u)}=z_{i, l}^{(u)}+e_{i, l-1}^{(u)}, \quad e_{j, l}^{(v)}=z_{j, l}^{(v)}+e_{j, l-1}^{(v)}\tag 2 ei,l(u)=zi,l(u)+ei,l1(u),ej,l(v)=zj,l(v)+ej,l1(v)(2)
节点的最终嵌入是其所有层嵌入的总和,用户 u i u_i ui 和项目 v j v_j vj 的最终嵌入之间的内积预测 u i u_i ui 对 $v_j $的偏好:
e i ( u ) = ∑ l = 0 L e i , l ( u ) , e j ( v ) = ∑ l = 0 L e j , l ( v ) , y ^ i , j = e i ( u ) T e j ( v ) (3) \boldsymbol{e}_{i}^{(u)}=\sum_{l=0}^{L} \boldsymbol{e}_{i, l}^{(u)}, \quad \boldsymbol{e}_{j}^{(v)}=\sum_{l=0}^{L} \boldsymbol{e}_{j, l}^{(v)}, \quad \hat{y}_{i, j}=\boldsymbol{e}_{i}^{(u) \mathrm{T}} \boldsymbol{e}_{j}^{(v)}\tag 3 ei(u)=l=0Lei,l(u),ej(v)=l=0Lej,l(v),y^i,j=ei(u)Tej(v)(3)

3.2 EFFICIENT GLOBAL COLLABORATIVE RELATION LEARNING

为了通过全局结构学习增强图对比学习的推荐能力,作者为 LightGCL 配备了 SVD 方案(Rajwade 等人,2012 年;Rangarajan,2001 年),以从全局角度有效地提取重要的协作信号。具体来说,我们首先对邻接矩阵 A \mathcal{A} A 执行 SVD,即 A = U S V T \mathcal{A} = USV^T A=USVT。这里, U / V U / V U/V 是一个 I × I / J × J I × I / J × J I×I/J×J 正交矩阵,列是 A \mathcal{A} A 的行-行/列-列相关矩阵的特征向量。 $S $是一个 I × J I × J I×J 对角矩阵,存储 A \mathcal{A} A 的奇异值。最大的奇异值通常与矩阵的主成分相关。因此,我们截断奇异值列表以保留最大的 q q q 值,并用截断矩阵重建邻接矩阵为 $ \hat{\mathcal{A}} = U_qS_qV^T_q$,其中 U q ∈ R I × q U_q \in \Bbb R^{I×q} UqRI×q 和$ V_q \in \Bbb R^{J×q}$ 分别为 U U U V V V的前 q q q 列。 S q ∈ R q × q S_q \in \Bbb R^{q×q} SqRq×q q q q 个最大奇异值的对角矩阵。

Ajit Rajwade, Anand Rangarajan, and Arunava Banerjee. Image denoising using the higher order singular value decomposition. IEEE Transactions on Pattern Analysis and Machine Intelligence, 35(4):849–862, 2012.

Anand Rangarajan. Learning matrix space image representations. In International Workshop on Energy Minimization Methods in Computer Vision and Pattern Recognition, pp. 153–168. Springer, 2001.

重构矩阵 A ^ \hat{\mathcal{A}} A^ 是邻接矩阵 A \mathcal{A} A 的低秩近似,它满足 r a n k ( A ^ ) = q rank(\hat{\mathcal{A}}) = q rank(A^)=q。基于 SVD 的图结构学习有两个优点 :首先,它通过识别对用户偏好表示重要且可靠的用户-项目交互来强调图的主要组成部分。其次,生成的新图结构通过考虑每个用户-项目对来保留全局协作信号。给定 A ^ \hat{\mathcal{A}} A^,在每层重建的用户-项目关系图上执行消息传播:
g i , l ( u ) = σ ( A ^ i , : ⋅ E l − 1 ( v ) ) , g j , l ( v ) = σ ( A ^ : , j ⋅ E l − 1 ( u ) ) (4) \boldsymbol{g}_{i, l}^{(u)}=\sigma\left(\hat{\mathcal{A}}_{i,:} \cdot \boldsymbol{E}_{l-1}^{(v)}\right), \quad \boldsymbol{g}_{j, l}^{(v)}=\sigma\left(\hat{\mathcal{A}}_{:, j} \cdot \boldsymbol{E}_{l-1}^{(u)}\right)\tag 4 gi,l(u)=σ(A^i,:El1(v)),gj,l(v)=σ(A^:,jEl1(u))(4)
然而,在大型矩阵上执行精确的 SVD 成本非常高,这使得处理大规模用户-项目矩阵变得不切实际。所以作者采用 Halko 等人提出的随机 SVD 算法,其主要思想是首先用低秩正交矩阵来近似输入矩阵的范围,然后对这个较小的矩阵执行 SVD。
U q ^ , S q ^ , V q ^ T = A p p r o x S V D ( A , q ) , A ^ S V D = U q ^ , S q ^ , V q ^ T (5) \hat{U_q},\hat{S_q},\hat{V_q}^T = ApproxSVD(\mathcal{A},q),\quad \hat A_{SVD}=\hat{U_q},\hat{S_q},\hat{V_q}^T \tag 5 Uq^,Sq^,Vq^T=ApproxSVD(A,q),A^SVD=Uq^,Sq^,Vq^T(5)

Nathan Halko, Per-Gunnar Martinsson, and Joel A Tropp. Finding structure with randomness: Probabilistic algorithms for constructing approximate matrix decompositions. SIAM review, 53 (2):217–288, 2011.

其中 q q q 是分解矩阵所需的秩,并且 U ^ q ∈ R I × q , S ^ q ∈ R q × q , V ^ q ∈ R J × q \hat{U}_q \in \Bbb R^{I×q}, \hat {S}_q \in \Bbb R^{q×q},\hat {V}_q \in \Bbb R^{J×q} U^qRI×q,S^qRq×q,V^qRJ×q U q 、 S q 、 V q U_q、S_q、V_q UqSqVq 的近似版本。因此,重写了等式(4)中的消息传播规则。 近似矩阵和嵌入的集体表示如下:
G l ( u ) = σ ( A ^ S V D E l − 1 ( v ) ) = σ ( U ^ q S ^ q V ^ q T E l − 1 ( v ) ) ; G l ( v ) = σ ( A ^ S V D E l − 1 ( u ) ) = σ ( U ^ q S ^ q V ^ q T E l − 1 ( u ) ) (6) G_l^{(u)}=\sigma (\hat{\mathcal{A}}_{SVD}E^{(v)}_{l-1})=\sigma (\hat{U}_q \hat{S}_q \hat{V}_q^TE^{(v)}_{l-1}); \quad G_l^{(v)}=\sigma (\hat{\mathcal{A}}_{SVD}E^{(u)}_{l-1})=\sigma (\hat{U}_q \hat{S}_q \hat{V}_q^TE^{(u)}_{l-1}) \tag 6 Gl(u)=σ(A^SVDEl1(v))=σ(U^qS^qV^qTEl1(v));Gl(v)=σ(A^SVDEl1(u))=σ(U^qS^qV^qTEl1(u))(6)
其中 G l ( u ) 和 G l ( v ) G^{(u)}_l 和 G^{(v)}_l Gl(u)Gl(v) 是从新生成的图结构视图编码的用户和项目嵌入的集合。请注意,我们不需要计算和存储大型稠密矩阵 A ^ S V D \hat {A}_{SVD} A^SVD。相反,我们可以存储低维的 $\hat{U}_q、\hat{S}_q 和 \hat{V}_q 。通过 S V D 在预处理阶段预先计算 。通过SVD在预处理阶段预先计算 。通过SVD在预处理阶段预先计算(\hat{U}_q \hat{S}_q)和( \hat{V}_q\hat{S}_q)$,提高了模型效率。

3.3 SIMPLIFIED LOCAL-GLOBAL CONTRASTIVE LEARNING(简化)

传统的GCL方法(例如SGL和SimGCL)通过构造两个额外的视图来对比节点嵌入,而从原始图(主视图)生成的嵌入不直接参与InfoNCE损失。采用这种繁琐的三视图范例的原因可能是用于增强图的随机扰动可能会给主视图嵌入提供误导性信号。然而,在我们提出的方法中,增强图视图是通过全局协作关系创建的,这可以增强主视图表示。因此,我们通过直接对比 InfoNCE 损失中的 SVD 增强视图嵌入 g i , l ( u ) g^{(u)}_{i,l} gi,l(u) 与主视图嵌入 z i , l ( u ) z^{(u)}_{i,l} zi,l(u) 来简化 CL 框架:
L s ( u ) = ∑ i = 0 I ∑ l = 0 L − l o g e x p ( s ( z i , l ( u ) , g i , l ( u ) ) / τ ) ∑ i ′ = 0 I e x p ( s ( z i , l ( u ) , g i ′ , l ( u ) ) / τ ) ) (7) \mathcal L^{(u)}_s = \sum^{I}_{i=0} \sum^{L}_{l=0} -log\frac{exp(s(z^{(u)}_{i,l},g^{(u)}_{i,l})/\tau)}{\sum^{I}_{i'=0}exp(s(z^{(u)}_{i,l},g^{(u)}_{i',l})/\tau))} \tag 7 Ls(u)=i=0Il=0Llogi=0Iexp(s(zi,l(u),gi,l(u))/τ))exp(s(zi,l(u),gi,l(u))/τ)(7)
其中 s ( ⋅ ) s(·) s() τ \tau τ分别代表余弦相似度和温度。项目的 InfoNCE 损失 L s ( v ) \mathcal{L}^{(v)}_s Ls(v) 以相同的方式定义。为了防止过度拟合,作者在每个批次中实施随机节点丢弃,以排除某些节点参与对比学习。如方程式(8)所示,对比损失与推荐任务的主要目标函数联合优化(其中 y ^ i , p s \hat{y}_{i,p_s} y^i,ps y ^ i , n s \hat{y}_{i,n_s} y^i,ns 表示用户 i i i 的一对正负项目的预测分数):
L = L r + λ 1 ⋅ ( L s ( u ) + L s ( v ) ) + λ 2 ⋅ ∥ Θ ∥ 2 2 ; L r = ∑ i = 0 I ∑ s = 1 S m a x ( 0 , 1 − y ^ i , p s + y ^ i , n s ) (8) \mathcal L = \mathcal L_r + \lambda_1·(\mathcal L_s^{(u)} + \mathcal L_s^{(v)}) + \lambda_2·\lVert\Theta\lVert^2_2;\quad \mathcal L_r = \sum^I_{i=0} \sum^S_{s=1} max(0,1-\hat{y}_{i,p_s}+\hat{y}_{i,n_s}) \tag 8 L=Lr+λ1(Ls(u)+Ls(v))+λ2Θ22;Lr=i=0Is=1Smax(0,1y^i,ps+y^i,ns)(8)

4 EVALUATION\

数据集: Yelp、Gowalla、ML_10M、Amazon-book、Tmall

评估指标: Recall@N、NDCG@N

基线方法: DGCF、HyRec、LightGCN、MHCN、SGL、SimGRACE、GCA、HCCF、SHT、SimGCL、NCF、GCCF、GraphCL、SAIL、GRACE、AutoGCL

在这里插入图片描述

还有一些模型的数据在文章的附录中

RQ1: How does LightGCL perform on different datasets compared to various SOTA baselines?
  • Contrastive Learning Dominates. 从表中可以看出,与传统的基于图的(GCCF、LightGCN)或基于超图的(HyRec)模型相比,最近实现对比学习的方法(SGL、HCCF、SimGCL)表现出一致的优越性。它们的表现也比其他一些自我监督学习方法(MHCN)更好。这可以归因于 CL 学习均匀分布嵌入的有效性
  • Contrastive Learning Enhancement. 本文的方法始终优于所有对比学习基线。作者将这种性能提升归因于通过注入全局协作上下文信号来有效增强图对比学习。其他基于对比学习的推荐器(例如,SGL、SimGCL 和 HCCF)很容易受到噪声交互信息的影响,并产生误导性的自我监督信号。
RQ2: How does the lightweight graph contrastive learning improve the model efficiency?

SVD 重建图的低秩性质和简化的 CL 结构使我们的 LightGCL 的训练非常高效。我们与三个竞争基线相比,分析了模型的预处理和每批次训练复杂性,如表 2 所示。

在这里插入图片描述

RQ3: How does our model perform against data sparsity, popularity bias and over-smoothing?

为了评估我们的模型在缓解数据稀疏性方面的稳健性,我们根据稀疏用户的交互程度对稀疏用户进行分组,并在 Yelp 和 Gowalla 数据集上计算每组的 Recall@20。从图中可以看出,HCCF 和 SimGCL 的性能在不同数据集上有所不同,但我们的 LightGCL 在所有情况下都始终优于它们。特别是,我们的模型在极其稀疏的用户组(< 15 次交互)上表现得非常好,因为这些用户的 Recall@20 并不比整个数据集低很多(在 Gowalla 上甚至更高)。

在这里插入图片描述

我们通过保留用户独特的偏好模式和用户间协作依赖性来说明模型在学习适度分散的嵌入分布方面的有效性。我们从 Yelp 和 Gowalla 中随机抽取 2,000 个节点,并使用 t-SNE 将它们的嵌入映射到二维空间。这些嵌入的可视化如图 4 所示。我们还计算了嵌入的平均距离 (MAD),总结于表 3 中。

在这里插入图片描述

在这里插入图片描述

非 CL 方法(即 LightGCN、MHCN)的嵌入分布在嵌入空间中表现出难以区分的簇,这表明解决过度平滑问题的局限性。相反,现有的基于 CL 的方法倾向于学习 :i)过度均匀的分布,例如 Yelp 上的 SGL 学习大量均匀距离的嵌入云,没有清晰的社区结构来很好地捕获用户之间的协作关系; ii)高度分散的小簇,簇内部存在严重的过度平滑问题,例如,Gowalla 上 SimGCL 的嵌入似乎是分散的颗粒簇,其中的嵌入高度相似。与它们相比,我们的方法可以识别清晰的社区结构以捕获协作效果,而每个社区内的嵌入则合理分散以反映用户特定的偏好。我们模型学习到的特征的 MAD 也位于两种类型的基线之间,如表 3 所示。

RQ4: How does the local-global contrastive learning contribute to the performance of our model?(消融)
回答我们是否可以使用不同的矩阵分解方法为对比学习提供指导的问题。

两种变体(用其他矩阵分解方法替换了近似 SVD 算法):CL-MF 采用预先训练的 MF 生成的视图; CL-SVD++ 利用 SVD++考虑了隐式用户反馈,如表4所示。

通过从MF或SVD++中提取的信息,该模型能够取得令人满意的结果,表明使用矩阵分解来增强CL的有效性以及我们提出的框架的灵活性。然而,采用预训练的 CL 组件不仅繁琐且耗时,而且在性能方面也不如利用近似 SVD 算法。

在这里插入图片描述

RQ5: How do different parameter settings affect our model performance?(超参数)
  • q q q 决定了我们模型中 SVD 的等级。实验表明,较小的 q q q即可获得满意的结果。具体来说,如图 5 所示,我们观察到 q = 5 q = 5 q=5 足以保留用户-项目交互图的重要结构。
  • 如图 6 所示,对于 Yelp、Gowalla 和 ML-10M 三个数据集,模型的性能在 λ 1 = 1 0 − 7 λ_1 = 10^{−7} λ1=107 时达到峰值。可以注意到,范围为 [ 1 0 − 6 , 1 0 − 8 ] [10^{−6}, 10^{−8}] [106,108] λ 1 λ_1 λ1 通常可以带来性能提升。
  • 图7表明,在0.1到10的不同 τ τ τ选择范围内,模型的性能相对稳定,而 τ τ τ值的最佳配置因数据集而异。

在这里插入图片描述
在这里插入图片描述


这篇论文看的有些快,里面的实验做的非常丰富有许多的结论,感兴趣的朋友可以看一下这篇文章。我觉得这篇文章在推荐中使用对比学习方法提供了新的思路,可以借鉴学习其数据增强的方法。

  • 27
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值