公众号:尤而小屋作者:Peter编辑:Peter图神经网络GNN和传统深度学习网络的对比:循环神经网络(1997)和卷积神经网络(2012):擅长处理图像等欧式数据或者文本和信号等序列数据图神经网络:擅长处理社交网络 、推荐系统、药物发现和程序分析中的图和流行结构等数据图结构数据不适合高度规则化的神经网络结构,比如RNN或者CNN等。 图神经网络基础GNN方法GNN的理论理解GNN的可扩展性GNN的可解释性GNN的对抗鲁棒性GNN方法GNN是专门设计的用于在图结构数据上进行操作的神经网络架构,其目的是通过聚合邻居节点的表征及其前一次迭代中的表征来迭代更新节点表征 有监督的GNN无监督的GNN训练深度图神经网络的问题:过平滑问题(其中所有的节点都有类似的特征)GNN的理论理解GNN能够达到一维Weisfeiler-Lehman测试的表达能力,甚至超越该能力,包含附加随机属性 对抗性攻击对抗性训练图神经网络前沿图分类和预测链接图生成和图转换图匹配和图结构学习动态图神经网络异质图神经网络基于图神经网络的AutoML和自监督学习图神经网络应用图构建:具有显式或隐式图结构的输入数据图表征学习
是调节两者重要性的加权因子, 是类似神经网络的可微分函数, 是节点节点特征向量 的矩阵, 表示无向图 的非正则化图拉普拉斯算子, 的binary或加权邻接矩阵, 表示度矩阵。 在本文中,作者使用神经网络模型 对图结构进行编码,并训练所有带标签的节点 ,从而避免图结构信息损失函数中的正则化。 3.2 谱图卷积 这里主要是前人工作,可以看本号图神经网络系列——GCN-1(谱图卷积) 卷积公式如下: 3.3 逐层线性模型 假设我们将逐层卷积运算限制为K=1(本文3.2节公式),即关于L的线性函数 如果在深度神经网络模型中反复使用该算子会导致数值不稳定性和梯度爆炸/消失等问题。所以还有引入下面的归一化技巧: 其中 , 。 但是作者在NELL数据集上实验了将有向图表示为一个无向二部图,并在原始图中添加表示边的节点,可以同时处理有向边和边特征(3)前提假设同样存在局限作者假设子环和边连的邻接结点的重要性同等,同时,作者认为对于某些数据集中引入一个权衡参数可能较有利
文章分类在学习摘录和笔记专栏: 学习摘录和笔记(26)---《图神经网络(GNN)》 图神经网络(GNN) 1 图神经网络(GNN)介绍 图不但包含数据,也包含数据之间的依赖关系,因而图神经网络 图神经网络(GNN)最擅长处理和建模图结构数据。 GNN的工作原理简单概况就是,聚合节点的邻居节点/边的信息,来更新节点的向量表征。 3 自动化图构建 目前已知的所有图构建方式分为两类:静态构图方式和动态构图方式。 3.1 静态构图方式 静态图构建有两大特点: 引入先验的领域知识来扩充文本信息; 在预处理阶段完成。 最后,清楚图的结构和转化后,该如何选择合适的图神经网络进行学习? 1. 对于同构图,总结了一类成为homogeneous GNN的图神经网络类型。 对于多关系图,由于针对边的属性如何被应用,总结了不同的multi-relational GNN。最常见的有R-GCN, R-GGNN等等。 3.
来源:百度Aistudio 图神经网络7日打卡营 图(graph)近来正逐渐变成机器学习的一大核心领域,在开始PGL框架学习之前,我们先简单学习一下图论的基本概念,图论的经典算法,以及近些年来图学习的发展 该图的直径为 3,因为没有任意两个节点之间的最短路径的长度超过 3。 ? image 一个直径为 3 的图 测地路径(geodesic path)是指两个节点之间的最短路径。 存储图的方式有三种,取决于你想用它做什么: 存储为边列表: 1 2 1 3 1 4 2 3 3 4 ... 传统同构图(Homogeneous Graph)数据中只存在一种节点和边,因此在构建图神经网络时所有节点共享同样的模型参数并且拥有同样维度的特征空间。 14: 3, 15: 3, 18: 3, 20: 3, 22: 3, 29: 3, 26: 3}) ?
图神经网络基础 图神经网络用于挖掘事物的“普遍联系”,理解原理、应用技术。本文汇总图神经网络相关介绍和基础模型。 图及特性 图是由顶点和边组成的,如下图左所示。 [3a503f611707484ebde76b2da7c38c3e.jpg] 在数学中一般使用邻接矩阵来表示图,如上图右所示。 图神经网络将图数据和神经网络进行结合,在图数据上进行端对端的计算。 现实生活中的大量的业务数据都可以用图来表示。万事万物皆有联系,顶点+关系这样一种表示覆盖很广。 由此我们可以粗浅地给图神经网络模型下一个定义,针对图结构这一非欧几里得结构数据,利用神经网络来聚合邻域信息,从而更新节点或者边的表达的模型就可以称为是图神经网络。 [20190615211333542.png] 图神经网络的应用 图数据的结构普遍存在,所以图神经网络的应用场景丰富多样。
关于图的概念可以参考图论整理 ,这里不再赘述。 图神经网络Graph neural networks(GNNs)是深度学习在图领域的基本方法,它既不属于CNN,也不属于RNN。 这个是图神经网络核心的概念。 图任务(Graph Tasks) 上图是一个节点的分类任务,在左边的部分,有些节点有颜色,有些节点没颜色。 图神经网络很难可视化,它不像图像或者声音那样有可以确定的样子和波形,过于抽象,错综复杂。 图卷积神经网络(Graph Convolution Networks) GCN是一种可以直接作用于图上的卷积神经网络,它能够提取图的特征。 一般来说,图有三大任务:1、节点分类;2、图分类;3、边预测。
图a,基于属性的框架(Attribute-based framework):对视频动作人为标注一些属性,根据动作类别和属性的关系,将已知类上训练好的分类器用到未知类上预测视频的动作。 (根据查到的一些博客,我的理解是,比如,整体网络分三层,第一层是输入的视频,第二层是属性,第三层是动作,输入视频经过神经网络得到各个属性的得分,再根据属性得分确定动作类别)这样的方法存在的问题:只用了属性和类别的关系 图b,基于词嵌入的方法(Word embedding-based framework):把动作名称的word2vec向量映射到隐空间,在隐空间隐式的建模已知类和未知类的关系,学习到一个迁移矩阵。 图c,本文的方法,通过知识图谱+GCN,建模类别和类别、属性和属性、类别和属性三种关系。这里的属性使用的是图中出现的物体。 ¶2. 本文方法 使用双支GCN结构,上面是分类分支,下面是实例分支。 ? 通过3层GCN(2048-1024-512),最终输出一个矩阵:d\times O,通过该实例分支,对于每一个视频,我们都能得到其对应的鲁棒的attribute-feature。
3 图嵌入算法 ? ? 依据 Wu et. al (2019) 的定义,图神经网络可分为五大类: 图卷积网络(Graph Convolution Networks):简称为 GCN,是目前最主流的图神经网络算法,其余四种图神经网络皆由 image.png 3 图生成网络 Graph Generative Networks。相对于其他分支而言,图生成网络的应用场景较少,主要包括生物医药和工程学等领域。 image.png 总结 图神经网络相对于传统的卷积神经网络和循环神经网络的不同之处,在于其高度的可塑性和多样性。 以下呈现笔者总结的模型择优策略,供读者参考: 【1】任务目的:图分类【2】、节点分类【3】、节点嵌入【4】、关系预测【15】 【2】数据规模:大型【9】、小型【10】 【3】数据规模:大型【5】、小型【
图神经网络入门指南神经网络已经适应了图的结构和特性。我们探讨了构建图神经网络所需的组件,并解释了其背后的设计选择。将鼠标悬停在下图中的一个节点上,观察它如何通过网络中的各层从周围节点累积信息。 图像作为图我们通常将图像视为带有图像通道的矩形网格,表示为数组(例如 244x244x3 的浮点数)。另一种方式是将图像视为具有规则结构的图,其中每个像素代表一个节点,并通过边与相邻像素连接。 每个非边界像素恰好有 8 个邻居,每个节点存储的信息是表示像素 RGB 值的 3 维向量。可视化图连通性的一种方法是通过其邻接矩阵。 图神经网络图神经网络(GNN)是对图的所有属性(节点、边、全局上下文)进行可优化的变换,同时保持图的对称性(置换不变性)。GNN 采用“图输入,图输出”的架构。 所有聚合后的消息通过一个更新函数(通常是一个学习到的神经网络)。通过堆叠消息传递 GNN 层,一个节点最终可以整合来自整个图的信息。
image.png 二、图有两个基本特征: 每个节点都有自己的特征信息 图谱中的每个节点还具有结构信息 图神经网络相关: 在了解图神经网络之前,我们来复习一下与图神经网络相关的一些概念 一、Graph deep learning方法搭建的网络统称为图神经网络GNN 图神经网络 图神经网络(Graph Neural Network, GNN)是指神经网络在图上应用的模型的统称,根据采用的技术不同和分类方法的不同 图神经网络是一种直接作用在图结构上面的神经网络。 一、定义 在论文《Relational inductive biases, deep learning, and graph networks》中作者定义了图神经网络的通用结构,也就是现在的图神经网络的开山鼻祖 3.图相关矩阵的定义 有什么东西来度量节点的邻居节点这个关系呢,学过图论的就会自然而然的想到邻接矩阵和拉普拉斯矩阵。
从图(Graph)到图卷积(Graph Convolution): 漫谈图神经网络 (二) 作者: SivilTaram 编辑: Houye 在从图(Graph)到图卷积(Graph Convolution ): 漫谈图神经网络 (一)中,我们简单介绍了基于循环图神经网络的两种重要模型,在本篇中,我们将着大量笔墨介绍图卷积神经网络中的卷积操作。 接下来,我们将首先介绍一下图卷积神经网络的大概框架,借此说明它与基于循环的图神经网络的区别。接着,我们将从头开始为读者介绍卷积的基本概念,以及其在物理模型中的涵义。 这两条实际上也是后续图卷积神经网络的设计原则,图卷积的本质是想找到适用于图的可学习卷积核。 图卷积框架(Framework) 上面说了图卷积的核心特征,下面我们先来一窥图卷积神经网络的全貌。 Inductive Representation Learning on Large Graphs, https://arxiv.org/abs/1706.02216 [3].
return test_acc 输出: 正如我们看到的,效果很差,一个重要的原因就是有标签的节点数量过少,训练的时候会有一些过拟合 接下来我们介绍图卷积神经网络: 然后开始构建我们的图神经网络: : 通过visualize的函数处理,7维特征的节点被映射到2维的平面上,可以看到有点“同类节点群聚”的现象 接下来,构建我们的图神经网络: from torch_geometric.nn import test_acc test_acc=test() print(f"Test Accuracy:{test_acc:.4f}") 输出: 可以看到准确率已经提高到了80%,与前面获得59%的测准确率的MLP图神经网络相比 ,GCN图神经网络准确性要高的多,这表明节点的邻接信息再取得更好的准确率方面起着更关键的作用。 再来做个图看看吧: 通过上面这个图发现,同类节点群聚的现象更加明显了,这意味着在训练后,GCN图神经网络生成的节点表征质量更高了。 完
从图(Graph)到图卷积(Graph Convolution): 漫谈图神经网络 (一) 作者: SivilTaram 编辑: Houye 作者最近看了一些图与图卷积神经网络的论文,深感其强大,但一些 因此,本文试图沿着图神经网络的历史脉络,从最早基于不动点理论的图神经网络(Graph Neural Network, GNN)一步步讲到当前用得最火的图卷积神经网络(Graph Convolutional 不过,因为图神经网络的发展分支非常之多,笔者某些叙述可能并不全面,一家之言仅供各位读者参考: 图神经网络的概念最早在2005年提出。 直到2013年,在图信号处理(Graph Signal Processing)的基础上,Bruna(这位是LeCun的学生)在文献 [3]中首次提出图上的基于频域(Spectral-domain)和基于空域 从笔者来看,如果我们用物理模型来描述它,上面这个图代表的是初始时有3个热源在散发热量,而后就让它们自由演化;但实际上,GNN在每个时间步都会将结点的特征作为输入来更新隐藏状态,这就好像是放置了若干个永远不灭的热源
或多或少接触NLP的同学,应该比较清楚目前文本分类的模型众多,比如Text-RNN(LSTM),Text-CNN等,但是当时很少有关于将神经网络用于文本分类的任务中。 GCN属于一类图形神经网络,称为消息传递网络,其中消息(在这种情况下,边缘权重乘以节点表示形式)在邻居之间传递。 我们可以将这些消息传递网络视为帮助学习节点表示的方法,该节点表示法考虑了其图结构的附近邻居。因此,图的构造方式,即在哪些节点之间形成哪些边,非常重要。 Text-GCN:基于图神经网络的文本分类 ? 文本Graph的构建 构造“文本”图的细节如下。首先,节点总数是文档 ? 数加上不同词语 ? 的个数。节点特征矩阵是恒等矩阵 ? 总的来说,我认为本文显示了图神经网络的强大能力及其在我们可以定义和构建某种有用图结构的任何领域中的适用性。
从图(Graph)到图卷积(Graph Convolution): 漫谈图神经网络 (三) 作者: SivilTaram 编辑: Houye 恭喜你看到了本系列的第三篇! 前面两篇分别介绍了基于循环的图神经网络和基于卷积的图神经网络,那么在本篇中,我们则主要关注在得到了各个结点的表示后,如何生成整个图的表示。 假设我们有100个介于[-3,1]的数字,如果我们直接将它们求和,如左图所示,我们完全看不出这100个数据的分布;而如果我们将[-3, 1]等分成4个区域,比如说就是[-3,-2),[-2,-1),[- 举个例子,图上的[1.8]与三个高斯分布的交点分别在0,0.3,0.9处,归一化一下,即可知该特征值最终应该用一个3维向量[0.0, 0.25, 0.75]来表示。 基于学习的方法(Learning Category) 基于统计的方法的一个坏处大概是它没办法参数化,间接地难以表示结点到图向量的这个“复杂”过程。基于学习的方法就是希望用神经网络来拟合这个过程。
二、有哪些图神经网络 三、图神经网络的应用 一、什么是图神经网络? 为了将图像与图关联起来,可以将图像视为图的特殊形式,每个像素代表一个节点,如下图a所示,每个像素直接连接到其附近的像素。通过一个3×3的窗口,每个节点的邻域是其周围的8个像素。 然后,通过对每个通道上的中心节点及其相邻节点的像素值进行加权平均,对该3×3窗口应用一个滤波器。由于相邻节点的特定顺序,可以在不同的位置共享可训练权重。 3、Graph Autoencoders 图自动编码器是一类图嵌入方法,其目的是利用神经网络结构将图的顶点表示为低维向量。 3、Traffic 交通拥堵已成为现代城市的一个热点社会问题。准确预测交通网络中的交通速度、交通量或道路密度,在路线规划和流量控制中至关重要。有学者采用基于图的时空神经网络方法来解决这些问题。
图神经网络(GNN):理解复杂网络数据的有效工具 图神经网络(Graph Neural Network, GNN)是近年来机器学习领域的热门话题。 本文将深入探讨图神经网络的基本概念、主要模型及其应用,并通过代码示例展示如何从头实现一个 GNN。 1. 图神经网络基础 1.1 什么是图? 1.2 图神经网络的目标 图神经网络的主要目标是通过图的结构和节点的特征来进行学习。具体来说,GNN 可以用来解决以下问题: 节点分类:例如,在社交网络中预测用户的兴趣。 图分类:例如,判断一个分子是否具有某种化学性质。 2. 图神经网络的工作原理 GNN 的核心思想是通过迭代地聚合每个节点邻居的信息来更新节点的表示。 3.
从贝叶斯学派的代表方法——概率图模型的角度对图神经网络加以解释。它的强大之处在于生成的解释具有丰富的统计信息,能够以条件概率的形式自然的表达出节点之间的依赖关系。 ? Graphical Model Explanations for Graph Neural Networks 论文地址:https://arxiv.org/pdf/2010.05788.pdf 0.摘要 在图神经网络 整体流程是:1)通过多次扰动原始图数据生成新的数据,即采样数据;2)对采样数据进行变量选择,逐步简化问题,得到一组重要的变量;3)对过滤后的数据进行结构学习,获得GNN的概率图模型解释。 对于解释域 的选取,可以选择图 的边子集、特征矩阵 的实例子集。本文采用了[17]中提出的神经网络的解释模型框架,并认为 是一个可解释模型家族。 定理3表明,得到的no-child 约束下的概率图模型 与无约束时得到的概率图模型 是 -equivalence 的。 ?
图神经网络的研究已经成为今年机器学习领域 炙手可热 的话题之一。最近,图神经网络在生物学、化学、社会科学、物理学和许多其他领域的问题上,取得了一系列成功。 到目前为止,图神经网络模型主要是针对静态图而开发的,静态图不会随着时间而改变。然而,许多有趣的现实世界图都是动态的,并且会随着时间的推移而不断变化,突出的例子包括社交网络、金融交易和推荐系统。 该事件流由编码器神经网络接受,这个编码器神经网络为图的每个节点生成时间相关的嵌入。然后,可以将嵌入馈送到为特定任务而设计的解码器中。 时间图网络对一批训练数据进行的计算。一方面,嵌入由嵌入模块使用时间图和节点的内存 (1) 生成嵌入。然后使用嵌入预测批量交互作用并计算损失 (2,3)。 【3】 《 用于动态图深度学习的时间图网络》(Temporal graph networks for deep learning on dynamic graphs),E.
(2)神经网络的性能表现与其关系图的聚类系数和平均路径长度存在密切关联,呈现平滑的函数关系; (3)本文的发现适用于多种不同的任务和数据集,具有广泛的适用性; (4)能够有效地识别出最佳点; (5)表现最佳的神经网络在图结构上与真实的生物神经网络呈现出高度的相似性 例如,用4节点关系图表示2层神经网络,第一层宽度5,第二层宽度9,则4个节点在第一层的尺寸为{2,1,1,1},在第二层的尺寸为{3,2,2,2}。 ResNet的残差连接被保留,瓶颈变换的神经网络则交替应用3×3和1×1卷积的消息交换。在计算效率高的设置中,可分离卷积(交替应用3×3深度卷积和1×1卷积)被广泛使用。 3 探索关系图 本节探讨如何设计并探索神经网络图结构与预测性能的关系,通过三个关键部分:(1)图形测量以表征图结构属性;(2)图形生成器以生成不同图形;(3)控制计算预算的方法,以归因于不同神经网络性能的差异 图3 不同图形生成器生成的图形。所提出的图形生成器WS-flex可以覆盖更大的图形设计空间区域。