[论文精读]How Powerful are Graph Neural Networks?

论文原文:[1810.00826] How Powerful are Graph Neural Networks? (arxiv.org)

英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用!

1. 省流版

1.1. 心得

        ①Emm, 数学上的解释性确实很强了

        ②他一直在...在说引理

1.2. 论文框架图

2. 论文逐段精读

2.1. Abstract

        ①Even though the occurrence of Graph Neural Networks (GNNs) changes graph representation learning to a large extent, it and its variants are all limited in representation abilities.

2.2. Introduction

        ①Briefly introduce how GNN works (combining node information from k-hop neighbors and then pooling)

        ②The authors hold the view that ⭐ other graph models mostly based on plenty experimental trial-and-errors rather than theoretical understanding

        ③They combine GNNs and the Weisfeiler-Lehman (WL) graph isomorphism test to build a new framework, which relys on multisets

        ④GIN is excellent in distinguish, capturing and representaion

heuristics  n.[U] (formal) 探索法;启发式

heuristic  adj.(教学或教育)启发式的

2.3. Preliminaries

(1)Their definition

        ①They define two tasks: node classicifation with node label y_{v} and graph classification with graph label y_{i},i\in \left \{ 1,2...,N \right \}

(2)Other models

        ①The authors display the function of GNN in the k-th layer:

a_v^{(k)}=\text{AGGREGATE}^{(k)}\left(\left\{h_u^{(k-1)}:u\in\mathcal{N}(v)\right\}\right),\\\quad h_v^{(k)}=\text{COMBINE}^{(k)}\left(h_v^{(k-1)},a_v^{(k)}\right),

where only h_{v}^{(0)} is initialized to X_{v} (其余细节就不多说了,在GNN的笔记里都有)

        ②Pooling layer of GraphSAGE, the AGGREGATE function is:

a_v^{(k)}=\text{MAX}\left(\left\{\text{ReLU}\left(W\cdot h_u^{(k-1)}\right),\forall u\in\mathcal{N}(v)\right\}\right)

where MAX is element-wise max-pooling operator;

W is learnable weight matrix;

and followed by concatenated COMBINE and linear mapping W\cdot\left[h_{v}^{(k-1)},a_{v}^{(k)}\right]

        ③AGGREGATE and COMBINE areintegrated in GCN:

h_v^{(k)}=\text{ReLU}\left(W\cdot\text{MEAN}\left\{h_u^{(k-1)},\forall u\in\mathcal{N}(v)\cup\{v\}\right\}\right)

        ④Lastly follows a READOUT layer to get final prediction answer:

h_G=\text{READOUT}\big(\big\{h_v^{(K)}\big|v\in G\big\}\big)

where the READOUT function can be different forms

(3)Weisfeiler-Lehman (WL) test

        ①WL firstly aggregates nodes and their neighborhoods and then hashs the labels (??hash?这好吗)

        ②Based on WL, WL subtree kernel was proposed to evaluate the similarity between graphs

        ③A subtree of height k's root node is the node at k-th iteration

permutation  n.置换;排列(方式);组合(方式)

