论文《Universal Graph Convolutional Networks》笔记

【UGCN】论文提出一个基本问题,即是否不同的网络结构属性应该采用不同的传播机制。通过实验发现,对于完全同配性、完全异配性和随机性的网络,1-hop、2-hop和k-nearest neighbor(kNN)邻居分别更适合作为信息传播的邻域。为了应对现实世界网络的复杂性,作者提出了一种新的通用GCN框架——UGCN。该框架通过多类型卷积同时提取1-hop、2-hop和kNN网络的信息,然后设计一种判别式聚合来充分融合这些信息,以满足给定的学习目标。

本文发表在2021年NeurIPS会议上,作者学校:天津大学、北京邮电大学、美国伊利诺伊香槟大学,引用量:80。

NeurIPS会议简介:全称Conference on Neural Information Processing Systems(神经信息处理系统大会),机器学习和计算神经科学领域的顶级学术会议,CCF A。

查询会议:

  • 会伴:https://www.myhuiban.com/

  • CCF deadline:https://ccfddl.github.io/

原文和开源代码链接:

  • paper原文:https://openreview.net/forum?id=MSXDyfli9vy
  • 开源代码:https://github.com/jindi-tju/U-GCN

0、核心内容

图卷积网络(GCNs)旨在通过聚合相邻节点来获得节点的表示,在处理图(网络)数据上的各种分析任务方面显示出了巨大的能力。GCNs的显著性能通常依赖于网络的同质性假设,而这种假设并不能总是得到满足,因为异配性或随机性在现实世界中也普遍存在。这就引出了一个基本问题:具有不同结构属性的网络是否应该采用不同的传播机制?

在本文中,我们首先进行了一个实验研究。令人惊讶的是,我们发现传播机制实际上存在分割规则,即1跳、2跳和k最近邻(kNN)邻居分别更适合于具有完全同质性、完全异配性和随机性的网络邻域。然而,现实世界的网络是复杂的,并且可能呈现出不同的结构属性,例如,由同质性主导的网络可能包含少量的随机性。那么,我们能否合理地利用这些分割规则来设计一个独立于网络结构假设的通用传播机制呢?

为了应对这一挑战,我们开发了一个新的通用的GCN框架,即UGCN。首先引入了多类型卷积,同时从1跳、2跳和kNN网络中提取信息,然后设计了一个判别聚合来充分融合它们,以达到给定的学习目标。

大量的实验证明了UGCN优于最先进的技术。

(引自摘要)

1、展开研究
① 本文贡献

现有方法从传播机制的角度来看,仍然缺乏深刻的理解。

作为本研究的第一个贡献,我们进行了实验,分析了GCN在具有不同结构性质的网络中的传播机制。令人惊讶的时,我们的实验清楚地表明,对于具有完全同质性、完全异配性和随机性的网络,1跳、2跳和k最近邻(kNN)邻居分别更适合作为信息传播的邻域。这意味着对GCNs当前传播机制的描述能力有限,具有不同结构特性的网络可能需要采用不同的传播机制。

事实上,虽然这些分割规则似乎能够以一种理想的方式选择合适的节点作为邻域,但现实世界的网络是复杂的,并且可能呈现出不同的属性,例如,由同质性主导的网络可能包含少量的随机性或异配性。一个自然的问题是,“我们能否合理利用这些分割规则来设计一个独立于网络结构假设的通用传播机制?”

为了解决这一挑战,我们提出了一个新的通用的GCN模型,即UGCN,针对一般的网络数据。其中心思想是,我们通过充分利用来自1跳、2跳和KNN邻居的信息来学习节点嵌入,并自适应地融合它们,为给定的学习目标获得更深层次的相关信息。具体来说,我们首先引入了一种多类型的卷积机制。它使用1跳网络(即原始输入网络)、2跳网络和由1跳、2跳和kNN邻居构建的网络分别进行直接信息传播,并对每个网络采用节点级注意机制,提取三种特定的嵌入。然后,我们进行区分聚合来了解这三种嵌入的重要性,从而提取出最相关的信息,如节点分类。

