Graph Contrastive Learning with Adaptive Augmentation

2023-05-16

摘要

对比学习在无监督图表示学习中取得了很好的效果,大部分图对比学习首先对输入图做随机增强生成两个视图然后最大化两个视图表示的一致性。其中,图上的增强方式是非常重要的部分鲜有人探索。我们认为数据增强模式应该保留图固有的属性和结构,可以使模型学到对于不重要的结点和边扰动不敏感的表示信息。但目前的方法大多采用均质的增强方法如均匀的去边,或扰动特征,只能达到次优效果。本文借助先验信息从拓扑和语义角度引入自适应的增强策略。具体来说,在拓扑角度,采用基于结点的中心性来衡量连接结构的重要性的方式设计增强模式;在特征维度,给不重要的结点特征加入更多噪声来扰动结点特征,强化模型识别潜在语义信息。

引言

之前的增强方式主要有两个缺点。首先,在结构或者特征角度的简单增强不足以生成多样的邻居,很难在对比目标函数中优化;其二是之前的工作了结点和边影响的差异性。比如均匀的丢弃边的化,一些重要的边丢弃会恶化结果。如果在边移除的增强方式中,给重要的边小的概率,不重要的边大的概率,在学习时可以使模型自适应的忽略噪声和不重要的边,学到重要的模式。

本文设计了一个自适应增强的图对比学习方法,首先通过随机扰动生成两个相关的视图,然后最大化这两个视图上结点表示的互信息。我们设计了一个联合的,自适应的数据增强模式,通过分别在拓扑级移除边和在结点属性角度做特征遮掩来为结点在不同视图提供多样的上下文信息,优化对比目标。
在这里插入图片描述

模型

在这里插入图片描述

GCA按照常规图对比学习的模式,最大化不同视图表示的一致性。对于每一个结点i,所有视图中该结点的表示作为正样本,其他结点的表示视作负样本。借鉴InfoNCE,在多视图图对比学习中,对于每对正样本(ui, vi)我们定义对级目标函数为
在这里插入图片描述
θ(u,v)=s(g(u), g(v)),其中s(., .)为余弦相似度,g(.)是一个非线性映射映射提升判别函数表达能力,我们采用两层感知机实现。在所有视图中,其他结点都可以视作负样本。因此,来自两个视图即inter-view和intra-view。由于两个视图是对称的,因此最终的目标函数定义为所有正样本对的平均值即
在这里插入图片描述

这个训练算法总结如下
在这里插入图片描述

Adaptive Graph Augmentation

对比学习希望学到扰动无关的信息,而在GCA中,期望学到重要的结构和 不变的特征。在扰动中,给不重要的结点或特征赋值较高的丢弃率或者遮盖率,我们在随机扰动的视图上强调重要的结构和属性,使模型保留基础的拓扑和语义模式。

1)Topology-level augmentation
在拓扑上的增强中,通过直接对输入的图随机丢弃一些边来增强。具体来说就是按照一定的概率从边集E中采样一个子集E’
在这里插入图片描述

Puv表示移除的概率,E’为生成视图的边集。其中,Puv反映边(u,v)的重要程度,增强函数会丢弃不重要的边同时在增强视图中保留重要的连接结构。

结点中心性是常用的度量结点重要性的方法,我们使用边两端的结点的中心性来衡量边的中心性。在给定结点的中心性的衡量方法f(.)后,边的中心性定义为两个邻接结点中心性值的平均即Wuv=(f(u) + f(v))/2。在有向图中,直接用尾结点的中心性表示边的中心性。

在得到边的中心性后,通过转化可以得到边对应的概率。由于结点有不同阶数的连接强度,因此需要归一化操作。其中Pe,Pt都是超参,分别控制边的移除概率和整体的丢弃比例,丢弃太多会过度扰动图结构。
在这里插入图片描述
在这里插入图片描述

2)Node-atttibute-level augmentation
类似于图像处理中的椒盐噪声,我们通过用0随机遮掩一部分结点特征来给结点添加噪声。具体来说,首先采样一个随机向量m,他的每个维度独立且服从伯努利分布。然后生成的结点特征为
在这里插入图片描述
在这里插入图片描述
类似于拓扑级的增强,pfi应该反映结点特征第i个维度的重要性。我们假设,在重要的结点中频繁出现的特征维度应该是重要的,并按照如下方式定义特征维度i的权重。
对于任意结点u,结点特征为稀疏one-hot编码,第i维特征的权重计算如下
在这里插入图片描述

