[KDD24]图对比推荐论文Unifying Graph Convolution and Contrastive Learning in Collaborative Filtering简介

Unifying Graph Convolution and Contrastive Learning in Collaborative Filtering

论文链接:https://arxiv.org/abs/2406.13996

代码链接:GitHub - wu1hong/SCCF: [KDD'24] Unifying Graph Convolution and Contrastive Learning in Collaborative Filtering

简介

基于图(Graph)的模型以及对比学习(contrastive learning,CL)对协同过滤产生了巨大的促进效应。虽然现有的协同过滤工作将这些方法融入了模型设计,但似乎对于它们的基本规则缺乏有深度的研究。因此,本文旨在通过一个理论框架将图卷积(基于图的方法的核心操作)与对比学习建立联系。作者发现对比损失具有捕获高阶连通性的能力。基于此,作者进一步展示出在图方法中的的图卷积层对于建立高阶连通性并不是至关重要的,而且可能会导致过平滑。基于这些发现,作者提出了简化的对比协同过滤 Simple Contrastive Collaborative Filtering (SCCF)

联合图卷积和对比学习

对比损失定义

在对比学习中,给定锚节点(anchor),定义正样本和负样本至关重要。在协同过滤中,用户的正样本通常是用户交互过的物品,而没有交互历史的物品被视为负样本。在协同过滤中最广泛使用的对比损失是Sampled SoftMax (SSM) :

 其中D是交互集合,u和i分别代表用户和物品,\mathbf e_u是用户u的嵌入表示。为了更加直观的分析,作者提出一个可替换的损失函数,其直接从可观测数据中最大化联合分布的最大似然:

在上式中,对于正样本对(u, i), 考虑在\mathcal D_U\mathcal D_I的所有可能组合为负样本。这种负样本策略等同于无限batch大小的batch负样本策略。此外,分母部分可以通过关注唯一的用户-物品对和他们的共现频率来简化。这将导致简化分母,以减少交互对的冗余。

学习对比损失动态

一般地,对比损失强调两个属性:对齐(alignment)和均匀(uniformity)。对齐旨在特征空间内最小化用户-物品交互对之间的距离;相反地,均匀旨在增加负样本对的距离,因此阻止嵌入表示聚集在一个点。更进一步,可以将上面的简化SSM损失函数分解如下:

 对齐损失的推导如下:

其中\mathcal N(u)表示用户u的邻居集合,物品同理。因此,第t+1步的地图更新如下:

 其中\gamma是学习率。上式从侧面反映了一种信息传递机制,阐明了嵌入如何在交互图中沿着边传播。上式对应的矩阵形式如下:

 其中\mathbf E(t)是第t步的用户、物品拼接表示。相似的,对于均匀损失,可以有类似的分析:

其中Z是原本分母的代替: 。均匀的嵌入更新的矩阵形式如下:

其中如果(i, j)是用户-物品或物品-用户交互对,则:

 如果(i, j)是用户-用户对或物品-物品对,则对应值为0。均匀的更新过程阐述了另一种信息传递机制,其考虑对应边的权重。现在可以结合两种更新过程:

 其中

对比损失和图卷积的等价性

这一部分展示嵌入的更新过程等同于图卷积。首先需要引入一些重要的命题:

基于定义,一个低通滤波器包含一个图信号的低频部分,而抑制高频部分。低频部分对应于与较小特征值相关的特征向量,因此导致更加平滑的信号。因此,对图信号应用低通滤波器会得到更平滑的结果,而高通滤波器则相反。在确立了这些基本命题之后,作者得出了一个定理,阐明了对比损失和图卷积之间的等价性:

根据定理3.3,可以推断出对齐损失在函数上表现为图卷积,以提高用户-项目交互图上嵌入的平滑度。相反,均匀性损失,作为图卷积来操作,以降低嵌入在图上嵌入的平滑度。

总结

基于上述分析,可以浅显地描述对比损失和图卷积的对等性。此外,对齐损失代表在交互图上图卷积平滑嵌入,而均匀损失对应分散嵌入。

高阶连通性建模

高阶连通性(High-Order Connectivity (HOC) )建模对于协同过滤而言至关重要,并且是基于图的方法的核心动机。一般地,HOC建模需要节点嵌入之间的相似性应该反应他们在图上的紧密性。传统的矩阵分解(MF)或贝叶斯个性化排序(BPR)通常被视为不足以建模HOC。主要的限制来自于这些方法首要关注从未交互物品中区分交互物品,而在很大程度上忽视了对未观察到的实体之间的潜在关系进行明确建模。为了缓解这种限制,早期的基于图的方法应用随机游走来驱动HOC建模,后续的方法则更加侧重于图卷积网络(GCN)。

来自于对比损失的高阶连通性

考虑到\mathbf E(0)是在第0步随机初始化的嵌入表,通过迭代执行对比损失(对齐和均匀),可以得到第T步的嵌入:

在一定程度上,\mathbf E(T)反应了一个T层的GCN模型。此外,T相当大,这意味着在嵌入上应用了大量的图卷积运算。这样的操作促进了节点之间的消息交换。通过大规模卷积,不仅来自节点的信息会传播到其高阶邻居,而且消息交换也会反复进行,直到达到平衡。如果我们假设嵌入有效地捕获了高阶连通性,那么可以合理地预期,单个节点的嵌入可以吸收来自其高阶邻居的信息。虽然传统的基于图的方法利用卷积层来吸收邻居信息,但对比学习在其学习过程中隐含地包含了卷积。从这个角度来看,我们主张对比学习赋予嵌入能力来模拟高阶连通性。

图卷积层的重要性

考虑到对比学习可以捕获高阶连通性,作者提出问题:CF中真的需要图卷积层设计吗?

为了回答这个问题,作者将LightGCN(顶级的基于图的推荐方法)应用于DirectAU(直接优化对齐和均匀损失的推荐方法):

作者对比了原始的嵌入模型(LightGCN没有线性滤波器)和LightGCN(含有不同层),以使用最近提出的对比损失DirectAU来检查它们各自的性能。结果如下表所示:

在表 1中,包含两组实验。第一组是编号0,1,2,3,他们在训练和推理阶段的层数一样;另一组是4,5,6,他们在两个阶段的层数不一致。在第1组中,原始模型(编号0)略微优于其他设置(编号1,2,3)。而在第二组中,1层推理的模型优于三层。这些结果 展示增强层数并不是总是增强性能。

这就引出了一个关键问题:图卷积层对协同过滤来说是不可或缺的吗?最近基于图的协同过滤模型在很大程度上受到了GNN的启发。而图卷积层的缺点之一是这种操作是离散的,这意味着它无法调节学习过程中平滑度的增加。这种缺乏控制导致了过度平滑、嵌入更平滑,但性能更差。相比之下,对比学习通过逐步更新提供了一种更可控的替代方案,同时防止了由于负样本导致的崩溃。从这个角度来看,对比学习似乎是建模HOC的一种更直观的选择。值得注意的是,作者并不反对任何编码器的设计,但确实警告了图卷积层的滥用。

Simple Contrastive Collaborative Filtering

基于 前面的分析,作者提出了简化的对比协同过滤(SCCF)模型,其基于原始嵌入模型,没有嵌入传播,并且包含一个细化的对比损失函数。该方法的一个显著优点就是时间复杂度。给定一个batch的用户-物品交互对集合,SCCF的损失如下:

其中m是batch大小,\mathcal B是从原始数据中均匀抽样的交互对,而\mathcal B_N是这个batch内所有可能的用户-物品交互对(即该batch中所有存在的用户、物品的排列组合)。相似度函数sim定义如下:

其中\tau是温度系数。有趣的是,上式可以解释为两个指数核的混合。该损失与原始的对比损失的细微差异如下:首先,引入了温度系数,第二,从内积到余弦相似性的细微差别;其三,引入二阶余弦相似性以超越单纯的线性。

首先,引入温度系数是至关重要的,因为其可以调节两个样本之间的分散性。第二,余弦相似度可以视为基于L2归一化的嵌入内积。这种归一化不仅是一种正则,而且对梯度施加限制。此外,L2归一化在内积和均方误差(MSE)之间建立连接:

给定softmax函数的不变特性,归一化的内积与MSE一致。最后,引入二阶余弦相似度致力于注入非线性,不同核函数(相似性函数)的混合可以提高性能。 

实验

主对比实验结果如下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值