Graph Contrastive Learningwith Reinforcement Augmentation

news2024/11/29 10:39:02

IJCAI24
推荐指数: #paper/⭐⭐⭐
领域:图增强+强化学习

胡言乱语:

不愧是清华组的论文,这个实验的目的是利用强化学习去生成对比学习的增强视图。但是,其仍然有一些小问题:其本质实际是对以往的图增强方法套了一层强化学习的壳(因此好像也没有获得oral或者spotlight),个人觉得提升应该不明显。但是明显是一个有趣的方向

个人觉得可以继续做的方向:

  1. 大图+强化学习自增强视图。实际上,理论上应该为每个sample子图自适应生成视图(由于大图的每个子领域的多样性,理论上适用的增强也不同)。因此,在大图上为每个子图分配自适应相应的增强视图
    1. 其结合之前的一篇偏理论分析的文章–Perfect Alignment May be Poisonous to Graph Contrastive Learning会更好。这篇文章探讨了什么样的图增强和增强后的结果相关。个人觉得改文章提出的策略可以自适应的生成增强图
    1. 当然,1和2结合起来会更好(其实对neurips的一篇偏理论文章很感兴趣,但是没有会员资格,提前看不了,有大佬可以提前帮忙下载一篇不)
  2. 问题背景

  3. 1.什么样的视图是好视图?

  4. 良好的增强视图如何变化以提升GCL的性能?我们认为,一个好的增强视图应该保持渐进进化的特征,类似于人类认知中的逐步学习进展,当连续几天学到的东西之间存在联系时,更容易理解和接受新信息。言而总之 会学习的视图是好视图
  5. 2.保存更好的原始图图结构信息

  6. 在特定的图结构中,边沿删除或者节点删除损坏图结构信息。一些GCL使用无需增强的方法例如编码器perturbation去处理这个问题。但是,扰乱率有很难确定。那么,是否有一种方案在不干扰编码器的情况下去保留原始图的基本结构信息?
  7. 解决方法:

10.1. 我们提出动态调整GDA的参数,去自适应学习好视图
10. 我们学习到加权边来构造新视图,而无需删除节点或者边,属性
11.### 但是随之面临的挑战:
11. 现有的图强化学习不适合GDA
12.2. 如何基于图环境设计有效的激活函数仍不确定

贡献:

  1. 我们提出了GRA框架,这是GCL的一种新型GDA,基于强化学习。该框架为GDA制定了马尔科夫决策过程,并保留了原始的图结构信息
    1. 我们设计GA 2C模型作为GRA框架的实例,以实现连续且可学习的图数据增强
  2. 整体框架

  3. 冻结GDA参数的GCL框架

  4. 文章配图
  5. 如图可见,其主要方法就是学习到一个增强视图A来作为对比学习的增强视图。本方法的视图增强部分便以此为参考:
  6. 我们的GRA框架

  7. 文章配图
  8. GRA 框架