其中第一项Xui是二值的,表示第i为特征是否在结点u中出现;第二项表示结点的中心性,衡量每个出现的特征的重要程度。直观的解释,在引用网络中,结点的每个维度的特征表示 一个关键字。在重要的文章中出现频繁的关键字应该是重要的。

对于结点特征为稠密,连续的情况时,Xui表示第i个维度的特征值。由于我们无法记录每个one-hot编码值的出现次数,因此我们转向度量第i个维度特征值的大小。通过特征值的绝对值计算权重
在这里插入图片描述

最后,类似于拓扑结构的增强,我们使用标准化操作计算特征重要性的概率
在这里插入图片描述
在这里插入图片描述

GCA中的每个视图都是在拓扑结构和结点特征两个空间联合做增强得到的。GCA会生成两个视图为对比学习提供多样的上下文环境。
在这里插入图片描述
在这里插入图片描述
其中,两个视图的概率分别表示为
在这里插入图片描述

注意,所有的中心性和权重都是在原始输入图中计算的。

实验

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Graph Contrastive Learning with Adaptive Augmentation 的相关文章

  • .NET(或 MFC)的高速图形控件?

    我需要编写一个数字示波器类型的应用程序 有很多很棒的静态绘图控件 但我需要一些可以绘制每秒处理 4000 个样本的 16 条轨迹的东西 有人知道 NET 的高速图形控件吗 我什至会选择 MFC 因为它可以封装到 NET 控件中 谢谢您的帮助
  • 如何显示 matplotlib 饼图中的实际值

    我有一个饼图 绘制从 CSV 文件中提取的值 当前显示值的比例 百分比显示为 autopct 1 1f 有没有办法显示每个切片的数据集中表示的实际值 Pie for Life Expectancy in Boroughs import pa
  • 用于带有嵌套子图的图的 r 包? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个用于图形 网络的 r 包 它可以处理嵌套子图 Graphviz 做到了这一点 但只提供可
  • 代表 Git 存储库的数学结构是什么

    我正在学习 Git 如果我能描述一下代表 Git 存储库的数学结构 那就太好了 例如 它是一个有向无环图 它的节点代表提交 它的节点有代表分支等的标签 每个节点最多一个标签 没有标签使用两次 我知道这个描述不正确 我只是想解释我正在寻找的内
  • d3力定向布局-链接距离优先

    在 d3 中使用力导向布局 如何使链接距离成为优先事项 同时仍然保持良好的图形布局 如果我指定动态链接距离 但保留默认费用 则我的图形距离会因费用函数而发生一些变形 并且不再是准确的距离 但是 如果我删除电荷 图表将如下所示 任何建议表示赞
  • 数据聚合和缓存:如何按时间间隔快速绘制大型时间序列数据集的图表

    我有一个巨大的时间序列数据集 我想绘制图表 时间序列可以追溯到 5 年前 从后端的角度来看 以各种分辨率 间隔 显示这些数据的常用方法是什么 本质上我想绘制这样的数据图表 https bitcoinwisdom com markets bi
  • 用于计算有向图上非循环路径数量的快速算法

    简而言之 我需要一个fast计算简单有向图中有多少条非循环路径的算法 By simple我的意思是没有自环或多重边的图 Apath可以从任何节点开始 并且必须在没有传出边的节点上结束 一条路径是acyclic如果没有边出现两次 我的图 经验
  • Facebook Workplace API 身份验证

    我正在开发一个与 Facebook 的 Workplace 集成的 Web 应用程序 我花了一整天的时间试图弄清楚如何使用 OAUTH 身份验证机制进行成员身份验证 由于我拥有应用程序访问令牌 我能够获取用于模拟的成员访问令牌 但是 我如何
  • GNUPLOT:尝试提高质量

    如何提高 gnuplot 的质量 看起来这是一个非常低分辨率的图像 这是我正在使用的文件的内容 linkage plot set terminal pdf set out linkage pdf set title Distribution
  • 使用 Haskell 绘制图表

    是否可以使用 Haskell 绘制一个简单的图表 你们中的任何人都可以告诉我该怎么做吗 该图应至少包含 3 个点 Haskell 图表 https github com timbod7 haskell chart似乎不错 The wiki
  • 如何在 R 中的多图形环境中画一条线?

    举一个非常简单的例子 mfrow c 1 3 每个图都是不同的直方图 我将如何画一条水平线 类似于abline h 10 所经过的all3位数 也就是说 甚至是它们之间的边距 显然 我可以为每个图形添加一条 abline 但这不是我想要的
  • 图中使用 K 个反向边的所有最短路径

    假设我有一个有向图 G V E 其边的权重为正整数 我需要做的是使用最多 K 整数 个反向边找到所有顶点之间的最短路径 我的意思是 如果我们在边 u 处 并且只有一条从 v 到 u 的有向边 只要我们没有在这条路径上使用 K 个反向边 我们
  • 用于高效大规模图遍历的数据库

    我有一个大型二分有向图数据集 约 2000 万个元素 在当前的使用中 我运行的遍历算法每次运行约 500 000 个节点 这些算法有效 但历史上运行的是从文本文件加载到内存的数据 文本文件似乎是一个不好的方法 所以我将数据作为邻接列表传输到
  • 直接来自数据的马尔可夫模型图(makovchain 或 deemod 包?)

    我想读取一堆因子数据并从中创建一个可以很好地可视化的转换矩阵 我发现了一个非常好的软件包 称为 heemod 它与 diagram 一起工作得不错 对于我的第一个快速而肮脏的方法 我运行了一段 Python 代码来获取矩阵 然后使用这个 R
  • d3 树 - 有相同孩子的父母

    我一直在将代码从 JIT 转换为 D3 并使用树布局 我已经复制了代码http mbostock github com d3 talk 20111018 tree html http mbostock github com d3 talk
  • 在 X 轴刻度上渲染 HTML

    我想在 D3 图表的 x 轴上渲染 HTML 基本上 我希望轴上的每个标签都是到数据中另一列的超链接 我试过了 x domain data map function d return a href d Name a 但它根本不起作用 我得到
  • Python 3.x 中的绘图

    在Python 2 6中 我使用matplotlib制作了一些简单的图表 但是 它与 Python 3 1 不兼容 有哪些替代模块可以完成相同的事情而不非常复杂 您说您想创建一些简单的图表 但没有真正说明您想要多简单或哪种类型的图表 只要它
  • 求 Petersen 子图中的哈密顿路径

    我开始使用 IDE Jupyter Python 3 6 并出现了一个问题 我必须通过IDE绘制Petersen子图中的哈密顿路径 但我不知道该怎么做 我显示有关该图的信息 彼得森图 https en wikipedia org wiki
  • ggplot2可以在一个图例中分别控制点大小和线大小(线宽)吗?

    一个使用的例子ggplot2绘制数据点组和连接每组均值的线 并使用相同的映射aes for shape并为linetype p lt ggplot mtcars aes gear mpg shape factor cyl linetype
  • 如何生成类似github的影响图?

    是否有一些程序 或者我错过的一些神奇的 git 插件 可以从 git 存储库获取影响图或类似的东西 而无需通过 github 就数据收集而言 我可以生成图表 我不确定从哪里开始编写自己的代码 我假设有一些标志我可以传递给 git log 来

