首页 > 其他分享 >SimGCL阅读笔记

SimGCL阅读笔记

时间:2023-09-10 19:55:24浏览次数:39  
标签:增强 噪声 性能 bigtriangleup 笔记 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\)为半径的超球面上的向量。半径越小,噪声的粒度越小,第二个约束时噪声向量和原始表征位于同一超象限,避免添加噪声造成过大的语义偏离。所以通过添加噪声,可以看作是使得原始的表征向量在空间中旋转了两个小角度,这样既能保留大部分的语义信息,又能带来语义上的不同

标签:增强,噪声,性能,bigtriangleup,笔记,SimGCL,损失,阅读,均匀
From: https://www.cnblogs.com/anewpro-techshare/p/17691761.html

相关文章

  • 2023-2024-1 20211306 密码系统设计与实现课程学习笔记1
    20211306密码系统设计与实现课程学习笔记1学习任务详情自学教材第1,2章,提交学习笔记知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容“我在学***X知识点,请你以苏格拉底的方式对我进行提问,一......
  • 第一、二章学习笔记
    一、知识点总结第一章Unix和Linux是两个相关但不完全相同的概念。下面是它们的概论知识点总结:Unix:Unix是一种操作系统家族,设计目标是提供一个可移植、多用户、多任务的操作系统。Unix采用了分层架构,将操作系统划分为内核等组件。Unix引入了许多重要的概念和工具,如文件描述符......
  • 《信息安全系统设计与实现》第一周学习笔记
      </d  第一章知识点归纳:1。进程:进程是计算机中正在运行的程序的实例。在操作系统中,每个进程都有自己独立的内存空间和执行环境。进程可以包含一个或多个线程,每个线程执行进程的一部分任务。进程之间是相互独立的,它们通过进程间通信(IPC)来进行数据交换和协调。每个进程......
  • 《信息安全系统设计与实现》第一周学习笔记
    《信息安全系统设计与实现》第一周学习笔记第一章摘要本章介绍了Unix的历史,包括贝尔实验室开发的Unix早期版本以及其他版本。此外,还介绍了Linux的开发及其各种发行版本,列出了适用于Linux的开发的各种硬件平台和虚拟机,并展示了如何将UbuntuLinux同时安装到MicrosoftWindows......
  • 学习笔记1
    学习笔记1第一章本书目标强化编程背景知识动态数据结构的应用进程概念和进程管理并发编程定时器和定时功能信号、信号处理和进程间的通信文件系统TCP/IP和网络编程关于UnixAT&TUnixBerkeleyUnixHPUnixIBMUnixSunUnix关于LinuxDebainLinuxUbuntu......
  • 第1、2章学习笔记
    教材第一、二章读书笔记主要内容第一章主要学习了Unix的历史、开发及其各种发行版,列出了适用于Linux的各种硬件平台和虚拟机,揭示了常用的命令和文件系统组织、文件类型。第二章主要学习了基于GUI的编辑器,展示了如何在命令和GUI模式下使用EMACS编辑器来边集、编译和执行C语言......
  • 学习笔记1
    1.知识点归纳①Ubuntu②如何安装虚拟机③如何下载VMwareWorkstation④Unix/Linux命令2.问题与解决过程......
  • 经典接雨水-刷题笔记
    leetcode42按行求(测试用例通过,但超时)classSolution{publicinttrap(int[]height){intres=0;intn=height.length;intmaxh=0;for(inti=0;i<n;i++){maxh=Math.max(maxh,height[i]);}for(intr......
  • 20211421《信息安全系统设计与实现》第一周学习笔记
    知识点总结第一章关于本书研究Unix/Linux系统编程的专著,涵盖Unix/Linux的所有基本组件,包括进程管理、并发编程、定时器和时钟服务、文件系统、网络编程和MySQL数据库系统。本书目标强化学生编程背景知识动态数据结构的应用进程概念和进程管理并发编程定时器和定时功能......
  • 学习笔记1
    ChatGpt的苏格拉底挑战:有关内核:linux系统的核心是内核。内核控制着计算机系统的所有硬件和软件,在必要时分配硬件,并根据需要执行软件。内核主要负责以下4种功能。·系统内存管理·软件程序管理·硬件设备管理·文件系统管理  有关GCC:GNUCompilerCollection,编译器集合......