在一系列基准数据集上的大量实验证明了UGCN优于一些先进的技术。

② 观察&动机

在这里,我们提出了一个简单而直观的案例研究来说明和分析不同传播机制下的GCN变化的性能。其主要思想是将GCN应用于具有不同结构属性的网络,利用1跳节点、2跳节点和k最近邻(kNN)邻居,它们通常被认为是网络中节点分类的有效邻域,分别实现信息的传播。然后,我们将检查GCN在这些情况下的性能。通用传播机制应该在一般网络数据中提供良好的结果。然而,如果与其他两种情况相比,性能急剧下降,这将表明具有不同结构属性的网络可能需要使用不同的传播机制。

实验设置:

  • 我们在具有不同性质的Newman人工网络上进行了实验。该网络由128个节点组成,分为4类,每个节点平均有 z i n z_{in} zin个边(即类内边)连接到同一类的节点, z o u t z_{out} zout个边(即类间边)连接到其他类的节点,且 z i n + z o u t = 16 z_{in}+z_{out}=16 zin+zout=16。请注意,这里我们利用两个指标: ρ i n = z i n / 32 ρ_{in}=z_{in}/32 ρin=zin/32 ρ o u t = z o u t / 96 ρ_{out}=z_{out}/96 ρout=zout/96来确定网络属性,即 ρ i n > ρ o u t ρ_{in}>ρ_{out} ρin>ρout ρ i n = ρ o u t ρ_{in}=ρ_{out} ρin=ρout ρ i n < ρ o u t ρ_{in}<ρ_{out} ρin<ρout分别是指具有同配性、随机性和异配性的网络。
  • 对于节点属性,我们为每个节点生成一个4h维的二进制属性,形成4个属性簇,对应于4个类。

图1:GCN在Newman网络上分别使用不同的传播机制:1-hop、2-hop、kNN邻居作为邻域的性能。

在这里插入图片描述

如图1所示,对于具有较强同配性的网络(如 ρ o u t = 0.075 ρ_{out}=0.075 ρout=0.075),使用1-hop邻居更容易获得较高的精度。然而,随着类间边的增加,精度迅速降低。这主要是由于同质性假设阻止了GCN有效地融合信息。另一方面,对于具有强异配性的网络(如 ρ o u t = 0.165 ρ_{out}=0.165 ρout=0.165),令人惊讶的是,使用2-hop邻居作为邻域的GCN精度(如83.15%)远高于使用1-hop邻居的GCN精度(如32.85%)。由于2-hop邻居的同质性比例可能随着类间边的增加而增加,因此使用2-hop邻居的GCN在一定程度上更有效。有趣的是,我们可以发现利用kNN的GCN更容易获得稳定精度,如71.46%。特别是,它比在完全随机网络上(如 ρ o u t = 0.125 ρ_{out}=0.125 ρout=0.125)使用1-hop和2-hop邻居要高得多。

**结论:**本案例研究表明,目前GCN的传播机制对于一般的网络数据并不普遍,但我们可以发现在几种特殊情况下(如完全随机网络)存在规律。这促使我们认为,具有不同结构属性的网络可能需要采用不同的传播机制。

我们利用GCN对具有完全同配性、随机性和完全异配性的Newman网络进行了额外的实验,以发现更适合的传播机制来选择有价值的节点作为邻域,从而提高不同网络的网络性能。一个简单的策略是学习针对不同的GCN使用不同类型邻域的节点的网络嵌入(即1-hop、2-hop和kNN邻居),并将嵌入连接到一个向量,以便使用鉴别聚合机制(discriminative aggregation mechanism)来学习节点分类的重要性。我们在图2中显示了注意力值作为训练迭代次数的函数。

