SimGCL:Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation
Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation
解决问题
首先,通过实验揭示了基于CL的推荐中,CL通过学习更均匀的用户项目表示可以隐式的减轻受欢迎程度的偏差 (减轻了项目的长尾状况)。增强图有必要,但是发挥了比较小的作用。所以放弃了图增强,而是添加均匀的噪声来构造嵌入空间成为对比视图。
SimGCL模型与结果

实验验证得到,在CL中,起决定性因素的是InfoNCE损失,而不是增强视图。
构建了一个没有图增强的变体,叫做SGL-WA,那么它的CL损失就是:
其中的实验结果是:
根据这个结果我们可以分析得出ND和RW可能会丢弃关键节点和相关边,从而严重扭曲原始图;而ED比WA的效果有不显著的提升,这也说明了增强图确实有一定的效果。

通过以上的分析可以得出,CL的损失可以看作是一种隐含的去偏,这正好应对了推荐数据的长尾特性。所以推测,通过在一定范围内调整学习表征的均匀性,可以达到最佳性能。
受一些启发,我们直接向表示中添加随机噪声,以实现高校增强。形式上,给定一个节点和它在d维嵌入空间中的表示e,我们可以实现一下表示级增强:


因为旋转的角度足够小,所以增强表示其实保留了原表示的大部分信息,同时也保留了一定方差。但是对每个节点表示增加的随机噪声都是不一样的。同样的,我们采用LightGCN作为图编码器来传播节点信息,在每一层上都添加不同尺度的随机噪声,那么可以得到最终的嵌入:
由于噪声是从均匀分布中采样得到的,通过对比增强表示,原始的表示会被规则化为更高的均匀性。那么为了度量这种均匀性,我们使用了平均成对高斯势的对数,即径向基函数的核RBF:

通过此图的结果可以看出,SimGCL可以得到更均匀的结果(y轴的值越小分布越均匀)。也就是说,可以弱化长尾数据的影响。也就是说通过用基于噪声的增广取代图增广,可以更有能力控制学习表示的一致性,从而减少偏差带来的影响。

模型结果说明了我们想法的正确性。

并且根据运行时间可以看出,SimGCL不仅效果好,所用时间还比SGL-ED短得多。

根据这张图可以看出SimGCL的改进是针对于受欢迎程度较低的项目,也确实证明了我们的模型在应对长尾特性数据的可靠性。

这张表证明了我们模型在Baseline中的效果的提升。
模型所用技术与数学知识
自监督学习SSL
层随机噪声替代图增强
评价指标与Baseline
Recall@20 and NDCG@20
Mult-VAE
DNN+SSL
BUIR(具有目标网络和在线网络两个分支结构,并且仅仅使用正样本进行自监督学习)
MixGCL(设计了跳数混合技术,通过嵌入插值合成图协同过滤的难区分的负实例)
代码链接
https://github.com/Coder-Yu/QRec