随机推荐

  • vmware ESXI 裸金属架构 本地服务器 开启Intel VT-x(虚拟化技术)

    我想使用vmware ESXI 安装的WIN10虚拟机中装vmware软件再装win10 即虚拟机中套虚拟机 基于工作要求某个XXX项目需要开启VPN远程到客户内网进行维护 客户对网络审计比较严 安装VPN的那台机子识别码要上传服务器 基本
  • 对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。

    因为是转载文章 在此标明出处 xff0c 以前有文章是转的没标明的请谅解 xff0c 因为有些已经无法找到出处 xff0c 或者与其它原因 如有冒犯请联系本人 xff0c 或删除 xff0c 或标明出处 因为好的文章 xff0c 以前只想收
  • 一元正态分布

    d import numpy as np import matplotlib pyplot as plt from scipy stats import norm 生成100个正态分布数据 xff0c 均值为1 xff0c 标准差为2 da
  • CaptureLayer的另外一个调用例子TaskSnapshot

    在前一篇讨论中 xff0c 我们查找了系统中调用captureLayers的地方 1323 public static GraphicBuffer captureLayers IBinder layerHandleToken Rect so
  • visualsvn server 无法访问url

    IIS 发布网站 本机能访问 其它人访问不了 看一下服务端 VisualSVN Server 的服务有没有启动 x A 34 H g6 L N s 管理 服务 VisualSVN Server 备注 做为开发机子 手动优化自己的电脑吧 否则
  • JS日期加减,日期运算

    因为是转载文章 在此标明出处 xff0c 以前有文章是转的没标明的请谅解 xff0c 因为有些已经无法找到出处 xff0c 或者与其它原因 如有冒犯请联系本人 xff0c 或删除 xff0c 或标明出处 因为好的文章 xff0c 以前只想收
  • jQuery easyui 选中特定的tab

    获取选中的 Tab 1 获取选中的 tab panel 和它的 tab 对象 2 var pp 61 39 tt 39 tabs 39 getSelected 39 3 var tab 61 pp panel 39 options 39 t
  • Server Error in '/' Application. 解决办法

    Server Error in 39 39 Application Access to the path 39 E NetWeb2 Content upFile BClientExcel 大客户部通讯录导入 xlsx 39 is denie
  • easyui-datagrid 数据出不来(样式引起的bug)

    今天任务是需要从另一个项目中将某几个功能页面移植到现有的项目中 这是比较繁琐的功能 理解要移植功能的逻辑 xff08 业务逻辑 xff0c 涉及到的表和存储过程 xff09 页面样式 这么是我遇到的一个问题之一 xff1b 我需要展现一个e
  • c#切割字符串几种方法

    1 xff0c 按单一字符切割 string s 61 34 abcdeabcdeabcde 34 string sArray 61 s Split 34 c 34 oreach string i in sArray Console Wri
  • 动态链接库与静态链接库的区别

    静态链接库与动态链接库都是共享代码的方式 xff0c 如果采用静态链接库 xff0c 则无论你愿不愿意 xff0c lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了 但是若使用 DLL xff0c 该 DLL 不必被包含在最终
  • ssm——小学期实训总结

    实训总结 经过这两个星期短暂的学习 xff0c 我学习了ssm的框架搭建与web前端设计基础 在第一个星期 xff0c 老师着重为我们讲了框架的原理 搭建与运用 xff1b 而在第二个星期 xff0c 重点则转移到了小组对项目的开发与研究上
  • 节点中心性

    文章目录 度中心性 Degree Centrality 特征向量中心性 Eigenvector Centrality Katz中心性 Katz Centrality Katz index PageRank中心性PageRank算法 接近中心
  • 机器学习面试知识点总结

    文章目录 计算学习理论过拟合与欠拟合过拟合欠拟合 偏差与方差最大似然估计与贝叶斯估计极大似然估计贝叶斯决策论贝叶斯估计 特征工程与特征选择特征工程逐层归一化特征选择 模型融合融合策略 评估方法与评价指标评估方法评价指标 优化算法正则化深度模
  • Multi-view graph convolutional networks with attention mechanism

    摘要 传统的图卷积网络关注于如何高效的探索不同阶跳数 hops 的邻居节点的信息 但是目前的基于GCN的图网络模型都是构建在固定邻接矩阵上的即实际图的一个拓扑视角 当数据包含噪声或者图不完备时 xff0c 这种方式会限制模型的表达能力 由于
  • An Empirical Study of Graph Contrastive Learning

    摘要 图对比学习在图表示学习领域树立了新的范式 xff0c 不需要人工标注信息 但对GCL的分析却寥寥无几 本文通过分析一般化的GCL范式的各个部分包括增强函数 xff0c 对比模式 xff0c 对比目标和负采样技术 xff0c 然后分析各
  • Data Augmentation

    自监督深度学习模型的精确性严重依赖于训练时数据的多样性和数据量 模型要想在更复杂任务上有较好的效果一般会有大量的隐藏单元 一般在训练过程中训练隐藏单元越多需要的数据越多 xff0c 即任务复杂度与参数量与需要的数据量成正比 由于训练复杂任务
  • Semi-Supervised and Self-Supervised Classification with Multi-View Graph Neural Networks

    摘要 图神经网络在图结构数据中取得了很好的效果但是大多数的模型使用的还是叫浅层的结构 xff0c 当模型层数加深时很容易过平滑 本文基于多视图来聚合更多的信息 我们首先设计两个互补的视图来描述全局结构和节点特征相似性 xff0c 然后使用注
  • GCC: Graph Contrastive Coding for Graph Neural Network Pre-Training

    摘要 目前图表示学习在许多任务上取得了很好的效果但是都是关注于具体领域的并不具有迁移性 本文借鉴预训练思想 xff0c 设计了一个自监督图神经网络框架来在多个网络中捕获一般化的网络拓扑结构属性 我们设计的预训练任务是在多个网络之间判别子图实
  • Graph Contrastive Learning with Adaptive Augmentation

    摘要 对比学习在无监督图表示学习中取得了很好的效果 xff0c 大部分图对比学习首先对输入图做随机增强生成两个视图然后最大化两个视图表示的一致性 其中 xff0c 图上的增强方式是非常重要的部分鲜有人探索 我们认为数据增强模式应该保留图固有