图2:一个例子,说明了三种不同类型的邻居即1-hop、2-hop和kNN邻居)的重要性随着网络属性的变化而变化。A-C的上半部分分别表示具有完全同配性、随机性和完全异配性的网络;而下半部分表示注意值(attention values)作为相应网络中训练迭代次数的函数。

在这里插入图片描述

  • 观察A:具有完全同配性的网络利用1-hop邻居进行直接信息传播,可以获得更好的性能。
  • 观察B:利用kNN进行直接信息传播,可以获得更好的性能。
  • 观察C:具有完全异配性的网络利用2-hop邻居进行直接信息传播,可以获得更好的性能。

虽然具有不同结构属性的网络利用不同的传播机制提供更好的性能,但现实世界的网络是复杂的,可能表现出不同的特性,例如,以同配性为主的网络可能包含少量的异配性。因此,探索一种独立于网络结构假设的通用传播机制是非常必要的。

2、UGCN原理
① 多类型卷积机制(Multi-type Convolution Mechanism)
  • 作者提出了一种新的卷积机制,用于捕获来自2-hop和kNN邻居的信息。
  • 构建了基于原始输入网络的2-hop网络( G R G_R GR)和基于节点特征矩阵的kNN网络( G F G_F GF)。
  • 描述了如何使用2-hop网络和kNN网络进行信息传递,并使用节点级注意力机制来提取特定嵌入。
② 2-hop网络
  • 为了处理2-hop网络的邻接矩阵,作者引入了一个约束,选择通过至少两条不同路径连接的节点对来设置边。
  • 使用经典的两层GCN在2-hop网络上执行消息传递。
③ kNN网络
  • 使用余弦相似度计算节点间的相似性矩阵,然后基于相似性选择每个节点的k个最近邻。
  • 描述了如何通过选择节点对来获得邻接矩阵,并计算从kNN获得的信息。
④ 节点级注意力(Node-level Attention)
  • 在聚合来自原始输入网络、2-hop网络和kNN网络的信息之前,使用节点级注意力机制来学习每个节点的网络邻居对目标节点嵌入的贡献度。
  • 定义了节点对之间的重要性系数,并使用Softmax函数来计算权重。
⑤ 判别式聚合(Discriminative Aggregation)
  • 在多类型卷积之后,作者执行力一种判别式聚合,使用注意力机制自动学习1-hop、2-hop和kNN邻居的重要性。
  • 描述了如何计算每个网络的注意力值,并通过Softmax函数进行归一化以获得最终权重。
⑥ 损失函数
  • 遵循GCN的做法,定义了使用交叉熵的损失函数。

这一部分和核心贡献是提出了一种新的GCN模型,该模型不依赖于网络的结构假设,能够自适应地从1-hop、2-hop和kNN邻居中提取和融合信息,以提高在不同类型网络上的性能。

3、实验

节点分类的实验结果:

在这里插入图片描述

消融实验的实验结果:

在这里插入图片描述

其中,U-GCN-1采用2-hop邻居进行直接传播,U-GCN-2采用kNN邻居进行直接传播,U-GCN-3相比于U-GCN删除了2-hop的邻居信息。

4、启发&心得

【UGCN】算法特别简单,感觉这篇文章发在NeurIPS上有点水,但因为是2021年,刚开始出现异配图神经网络的研究,实验结果也还不错,因此引用量还比较多。赶早发paper就是好啊。

本文的理论部分非常简单,简单地说就是判断学习1-hop邻居、2-hop邻居和kNN邻居哪一个可以获得更高的预测精度,然后给这些信息分配权重再进行预测(没看这篇paper的时候我们也想到了,可恶)。需要注意的是这里的kNN邻居不是k-hop邻居,而是“使用余弦相似度计算节点间的相似性矩阵,然后基于相似性选择每个节点的k个最近邻。”

