当前位置:网站首页>【GCN-RS】Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for RS (SIGIR‘22)
【GCN-RS】Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for RS (SIGIR‘22)
2022-07-25 11:11:00 【chad_lee】
Are Graph Augmentations Necessary? Simple Graph Contrastive Learning for Recommendation (SIGIR’22)

这篇文章抨击图对比学习不一定要扩展图结构,SGL那种方法复杂且收益微弱:

文章在SGL的基础上,测试不扩增图结构,直接对比学习:
L c l = ∑ i ∈ B − log exp ( z i ′ ⊤ z i ′ ′ / τ ) ∑ j ∈ B exp ( z i ′ ⊤ z j ′ ′ / τ ) \mathcal{L}_{c l}=\sum_{i \in \mathcal{B}}-\log \frac{\exp \left(\mathbf{z}_{i}^{\prime \top} \mathbf{z}_{i}^{\prime \prime} / \tau\right)}{\sum_{j \in \mathcal{B}} \exp \left(\mathbf{z}_{i}^{\prime \top} \mathbf{z}_{j}^{\prime \prime} / \tau\right)} Lcl=i∈B∑−log∑j∈Bexp(zi′⊤zj′′/τ)exp(zi′⊤zi′′/τ)
我曾经也做过实验,把这个公式的分子置为1,即不考虑扩增图结构后表征依然相似,NDCG指标反而升的更高,所以SGL的确实不太有用。
文章提出了一种非常简单的方法,直接在embedding上做扰动,不动图结构:

e i ′ = e i + Δ i ′ e i ′ ′ = e i + Δ i ′ ′ \begin{array}{r} e_{i}^{\prime}=e_{i}+\Delta_{i}^{\prime} \\ e_{i}^{\prime \prime}=e_{i}+\Delta_{i}^{\prime \prime} \end{array} ei′=ei+Δi′ei′′=ei+Δi′′
其中 Δ i ′ , Δ i ′ ′ \Delta_{i}^{\prime },\Delta_{i}^{\prime \prime} Δi′,Δi′′分别是随机扰动, Δ = Δ ˉ ⊙ sign ( e i ) , sign ( x ) , x < 0 \Delta=\bar{\Delta} \odot \operatorname{sign}\left(e_{i}\right), \operatorname{sign}(\mathrm{x}), x<0 Δ=Δˉ⊙sign(ei),sign(x),x<0则输出-1,否则1。 Δ ˉ ∼ U ( 0 , 1 ) \bar{\Delta} \sim U(0,1) Δˉ∼U(0,1)。因此这两个扰动可以看作在原始embedding的方向,各自伸缩了一些。然后带入对比学习loss,就可以用了。
在实现上就更简单暴力了,只是在每层embedding加扰动而已:
E ′ = 1 L ( ( A ~ ( 0 ) + Δ ( 1 ) ) + ( A ~ ( A ~ E ( 0 ) + Δ ( 1 ) ) + Δ ( 2 ) ) ) + … + ( A ~ L E ( 0 ) + A ~ L − 1 Δ ( 1 ) + … + A ~ Δ ( L − 1 ) + Δ ( L ) ) ) \begin{array}{r} \mathbf{E}^{\prime}=\frac{1}{L}\left(\left(\tilde{\mathbf{A}}^{(0)}+\Delta^{(1)}\right)+\left(\tilde{\mathbf{A}}\left(\tilde{\mathrm{A}} \mathrm{E}^{(0)}+\Delta^{(1)}\right)+\Delta^{(2)}\right)\right)+\ldots \\ \left.+\left(\tilde{\mathbf{A}}^{L} \mathbf{E}^{(0)}+\tilde{\mathbf{A}}^{L-1} \Delta^{(1)}+\ldots+\tilde{\mathbf{A}} \Delta^{(L-1)}+\Delta^{(L)}\right)\right) \end{array} E′=L1((A~(0)+Δ(1))+(A~(A~E(0)+Δ(1))+Δ(2)))+…+(A~LE(0)+A~L−1Δ(1)+…+A~Δ(L−1)+Δ(L)))
边栏推荐
- Experimental reproduction of image classification (reasoning only) based on caffe resnet-50 network
- PHP one server sends pictures to another. Curl post file_ get_ Contents save pictures
- brpc源码解析(四)—— Bthread机制
- 'C:\xampp\php\ext\php_ zip. Dll'-%1 is not a valid Win32 Application Solution
- JS中的函数
- Multi-Label Image Classification(多标签图像分类)
- 阿里云技术专家秦隆:可靠性保障必备——云上如何进行混沌工程
- JS流程控制
- JS interview question: handwriting throttle function
- JVM performance tuning methods
猜你喜欢

What is the global event bus?

Brpc source code analysis (VI) -- detailed explanation of basic socket

Application and innovation of low code technology in logistics management

dirReader.readEntries 兼容性问题 。异常错误DOMException

WIZnet嵌入式以太网技术培训公开课(免费!!!)

pycharm连接远程服务器ssh -u 报错:No such file or directory

Transformer变体(Sparse Transformer,Longformer,Switch Transformer)

PHP curl post x-www-form-urlencoded

MySQL historical data supplement new data

【对比学习】Understanding the Behaviour of Contrastive Loss (CVPR‘21)
随机推荐
Make a reliable delay queue with redis
Risks in software testing phase
微星主板前面板耳机插孔无声音输出问题【已解决】
JS operator
【USB设备设计】--复合设备,双HID高速(64Byte 和 1024Byte)
浅谈低代码技术在物流管理中的应用与创新
硬件连接服务器 tcp通讯协议 gateway
W5500在处于TCP_Server模式下,在交换机/路由器网络中无法ping通也无法通讯。
Hardware peripherals =maixpy3
JaveScript循环
知识图谱用于推荐系统问题(MVIN,KERL,CKAN,KRED,GAEAT)
session和cookie有什么区别??小白来告诉你
Signal and slot mechanism ==pyqt5
Onenet platform control w5500 development board LED light
教你如何通过MCU配置S2E为TCP Client的工作模式
brpc源码解析(一)—— rpc服务添加以及服务器启动主要过程
程序员送给女孩子的精美礼物,H5立方体,唯美,精致,高清
Teach you how to configure S2E as the working mode of TCP client through MCU
Brief description of model deployment
brpc源码解析(七)—— worker基于ParkingLot的bthread调度