SimGCL阅读笔记

SimGCL论文阅读笔记

​ 本篇文章主要讲述了图增强虽然有效果,但是起到的作用很小,然后提出了基于添加均匀的噪声来创建对比视图。这样准确性和效率都会优于原来的方法

1.引言部分

​ 尽管现在基于结构扰动的图增强具有着很不错的效果,但是性能提升的原因还是不清楚,并且有研究发现,即使非常稀疏的图增强(dropout rate达到了0.9)也会带来很可观的性能提高,因为巨大的dropout rate会导致原始信息的巨大损失和高度倾斜的图结构

​ 然后该论文做了没有图增强的实验来进行性能比较,实验结果表明,没有图增强时,性能也有着与图增强相似的效果,之后经过研究,该论文发现对推荐性能提高真正重要的是CL的损失,而不是图增强。优化对比损失InfoNCE能够学习更加均匀的用户/项目表示,这对减轻popular bias上起到了重要的作用。但是图增强并不是完全无用的,因为原始图的适当扰动有助于学习对干扰因子不变的表示

​ 于是,该论文提出了一个方法,放弃了图增强,而是在原始表示中添加随机均匀的噪声来进行数据增强,该方法可以平滑的调节均匀性,并且实现起来比较容易

2.推荐中的图对比学习调查

​ 作者使用了四种方法来进行性能的对比,在不使用图增强的的情况下,性能甚至好于使用了ND或RW的图增强的方法,可能的原因是这两个方法可能会丢弃关键的节点或边,极大的扭曲了原始的图,这种情况下图的增强几乎没有什么可学习的不变性,而鼓励他们的一致性可能会产生负面影响

​ 其余研究发现,优化对比损失强化了两个特征,正对特征的对齐以及单位超球面上归一化特征分布的一致性。然后作者使用t-SNE可视化几种方法学习到的embedding,结果发现,LightGCN会显示出高度聚集的特征,而其余的SGL的变体方法学习到的分布会均匀很多

pPcYH4f.png

之后作者通过对损失函数的梯度的分析,来解释了为什么会出现这种状况,BPRloss的损失函数的梯度为

\(\bigtriangledown_{e_u} -\eta(1-s)(e_i-e_j)\)

\(s=\sigma(e_u^Te_i-e_u^Te_j)\)

当i是一个很流行的项目时,用户的embedding将不断更新到i的方向。消息传递机制进一步加剧了聚合问题并且会导致表示退化

而CL的损失函数为

pPcYqC8.png

优化CL的损失函数实际上就是最小化不同节点的嵌入之间的余弦相似性,从而导致更加均匀的分布

经过分析,作者得出了一个结论,分布的均匀性是对SGL的推荐性能有决定性影响的关键因素,而不是图增强。因为一个更均匀的表示分布可以保持节点的内在特征,提高泛化能力。

但是还需要注意,仅通过最小化CL损失将会获得较差的性能,这就意味着均匀性和性能之间的正相关只在一定范围内保持,对一致性的过度追求会忽略交互对之间的紧密型和相似的用户/项目之间的紧密型,从而会损害推荐的效果

3. SimGCL结构详解

作者提出的简单的数据增强的方式如下:

\(e'_i=e_i+\bigtriangleup'_i,e''=e_i+\bigtriangleup''_i\)

需要满足的条件为

  • $|\bigtriangleup|_2=\epsilon $
  • \(\bigtriangleup=\bar{ \bigtriangleup}\odot sign(e_i)\)

其中,$\bar{ \bigtriangleup}\in\mathbb{R}^d\sim U(0,1) $

pPctJrd.png

其中第一个约束控制了噪声的粒度,等价于以\(\epsilon\)为半径的超球面上的向量。半径越小,噪声的粒度越小,第二个约束时噪声向量和原始表征位于同一超象限,避免添加噪声造成过大的语义偏离。所以通过添加噪声,可以看作是使得原始的表征向量在空间中旋转了两个小角度,这样既能保留大部分的语义信息,又能带来语义上的不同

posted @ 2023-09-10 19:47  ANewPro  阅读(165)  评论(0)    收藏  举报