5、参考资料
  • kimi:https://kimi.moonshot.cn/

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

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

相关文章

maven的安装以及配置

前言&#xff1a; Maven是一个强大的构建自动化工具&#xff0c;主要用于Java项目。它解决了软件开发中的两个方面&#xff1a; 构建和依赖管理&#xff1a;Maven通过在项目对象模型&#xff08;POM&#xff09;文件中指定依赖关系&#xff0c;简化了项目构建和依赖管理的过程…

【笔记】事务隔离级别以及MVCC解决幻读

事务提交可能碰到的问题&#xff1a; &#xff08;1&#xff09;脏读&#xff1a;事务1对数据进行修改但还没提交&#xff0c;事务2读取修改后的数据&#xff0c;之后事务1执行错误&#xff0c;回滚了&#xff0c;此时事务2的数据是错误的脏数据。 &#xff08;2&#xff09;不…

数学建模系列(2/4):建模入门

目录 引言 1. 如何开始数学建模 1.1 选择和描述问题 1.2 提出基本假设 1.3 确定模型类型 2. 建模的数学基础 2.1 线性代数基础 矩阵运算 线性方程组的解法 2.2 微分方程基础 常微分方程 偏微分方程 2.3 统计与概率基础 描述性统计 概率基础 3. 模型的求解方法 …

将Vite添加到您现有的Web应用程序

Vite&#xff08;发音为“veet”&#xff09;是一个新的JavaScript绑定器。它包括电池&#xff0c;几乎不需要任何配置即可使用&#xff0c;并包括大量配置选项。哦——而且速度很快。速度快得令人难以置信。 本文将介绍将现有项目转换为Vite的过程。我们将介绍别名、填充webp…

基于CSDN的Markdown文本编辑器的博客界面优化 | HTML | 文本标签 | 图像标签 | 个人主页引导

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 今天毛毛张分享的内容是如何在CSDN的Markdown编辑器中实现上图的效果&#xff0c;如果觉得能帮助到你的话就点击个人主页点点关注吧❗ 文章目录 1.前言2.基础知识3.字…

(南京观海微电子)——DC-DC和LDO的原理及应用区别

LDO: 低压差线性稳压器&#xff0c;故名思意为线性的稳压器&#xff0c;仅能使用在降压应用中&#xff0c;也就是输出电压必需小于输入电压。 优点&#xff1a;稳定性好&#xff0c;负载响应快&#xff0c;输出纹波小。 缺点&#xff1a; 效率低&#xff0c;输入输出的电压…

[C++][设计模式][模板方法]详细讲解

目录 1.动机2.理解1.设计流程对比1.结构化软件设计流程2.面向对象软件设计流程 2.早绑定与晚绑定 3.模式定义4.要点总结5.代码感受1.代码一 -- 结构化1.lib.cpp2.app.cpp 2.代码二 -- 面向对象1.lib.cpp2.app.cpp 1.动机 在软件构建过程中&#xff0c;对于某一项任务&#xff…

Nginx负载均衡之Memcached缓存模块

Nginx 的 ngx_http_memcached_module 模块本身并没有提供缓存功能&#xff0c;它只是一个将用户请求转发到 Memcached 服务器的代理模块。 在以 Memcached 服务器为缓存应用的方案中&#xff0c;Memcached 作为内容缓存的存储服务器&#xff0c;用户通过 URL 为 Memcac…

古文字识别笔记

前置知识 部件&#xff1a;大部分的汉字是由若干组笔画结构拼合而成的&#xff0c;这些相对独立的笔画结构称为「部件」。 部件是大于基本笔画&#xff08;例如&#xff1a;点、横、撇、捺等&#xff09;而小于或等同于 偏旁 的结构单位。 例如「测」字有三个部件&#xff1a;…

视觉新纪元:解码LED显示屏的视角、可视角、最佳视角的最终奥秘