10.### Min-max对比学习损失优化以及积累回报函数
min ⁡ ϕ , φ L N C E ( g φ ( f ϕ ( f ϕ ( G i ) ) ,   g φ ( f ϕ ( A ω ~ i ∗ ( G i ) ) ) ) s.t.  ω ~ i ∗ = arg ⁡ max ⁡ ω ~ i R ( ω ~ i ) . \min_{\boldsymbol{\phi},\boldsymbol{\varphi}}\mathcal{L}_{\mathbf{NCE}}(g_{\boldsymbol{\varphi}}(f_{\boldsymbol{\phi}}(f_{\boldsymbol{\phi}}(\mathcal{G}_{i})),\:g_{\boldsymbol{\varphi}}(f_{\boldsymbol{\phi}}(A_{\tilde{\boldsymbol{\omega}}_{i}^{*}}(\mathcal{G}_{i}))))\\\text{s.t. }\tilde{\boldsymbol{\omega}}_{i}^{*}=\arg\max_{\tilde{\boldsymbol{\omega}}_{i}}R(\tilde{\boldsymbol{\omega}}_{i}). ϕ,φminLNCE(gφ(fϕ(fϕ(Gi)),gφ(fϕ(Aω~i(Gi))))s.t. ω~i=argω~imaxR(ω~i).

GDA的马尔科夫决策:

(这部分需要强化学习相关知识,看莫凡的课程就可以了地址链接
P ( G ~ i ( t + 1 ) ∣ G ~ i ( t ) ) = P ( G ~ i ( t + 1 ) ∣ G ~ i ( 1 ) , ⋯   , G ~ i ( t ) ) . \mathbb{P}(\tilde{\mathcal{G}}_i^{(t+1)}|\tilde{\mathcal{G}}_i^{(t)})=\mathbb{P}(\tilde{\mathcal{G}}_i^{(t+1)}|\tilde{\mathcal{G}}_i^{(1)},\cdots,\tilde{\mathcal{G}}_i^{(t)}). P(G~i(t+1)G~i(t))=P(G~i(t+1)G~i(1),,G~i(t)).
GDA的马尔科夫决策可以被三元组定义为:
( S s t a t e , S a c t i o n , R ^ ) (\mathcal{S}_{\mathrm{state}},\mathcal{S}_{\mathrm{action}},\hat{R}) (Sstate,Saction,R^)
我们可以设计奖励函数为:
R ( t ) = − I ( Z i ( t ) , Z ~ i ( t ) ) , Z i ( t ) = g φ ( f ϕ ( G i ( t ) ) ) , Z ~ i ( t ) = g φ ( f ϕ ( G ~ i ( t ) ) ) . R^{(t)}=-\mathcal{I}(Z_i^{(t)},\tilde{Z}_i^{(t)}),\\\boldsymbol{Z}_i^{(t)}=g_{\boldsymbol{\varphi}}(f_{\boldsymbol{\phi}}(\mathcal{G}_i^{(t)})),\quad\tilde{\boldsymbol{Z}}_i^{(t)}=g_{\boldsymbol{\varphi}}(f_{\boldsymbol{\phi}}(\tilde{\mathcal{G}}_i^{(t)})). R(t)=I(Zi(t),Z~i(t)),Zi(t)=gφ(fϕ(Gi(t))),Z~i(t)=gφ(fϕ(G~i(t))).

保存图结构信息通过图重新加权

假设原始的图权重矩阵为 E G i ∈ R N i × N i \boldsymbol{E}_{\mathcal{G}_i}{\in}\mathbb{R}^{N_i\times N_i} EGiRNi×Ni
增强视图就为:
A u g E R W : E G i ↦ E G i ∘ ω ~ i ( t ) , \mathrm{Aug}_{\mathrm{ERW}}:\boldsymbol{E}_{\mathcal{G}_i}\mapsto\boldsymbol{E}_{\mathcal{G}_i}\circ\tilde{\boldsymbol{\omega}}_i^{(t)}, AugERW:EGiEGiω~i(t),
w w w即为加权矩阵。当t=0时, w w w为全一矩阵
举个例子, [ [ 1.0 , 0.6 , 0.8 ] T , [ 0.6 , 1.0 , 0 ] T , [ 0.8 , 0.0 , 1.0 ] T ] [[1.0,0.6,0.8]^\mathrm{T},[0.6,1.0,0]^\mathrm{T},[0.8,0.0,1.0]^\mathrm{T}] [[1.0,0.6,0.8]T,[0.6,1.0,0]T,[0.8,0.0,1.0]T] 即代表(v1,v2)的权重为0.6,(v1,v3)代表权重为0.8

GA2C model

文章配图
那么,显然就有一个问题,是我们如何获得权重矩阵,以及加权后的特征
ω ~ i ( t + 1 ) = Sigmoid ( Reshape ( H i ( t ) ) ) , H i ( t ) = BN ( C C ( R D ( { h v , k ( t ) ∣ v ∈ G ~ i ( t ) } ) ∣ k = 1 , ⋯   , K ) ) , h v , k ( t ) = MLP θ A ( ∑ u ∈ N i ( v ) ∪ { v } [ ω ~ i ( t ) ] v , u ⋅ h u , k − 1 ( t ) d ( v ) ⋅ d ( u ) ) , \begin{aligned}&\tilde{\boldsymbol{\omega}}_i^{(t+1)}=&\text{Sigmoid}(\text{Reshape}(\boldsymbol{H}_i^{(t)})),\\&\boldsymbol{H}_i^{(t)}=&\text{BN}(\mathrm{CC}(\mathrm{RD}(\left\{\boldsymbol{h}_{v,k}^{(t)}|v{\in}\tilde{\mathcal{G}}_i^{(t)}\right\})|k{=}1,\cdots,K)),\\&\boldsymbol{h}_{v,k}^{(t)}=&\text{MLP}_{\theta_A}(\sum_{u\in\mathcal{N}_i(v)\cup\{v\}}\frac{[\tilde{\boldsymbol{\omega}}_i^{(t)}]_{v,u}\cdot\boldsymbol{h}_{u,k-1}^{(t)}}{d(v)\cdot d(u)}),\end{aligned} ω~i(t+1)=Hi(t)=hv,k(t)=Sigmoid(Reshape(Hi(t))),BN(CC(RD({hv,k(t)vG~i(t)})k=1,,K)),MLPθA(uNi(v){v}d(v)d(u)[ω~i(t)]v,uhu,k1(t)),
如图,权重矩阵是通过特征 H H H通过reshape变为的。sigmoid是sigmoid激活函数。得到权重矩阵后,RD是readout函数。CC是拼接层(将1-k层的特征嵌入拼接起来)。BN是batch normalization layer。最后,通过低k层的加权聚合函数,得到嵌入h。
如下的细节:

  1. h v , k ( 0 ) = [ X G i ] v h_{v, k}^{(0)} = \left[ X_{\mathcal{G}_{i}} \right]_{v} hv,k(0)=[XGi]v
    1. GDA参数矩阵 ω ~ i ( t + 1 ) \tilde{\omega}_i^{(t+1)} ω~i(t+1) G ~ i ( t ) \tilde{\mathcal{G}}_i^{(t)} G~i(t)得到
  2. 新视图的生成(相当于DQB的Action函数)

  3. G ~ i ( t + 1 ) = A ω ~ i ( t + 1 ) ( G i ( t ) ) \tilde{\mathcal{G}}_i^{(t+1)}=A_{\tilde{\boldsymbol{\omega}}_i^{(t+1)}}(\mathcal{G}_i^{(t)}) G~i(t+1)=Aω~i(t+1)(Gi(t))
  4. A即Actor的A。
  5. 评估子模型的结构 (相当于期待的输出,有点类似于Q函数)

  6. V是评估重写参数矩阵的Value(价值)
  7. 评估子模型评估 V ~ i ( t + 1 ) \tilde{V}_i^{(t+1)} V~i(t+1)依据关于 G ~ i ( t + 1 ) \tilde{\mathcal{G}}_i^{(t+1)} G~i(t+1)的边权重信息
  8. V ~ i ( t ) = Reshape ( M i ( t ) ) , M i ( t ) = BN ( C C ( R D ( { m v , k ( t ) ∣ v ∈ G ~ i ( t ) } ) ∣ k = 1 , ⋯   , K ) ) m v , k ( t ) = MLP θ C k ( ∑ u ∈ N i ( v ) ∪ { v } [ ω ~ i ( t ) ] v , u ⋅ m u , k − 1 ( t ) d ( v ) ⋅ d ( u ) ) , \begin{aligned}&\tilde{V}_i^{(t)}=\text{Reshape}(\boldsymbol{M}_i^{(t)}),\\&\boldsymbol{M}_i^{(t)}=\text{BN}(\mathrm{CC}(\mathrm{RD}(\left\{\boldsymbol{m}_{v,k}^{(t)}|v{\in}\tilde{\mathcal{G}}_i^{(t)}\right\})|k{=}1,\cdots,K))\\&\boldsymbol{m}_{v,k}^{(t)}=\text{MLP}_{\theta_C}^k(\sum_{u\in\mathcal{N}_i(v)\cup\{v\}}\frac{[\tilde{\boldsymbol{\omega}}_i^{(t)}]_{v,u}\cdot\boldsymbol{m}_{u,k-1}^{(t)}}{d(v)\cdot d(u)}),\end{aligned} V~i(t)=Reshape(Mi(t)),Mi(t)=BN(CC(RD({mv,k(t)vG~i(t)})k=1,,K))mv,k(t)=MLPθCk(uNi(v){v}d(v)d(u)[ω~i(t)]v,umu,k1(t)),
    10.### 我们可以更新如下:
    我们因此可以评价A(advantage-value函数)
    A ~ i ( t ) = Q ~ i ( t ) − V ~ i ( t ) = R ( t + 1 ) + γ V ~ i ( t + 1 ) − V ~ i ( t ) , \tilde{A}_i^{(t)}{=}\tilde{Q}_i^{(t)}-\tilde{V}_i^{(t)}{=}R^{(t+1)}+\gamma\tilde{V}_i^{(t+1)}-\tilde{V}_i^{(t)}, A~i(t)=Q~i(t)V~i(t)=R(t+1)+γV~i(t+1)V~i(t),
    如上,A表示通过动作的实际输出(Q)与期待输出(V)之间的差异。上述部分就是标准的强化学习步骤,如下作者重写了部分。

更新critic

优化目标位最大化:
J C = ∑ t = 1 T ( A ~ i ( t ) ) 2 \mathcal{J}_C=\sum_{t=1}^T(\tilde{A}_i^{(t)})^2 JC=t=1T(A~i(t))2
梯度被重写为:
∇ θ C J C = d d θ C ∑ t = 1 T ( A ~ i ( t ) ) 2 , \nabla_{\theta_C}\mathcal{J}_C=\frac d{d\theta_C}\sum_{t=1}^T(\tilde{A}_i^{(t)})^2, θCJC=dθCdt=1T(A~i(t))2,

Actor的更新

(其就相当于Qlearning的 Q ~ i ( t ) \tilde{Q}_i^{(t)} Q~i(t))
优化目标为:最大化:
J A = ∑ t = 1 T l o g π i ( ω ~ i ( t + 1 ) ∣ G ~ i ( t ) ) ⋅ A ~ i ( t ) \mathcal{J}_{A}=\sum_{t=1}^{T}\mathrm{log}\pi_{i}(\tilde{\omega}_{i}^{(t+1)}|\tilde{\mathcal{G}}_{i}^{(t)})\cdotp\tilde{\boldsymbol{A}}_{i}^{(t)} JA=t=1Tlogπi(ω~i(t+1)G~i(t))A~i(t)
梯度被重写为:
∇ θ A J A = ∑ t = 1 T d log π i ( ω ~ i ( t + 1 ) ∣ G ~ i ( t ) ) d θ A ⋅ A ~ i ( t ) , \nabla_{\theta_A}\mathcal{J}_A=\sum_{t=1}^T\frac{d\text{log}\pi_i(\tilde{\boldsymbol{\omega}}_i^{(t+1)}|\tilde{\mathcal{G}}_i^{(t)})}{d\theta_A}\cdotp\tilde{\boldsymbol{A}}_i^{(t)}, θAJA=t=1TdθAdlogπi(ω~i(t+1)G~i(t))A~i(t),

结果

文章配图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2206195.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vrrp实验

配置Trunk和Access [SW3]int e0/0/1 [SW3-Ethernet0/0/1]p l a [SW3-Ethernet0/0/1]p d v 10 [SW3-Ethernet0/0/1]int e0/0/2 [SW3-Ethernet0/0/2]p l a [SW3-Ethernet0/0/2]p d v 10 [SW3-Ethernet0/0/2]int e0/0/3 [SW3-Ethernet0/0/3]p l a [SW3-Ethernet0/0/3]p d v 20 [S…

postgresql 安装

一、下载 PostgreSQL: File Browser 下载地址 PostgreSQL: File Browser 上传到服务器,并解压 二、安装依赖 yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel 创建postgresql 和目录 useradd …

位运算 -- 力扣

1486. 数组异或操作 1486. 数组异或操作 根据题意,使用参数 n 和 start 生成一个数组,最后返回数组中所有元素按位异或(XOR)后得到的结果。 首先,异或运算的规则是,当同一位的二进制数不同时结果为 1&…

【Golang】Go 语言中的 time 包详解:全面掌握时间处理与应用

在 Go 语言中,time 包提供了强大的时间处理功能,适用于各种场景:获取当前时间、格式化和解析时间、计算时间间隔、设置定时器、处理超时等。在开发过程中,熟练掌握 time 包能够帮助我们轻松处理时间相关的操作,尤其是定…

小程序之获取用户头像与昵称

html 这个是通过一个点击事件进行显示的,下面是效果图,获取头像最关键的是 open-type"chooseAvatar" ,获取昵称最关键的是 type"nickname" ,大家多加注意i哦 <!-- 大的输入调取 --><view class"myis_box" wx:if"{{showMyisBox}}…

做ppt用什么软件好?5个办公必备的ppt工具推荐!

ppt用什么软件做&#xff1f; 相信很多人看到这个&#xff0c;会第一时间想到Microsoft Office套件包含的幻灯片软件Powerpoint&#xff0c;它的名声甚广&#xff0c;以至于某种程度上成了PPT的代名词。 在Powerpoint之外&#xff0c;这些年也陆续诞生了各式各样的PPT软件&am…

CocosCreator 快速部署 TON 游戏:Web2 游戏如何使用 Ton支付

在本篇文章中&#xff0c;我们将继续探讨如何使用 Cocos Creator 开发 Telegram 游戏&#xff0c;重点介绍如何集成 TON 支付功能。通过这一教程&#xff0c;开发者将学会如何在游戏中接入 TON Connect&#xff0c;实现钱包连接、支付以及支付后的校验流程&#xff0c;最终为 W…

YOLO11改进|SPPF篇|引入SPPFCSPC金字塔结构

目录 一、【SPPFCSPC】金字塔结构1.1【SPPFCSPC】金字塔结构介绍1.2【SPPFCSPC】核心代码 二、添加【SPPFCSPC】金字塔结构2.1STEP12.2STEP22.3STEP32.4STEP4 三、yaml文件与运行3.1yaml文件3.2运行成功截图 一、【SPPFCSPC】金字塔结构 1.1【SPPFCSPC】金字塔结构介绍 下图是…

vue后台管理系统从0到1(1)

文章目录 vue后台管理系统从0到1&#xff08;1&#xff09;nvm 下载安装1.卸载nodejs环境2.安装nvm 安装nrm vue后台管理系统从0到1&#xff08;1&#xff09; 第一节主要是先安装我们的工具nvm nodejs版本管理工具&#xff0c;和nrm镜像管理工具 nvm 下载安装 nvm是一款管理…

网络流量预测的学习——持续更新ing

文章目录 前情提要何为网络流量网络流量分析&#xff08;NTA&#xff09;网络流量组成网络流量处理过程 预测网络流量的工具wiresharkbrim&#xff08;zui&#xff09; 机器学习中的网络流量预测参考文章 前情提要 记录一些有关网络流量的学习 何为网络流量 网络流量是指在计…

【D3.js in Action 3 精译_033】4.1.0 DIY 实战:如何通过学习 d3.autoType 函数深度参与 D3 生态建设

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一部分 D3.js 基础知识 第一章 D3.js 简介&#xff08;已完结&#xff09; 1.1 何为 D3.js&#xff1f;1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践&#xff08;上&#xff09;1.3 数据可…

又被特斯拉演了?继续“画饼式”发布Robotaxi,产业链静观其变

9月底的暴涨后&#xff0c;A股资产正经历回调&#xff0c;科技板块变现参差。不过&#xff0c;无人驾驶领域的预期依然很强。 10月10日科技股全线调整之际&#xff0c;无人驾驶板块盘中的巨幅震荡拉升就是典型的预热动作。东箭科技、天龙股份等多只智能驾驶个股涨停。核心驱动…

ACR、PZ、AMC仪表接线说明及通讯协议解析

1.ACR/PZ/AMC多功能表接线说明 三相三线接线说明 使用场合负载是平衡系统&#xff0c;并且没有零线的场合。 1. 端子号1&#xff0c;2为辅助电源&#xff1a; 如上图&#xff0c;接入相电压220V输入。其中辅助电源的火线加装5A保险丝&#xff0c;零线直接接到零排上。 2&am…

iPhone使用指南:如何在没有备份的情况下从 iPhone 恢复已删除的照片

本指南将向您展示如何在没有备份的情况下从 iPhone 恢复已删除的照片。我们所有人在生活中的某个时刻都一定做过一些愚蠢的事情&#xff0c;例如从手机或电脑中删除一些重要的东西。这是很自然的&#xff0c;没有什么可羞耻的。您可能在辛苦工作一天后回来。当突然想看一些照片…

C++开发五子棋游戏案例详解

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

JavaSE——集合3:ArrayList、Vector

目录 一、ArrayList的注意事项 二、ArrayList的扩容机制(重要) 三、Vector底层结构和源码剖析 1.Vector类的定义说明 2.Vector底层也是一个对象数组 3.Vector是线程同步的&#xff0c;即线程安全&#xff0c;Vector类的操作方法带有synchronized 4.在开发中&#xff0c…

obs录屏怎么样?四大优秀录屏工具亲测好用!

录屏需求日盛&#xff0c;接下来我们就来聊聊几款市面上较为热门的录屏软件——福昕录屏大师、转转大师录屏、爱拍录屏以及经典的obs录屏&#xff0c;希望能给寻找合适录屏工具的您带来一些灵感。 福昕录屏大师 直达链接&#xff1a;www.foxitsoftware.cn/REC/ 如果你刚开始…

如何在组织内推广和应用六西格玛设计?

六西格玛设计&#xff08;Design for Six Sigma, DFSS&#xff09;作为一种先进的流程设计和优化方法论&#xff0c;旨在通过设计阶段的创新与严谨&#xff0c;确保产品或服务从一开始就具备高度的质量和客户满意度。本文&#xff0c;深圳天行健企业管理咨询公司将深入探讨如何…

HCIP--以太网交换安全(三)MAC地址漂移防止与检测

MAC地址漂移防止与检测 一、MAC地址漂移防止与检测知识点 1.1MAC地址漂移的概述 MAC地址漂移是指交换机上一个vlan内有两个端口学习到同一个MAC地址&#xff0c;后学习到的MAC地址表项覆盖原MAC地址表项的现象。 1.2.MAC地址漂移的防止方法 &#xff08;1&#xff09;配置…

浸入式电磁流量计如何工作?

磁力如何产生可感应电压&#xff1f; 所有磁流量计都利用法拉第感应定律的指导原理&#xff0c;该定律显示了“表达变化的磁场在电路中感应出电压的定量关系”。 该感应定律可用于测量导体液体&#xff08;如水&#xff09;的速度&#xff0c;而无需移动部件。与其他类型的仪…