2.4. Theoretical framework: overview

        ①The framework overview

        ②Multiset: is a 2-tuple X=(S,m), where "where S is the underlying set of X that is formed from its distinct elements, and m:S\rightarrow \mathbb{N}_{\geq 1} gives the multiplicity of the elements" (我没有太懂这句话欸

        ③They are not allowed that GNN map different neighbors to the same representation. Thus, the aggregation must be injective (我也不造为啥

2.5. Building powerful graph neural networks

        ①They define Lemma 2, namely WL graph isomorphism test is able to correctly distinguish non-isomorphic graphs

        ②Theorem 3 完全没看懂

        ③Lemma 4: If input feature space is countable, then the space of node hidden features h_{v}^{(k)} is also countable

2.5.1. Graph isomorphism network (GIN)

        ①Lemma 5: there is f:\mathcal{X}\rightarrow\mathbb{R}^{n} , which makes h(X)=\sum_{x\in X}f(x) unique in X\subset \mathcal{X} . Also there is g\left(X\right)=\phi\left(\sum_{x\in X}f(x)\right)

        ②Corollary 6: there is unique \begin{aligned}h(c,X)=(1+\epsilon)\cdot f(c)+\sum_{x\in X}f(x)\end{aligned} and g\left(c,X\right)=\varphi\left(\left(1+\epsilon\right)\cdot f(c)+\sum_{x\in X}f(x)\right).

        ③Finally, the update function of GIN can be:

h_{v}^{(k)}=\mathrm{MLP}^{(k)}\left(\left(1+\epsilon^{(k)}\right)\cdot h_{v}^{(k-1)}+\sum_{u\in\mathcal{N}(v)}h_{u}^{(k-1)}\right)

2.5.2. Graph-level readout of GIN

        ①Sum, mean and max aggregators:

        ②The fail examples when the different v and {v}' map the same embedding:

where (a) represents all the nodes are the same, only sum can distinguish them;

blue in (b) represents the max, thus max fails to distinguish as well;

same in (c). (盲猜这里其实蓝色v自己是一个节点,但是没有考虑自己的特征,而是纯看1-hop neighborhoods)

        ③They change the READOUT layer to:

h_G=\text{CONCAT}\Big(\text{READOUT}\Big(\Big\{h_v^{(k)}|v\in G\Big\}\Big)\big|k=0,1,\ldots,K\Big)

2.6. Less powerful but still interesting GNNs

        They designed ablation studies

2.6.1. 1-layer perceptrons are not sufficient

        ①1-layer perceptrons are akin to linear mapping, which is far insufficient for distinguishing

        ②Lemma 7: notwithstanding multiset X_{1} is different from X_{2}, they might get the same results: \sum_{x\in X_1}\text{ReLU}\left(Wx\right)=\sum_{x\in X_2}\text{ReLU}\left(Wx\right)

2.6.2. Structures that confuse mean and max-pooling

        这一节的内容在2.5.2.②的图下已经解释过了

2.6.3. Mean learns distributions

        ①Collary 8: there is a function h\left ( X \right )=\frac{1}{\left | X \right |}\sum_{x\in X}f\left ( x \right ). If and only if multisets X_{1} and X_{2} are the same distribution, h\left ( X_{1} \right )=h\left ( X_{2} \right )

        ②When statistical and distributional information in graph cover more important part, mean aggregator performs better. But when structure is valued more, mean aggregator may do worse.

        ③Sum and mean aggregator may be similar when node features are multifarious and hardly repeat

2.6.4. Max-pooling learns sets with distinct elements

        ①Max aggregator focus on learning the structure of graph (原文用的"skeleton"而不是"structure"), and it has a certain ability to resist noise and outliers

        ②For max function h\left ( X \right )=max_{x\in X}f\left ( x \right ), if and only if X_{1} and X_{2} have the same underlying set, h\left ( X_{1} \right )=h\left ( X_{2} \right )

2.6.5. Remarks on other aggregators

        ①They do not cover the analysis of weighted average via attention or LSTM pooling

2.7. Other related work

        ①Traditional GNN does not provide enough math explanation

        ②Exceptionally, RKHS of graph kernels (?) is able to approximate measurable functions in probability

        ③Also, they can hardly generalize to multple architectures

2.8. Experiments

        ①Dataset: 9 graph classification benchmarks: 4 bioinformatics datasets (MUTAG, PTC, NCI1, PROTEINS) and 5 social network datasets (COLLAB, IMDB-BINARY, IMDB-MULTI, REDDITBINARY and REDDIT-MULTI5K)

        ②Social networks are lack of node features, then they set node vectors as the same in REDDIT and use one hot encoding for others

2.8.1. Results

2.9. Conclusion

3. 知识补充

4. Reference List

Xu, K. et al. (2019) 'How Powerful are Graph Neural Networks?', ICLR 2019. doi: https://doi.org/10.48550/arXiv.1810.00826

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker--基本操作

第 1 章 Docker基础 1.1 docker简介 在这一部分我们主要讲两个方面: docker是什么、docker特点 1.1.1 docker是什么 docker是什么? docker的中文解释是码头工人。 官方解释: Docker是一个开源的容器引擎,它基于LCX容器技术&…

关于宝塔面板提示“upgrade your ACME client to support TLSv1.2 or better”的解决办法

今天续期SSL证书的时候提示“upgrade your ACME client to support TLSv1.2 or better”,这一般是旧系统情况下TLS版本过低:acme.sh版本低于2.8所引起的,也就是提示:升级你的系统至 TLS 1.2 协议或更高版本。 但是国内服务器无法…

Web3公链之Cosmos生态的项目Celestia

文章目录 Web3公链之Cosmos生态的项目:模块化区块链Celestia什么是CelestiaCelestia网络架构数据可用性问题有哪些可用的解决方案? 发展历史运行节点参考 Web3公链之Cosmos生态的项目:模块化区块链Celestia 什么是Celestia 官网&#xff1a…

计算机网络与技术——数据链路层

😊计算机网络与技术——数据链路层 🚀前言☃️基本概念🥏封装成帧🥏透明传输🥏差错检测 ☃️点对点协议PPP🥏PPP协议的特点🥏PPP协议的帧格式🔍PPP异步传输时透明传输(字…

的修工单管理系统好用吗?工单系统应该怎么选?

在当今的数字化时代,企业运营效率的高低往往取决于其内部管理工具的先进性和实用性。工单管理系统作为企业运营中的重要工具,其作用日益凸显。市场上存在许多工单管理系统,但“的修”以其独特的产品差异化和优势,在竞争中独树一帜…

东初版 java代码混淆 java加密class Java混淆实际方案

作为资深的开发专家,我很高兴与您分享有关Java混淆的实际方案和案例。Java混淆是一种重要的安全措施,用于保护您的代码免受恶意分析和反编译的威胁。在本文中,我将介绍Java混淆的基本原理、常用工具,以及一个简单的案例来演示如何…

c++从入门到放弃,小白踩坑记录1

c从入门到放弃,小白踩坑记录1 错误问题描述 没有与这些操作数匹配的运算符操作数类型为std::basic_ostream <char,std::char traits <char > > < < <unknown-type > 错误代码 #include<iostream> int main(void) {std::cout << "…

今日头条小程序源码系统 带完整搭建教程

随着小程序的发展&#xff0c;越来越多的企业和开发者开始关注小程序的开发。今天源码小编给大家分享一款今日头条小程序源码系统&#xff0c;并附带完整的搭建教程。 今日头条小程序源码系统是一款基于PHPMySQL开发组合开发的小程序框架&#xff0c;具有丰富的组件库和插件生…

ASO优化之如何制作Google Play的长短描述

应用的描述以及标题和图标是元数据中最关键的元素&#xff0c;可以影响用户是否决定下载我们的应用程序。简短描述的长度限制为80个字符&#xff0c;它提供了更多的有关应用背景信息的机会。 1、简短描述帮助用户快速了解我们应用。 确保内容丰富的同时&#xff0c;保持简洁和…

科研迷雾:读研以来,我发现的科研界“怪象”

1 引言 随着读论文和做实验的增多&#xff0c;我发现了sci的很多猫腻经不起细细推敲&#xff0c;原来科研并不如我想象的神圣&#xff0c;还不如工业界来的实在&#xff0c;因为在工业界做项目出现问题&#xff0c;客户是验收不了不给付钱的。所以论文只是一个玩具。 2 常见的…

ue5 右击.uproject generator vs project file 错误

出现如下错误 Unable to find valid 14.31.31103 C toolchain for VisualStudio2022 x64 就算你升级了你的 vs installer 也不好使 那是因为 在C:\Users\{YourUserName}\AppData\Roaming\Unreal Engine\UnrealBuildTool\BuildConfiguration.xml 这个缓存配置文件中写死了 14…

armbian 安裝配置教程

1、安装贝锐蒲公英 下载安装包 cd /usr/local/share mkdir pgyvpn wget https://pgy.oray.com/softwares/58/download/1839/PgyVisitor_Raspberry_2.4.0.52291_arm64.deb安装 dpkg -i PgyVisitor_Raspberry_2.4.0.52291_arm64.deb 输入pgyvisitor login/pgyvisitor login -…

广告行业中那些趣事系列65:使用chatgpt编写基金定投程序

导读&#xff1a;本文是“数据拾光者”专栏的第六十五篇文章&#xff0c;这个系列将介绍在广告行业中自然语言处理和推荐系统实践。本篇介绍了prompt生成器和使用chatgpt来编写一个基金定投程序&#xff0c;对于希望使用chatgpt提升工作效率&#xff0c;尤其是对投资基金感兴趣…

php得到两个数组之间的差集、并集、交集方法

1、差集&#xff1a; array_diff()函数用于返回在第一个数组中存在&#xff0c;但在其他数组中不存在的值。 $array1 [1, 2, 3, 4, 5]; $array2 [4, 5, 6, 7, 8]; $diff array_diff($array1, $array2); print_r($diff); 输出&#xff1a;Array ( [0] > 1 [1] > 2 [2]…

保护生产中 Node.js 应用程序安全的 15 项最佳实践

在后端开发方面&#xff0c;Node.js 是开发人员最喜欢的技术之一。它的受欢迎程度不断上升&#xff0c;现已成为在线攻击的主要目标之一。这就是为什么保护 Node.js 免受漏洞和威胁至关重要。 在本指南中&#xff0c;您将看到为生产设计安全 Node.js 应用程序架构的 15 种最佳…

打造美团外卖新体验,HarmonyOS SDK持续赋能开发者共赢鸿蒙生态

从今年8月起&#xff0c;所有升级到HarmonyOS 4的手机用户在美团外卖下单后&#xff0c;可通过屏幕上的一个“小窗口”&#xff0c;随时追踪到“出餐、取餐、送达”等订单状态。这个能让用户实时获悉订单进度的神奇“小窗口”&#xff0c;就是实况窗功能。 实况窗&#xff1a;简…

Intel oneAPI笔记--oneAPI简介、SYCL编程简介

oneAPI简介 Intel oneAPI是Intel提供的统一编程模型和软件开发框架。 它旨在简化可充分利用英特尔各种硬件架构&#xff08;包括 CPU、GPU 和 FPGA&#xff09;的应用程序的开发 oneAPI一个重要的特性是开放性&#xff0c;支持多种类型的架构和不同的硬件供应商&#xff0c;是…

QML 创建 Web 混合应用

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 随着互联网的快速发展,Web 应用在各个领域中变得越来越流行。为了满足用户对多样化功能的需求,我们经常需要将 Web 技术和原生应用相结合,来创建混合应用程序。 混合应用程序:是一种应用程序开发方法,它…

Microsoft 365 管理自动化

Microsoft 365 服务被大多数组织广泛使用&#xff0c;每天生成的数据量巨大。解决 Microsoft 365 中的问题可能非常困难&#xff0c;并且使用多个管理中心来保护组织变得复杂。本机控制台还缺少某些批量管理任务、全面的审计报告和基于角色的精细访问控制。 Microsoft 360 管理…

42 深度学习(六):调参|保存模型以及再次调用或训练

文章目录 卷积神经网络调参optimizer 优化器SGDmomentumAdaGradRMSPropadam学习率自适应经验之谈 激活函数SigmoidTanhReLULeaky-ReLU指数线性单元(ELU)Maxout&#xff08;基本不用&#xff09;经验之谈 初始化全部为 0判断初始化好不好批归一化&#xff08;BN&#xff09; 数据…