在璀璨夺目的LED显示屏世界里&#xff0c;每一个绚烂画面的背后&#xff0c;都离不开三个关键概念&#xff1a;视角、可视角与最佳视角。这些术语不仅是衡量显示效果的重要标尺&#xff0c;也是连接观众与精彩内容的桥梁。让我们一起走进这场视觉盛宴&#xff0c;探索那些让LED…

【C++】——二叉搜索树(详解)

一 二叉搜索树概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树: ✨若它的左子树不为空&#xff0c;则左子树上所有节点的值都小于根节点的值 ✨若它的右子树不为空&#xff0c;则右子树上所有节点的值都大于根节点的值 …

Go 与 Java 字符编码选择:UTF-8 与 UTF-16 的较量

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

淦!在外包开发的三年给整废了,备战两个月终拿到Android阿里字节哈啰offer总结,阿里P6+这回稳了!

面试时候就感觉不靠谱&#xff0c;因为面试地点是位于近江附近的望江国际里面的温州银行&#xff0c;面试前网上搜了广电运通的信息&#xff0c;说是国企&#xff0c;所以我就硬着头皮接下 offer 了&#xff0c;没想到面试 Android 结果做的 C&#xff0c;而且也是驻场开发。 …

RocketMQ 和 Kafka 关于消息队列的推拉模式是怎么做的?

引言&#xff1a;在当今的大数据和分布式系统中&#xff0c;消息队列扮演着至关重要的角色&#xff0c;它们作为系统之间通信和数据传输的媒介&#xff0c;为各种场景下的数据流动提供了可靠的基础设施支持。在消息队列的设计中&#xff0c;推拉模式是两种常见的消息传递机制&a…

02 Shell编程之条件语句(补充实验部分)

1、双分支if语句的补充&#xff08;实验部分&#xff09; 例如&#xff0c;要编写一个连通性测试脚本&#xff0c;通过位置参数来提供目标主机地址&#xff0c;然后根据ping检测结果给出相应的提示 &#xff08;能ping通的&#xff0c;回馈一个信息&#xff1a;该服务器是开启…

浔川AI社宣布正式开创“浔川AI助手”——浔川AI社

这是浔川AI社的标志。 2024.6.22晚8点35分宣布&#xff0c;浔川AI社正式开创“浔川AI助手” 全面发展。 据浔川AI社报道称‘“浔川AI助手”内容包含全部&#xff0c;写作、聊天......都有。’ 让我们敬请期待&#xff01;

【JAVA】精致的五角星

输出的这幅图像中&#xff0c;一颗精致的金色五角星跃然于深红色背景之上&#xff0c;绽放出迷人的光彩。 要绘画这颗五角星&#xff0c;首先要了解五角星的构造和角度问题。我们可以分为内五边形&#xff0c;和外五边形。内五边形从他的中心到每个外点&#xff0c;连接起来&am…

ECharts词云图(案例一)+配置项详解

ECharts词云图&#xff08;案例一&#xff09;配置项详解 ECharts 是一款由百度团队开发的基于 JavaScript 的开源可视化图表库&#xff0c;它提供了丰富的图表类型&#xff0c;包括常见的折线图、柱状图、饼图等&#xff0c;以及一些较为特殊的图表&#xff0c;如词云图。从版…

带百分比的进度条控件(ProgressBar)源码

带百分比的进度条控件&#xff08;ProgressBar&#xff09;&#xff1a; 源码下载地址&#xff1a;https://download.csdn.net/download/wgxds/89472915

打破数据分析壁垒:SPSS复习必备(六)

一、数据的报表呈现 1.报表概述 (1).SPSS中的报表功能 1&#xff09;Base 模块 2&#xff09;Custom Tables 模块 3) Original Tables 模块 (2).报表的基本绘制步骤 步骤一:确定基本结构 步骤二:使用对话框绘制表格的基本结构 步骤三:完善细节 步骤四:添加其余变…