网络特征处理基于图神经网络

gaowenxingxing gaowenxingxing     2023-03-31     597

关键词:

图神经网络处理网络特征

  • 图卷积网络 GCN
  • 图注意力网络 GAN
  • 图自编码器 GA
  • 图生成网络
  • 图时空网络 GSN

图论

我记得运筹学课本有一章节是讲过图论的。
G=(V,E),V是土中节点的集合,E是边的集合,一个图中的节点个数为N.
图也可以用矩阵表示:
邻接矩阵A:用来表示节点之间的连接关系
度矩阵D:每个节点的度是指其连接的节点数
特征矩阵X: 用于表示节点的特征(X是R^N*F)的子集

深度学习中最重要的就是学习特征:随着网络层数的增加,特征越来越抽象,然后用于最终的任务,对于图任务来说,这点同样适用,我们希望深度模型从图的最特征X出发学习到更加抽象的特征,这个特征融合了其他节点的特征,因此图网络需要不断的学习新的特征。

图是一种有节点(顶点)和边构成的数据结构,可以是有向图(单向,双向),也可是无向图(没有明确起点或者终点的信息),所有的节点都占据空间中的任意位置。当用二维或多维空间绘制图的结构时候,具有相似特征的节点通常会聚到一起。知乎

图可以表示事物:比如社交网络。节点可以表示用户/产品/等,边表示他们之间的连接,比如关注/通常与相连接的产品同时购买。

以一个社交网络来说,节点表示用户,边表示两个实体之间的连接/关系,真实的神级网络往往更加复杂。
因此这里可以用于提取用户的网络特征。

图卷积网络GCN

图网络学习特征的方式讲就是,对该节点的邻域节点特征进行变化,然后求和,这里类比cnn就比较清楚了。

归纳一下:
变换:对当前节点的特征进行变换,就是乘法规则
聚合:聚合域节点的 特征,得到该节点的新特征,就是加法规则
激活:采用激活函数,增加非线性

RNN提取的自然语言是一种序列化的数据,因此能够通过各种门提取序列特征,使得序列特征前后能够相互影响
CNN学习特征的方式是kernel不断的在图上平移,通过卷积的方式提取特征,这个kernel的内部是一直不变的。一个小窗口无论移动到图片的哪一个位置,其内部的结构都是一模一样的,因此CNN可以实现参数共享

上面讲的图片或者语言,都属于欧式空间的数据,因此才有维度的概念,欧式空间的数据的特点就是结构很规则。但是现实生活中,其实有很多很多不规则的数据结构,典型的就是图结构,或称拓扑结构,如社交网络、化学分子结构、知识图谱等等;即使是语言,实际上其内部也是复杂的树形结构,也是一种图结构;而像图片,在做目标识别的时候,我们关注的实际上只是二维图片上的部分关键点,这些点组成的也是一个图的结构。zhihu

图的结构一般来说是十分不规则的,可以认为是无限维的一种数据,所以它没有平移不变性。每一个节点的周围结构可能都是独一无二的,这种结构的数据,就让传统的CNN、RNN瞬间失效。所以很多学者从上个世纪就开始研究怎么处理这类数据了。这里涌现出了很多方法,例如GNN、DeepWalk、node2vec等等.

技术图片
或许下面这幅图更加清晰
技术图片
右侧则是一个普通的图。阴影部分代表卷积核,左侧是一个传统的卷积核,右侧则是一个图卷积核。卷积代表的含义我们会在后文详细叙述,这里读者可以将其理解为在局部范围内的特征抽取方法。

仔细观察两个图的结构,我们可以发现它们之间有2点非常不一样:

在图像为代表的欧式空间中,结点的邻居数量都是固定的。比如说绿色结点的邻居始终是8个(边缘上的点可以做Padding填充)。但在图这种非欧空间中,结点有多少邻居并不固定。目前绿色结点的邻居结点有2个,但其他结点也会有5个邻居的情况。
欧式空间中的卷积操作实际上是用固定大小可学习的卷积核来抽取像素的特征,比如这里就是抽取绿色结点对应像素及其相邻像素点的特征。但是因为图里的邻居结点不固定,所以传统的卷积核不能直接用于抽取图上结点的特征。
真正的难点聚焦于邻居结点数量不固定上。那么,研究者如何解决这个问题呢?其实说来也很简单,目前主流的研究从2条路来解决这件事:

提出一种方式把非欧空间的图转换成欧式空间。
找出一种可处理变长邻居结点的卷积核在图上抽取特征。
这两条实际上也是后续图卷积神经网络的设计原则,图卷积的本质是想找到适用于图的可学习卷积核。SivilTaram

GCN,图卷积神经网络,实际上跟CNN的作用一样,就是一个特征提取器,只不过它的对象是图数据。GCN精妙地设计了一种从图数据中提取特征的方法,从而让我们可以使用这些特征去对图数据进行节点分类(node classification)、图分类(graph classification)、边预测(link prediction),还可以顺便得到图的嵌入表示(graph embedding),可见用途广泛。

每个节点都有定义他的一个特征,在社交网络的案例中,这些特征可以是年龄,性别,居住国家,政治倾向,等。。每条边连接的节点都可能具有相似的特征,这体现了这些节点之间的某种相关性或者关系。

图神经网络的应用

zhihu

1、Computer Vision

图形神经网络的最大应用领域之一是计算机视觉。研究人员在场景图生成、点云分类与分割、动作识别等多个方面探索了利用图结构的方法。

在场景图生成中,对象之间的语义关系有助于理解视觉场景背后的语义含义。给定一幅图像,场景图生成模型检测和识别对象,并预测对象对之间的语义关系。另一个应用程序通过生成给定场景图的真实图像来反转该过程。自然语言可以被解析为语义图,其中每个词代表一个对象,这是一个有希望的解决方案,以合成给定的文本描述图像。

在点云分类和分割中,点云是激光雷达扫描记录的一组三维点。此任务的解决方案使激光雷达设备能够看到周围的环境,这通常有利于无人驾驶车辆。为了识别点云所描绘的物体,将点云转换为k-最近邻图或叠加图,并利用图论进化网络来探索拓扑结构。

在动作识别中,识别视频中包含的人类动作有助于从机器方面更好地理解视频内容。一组解决方案检测视频剪辑中人体关节的位置。由骨骼连接的人体关节自然形成图表。给定人类关节位置的时间序列,应用时空神经网络来学习人类行为模式。

此外,图形神经网络在计算机视觉中应用的可能方向也在不断增加。这包括人-物交互、少镜头图像分类、语义分割、视觉推理和问答等。

2、Recommender Systems

基于图的推荐系统以项目和用户为节点。通过利用项目与项目、用户与用户、用户与项目之间的关系以及内容信息,基于图的推荐系统能够生成高质量的推荐。推荐系统的关键是评价一个项目对用户的重要性。因此,可以将其转换为一个链路预测问题。目标是预测用户和项目之间丢失的链接。为了解决这个问题,有学者提出了一种基于GCN的图形自动编码器。还有学者结合GCN和RNN,来学习用户对项目评分的隐藏步骤。

3、Traffic

交通拥堵已成为现代城市的一个热点社会问题。准确预测交通网络中的交通速度、交通量或道路密度,在路线规划和流量控制中至关重要。有学者采用基于图的时空神经网络方法来解决这些问题。他们模型的输入是一个时空图。在这个时空图中,节点由放置在道路上的传感器表示,边由阈值以上成对节点的距离表示,每个节点都包含一个时间序列作为特征。目标是预测一条道路在时间间隔内的平均速度。另一个有趣的应用是出租车需求预测。这有助于智能交通系统有效利用资源,节约能源。

4、Chemistry

在化学中,研究人员应用图神经网络研究分子的图结构。在分子图中,原子为图中的节点,化学键为图中的边。节点分类、图形分类和图形生成是分子图的三个主要任务,它们可以用来学习分子指纹、预测分子性质、推断蛋白质结构、合成化合物。

5、Others

除了以上四个领域外,图神经网络还已被探索可以应用于其他问题,如程序验证、程序推理、社会影响预测、对抗性攻击预防、电子健康记录建模、脑网络、事件检测和组合优化。

fasterrcnn网络原理与流程梳理

FasterRCNN网络是一种二阶段的目标检测方法,目标检测方法旨在给定的图片中找出目标物体的坐标位置和所属类别。我们在这里来梳理一下训练的大致流程谨供参考,我参考的算法实现为:https://github.com/chenyuntc/simple-faster-rcnn-pytor... 查看详情

cnn卷积神经网络基础理论知识

目录卷积卷积神经网络特征图感受野CNN特点局部卷积参数共享多卷积核池化处理多通道多层处理卷积说到卷积,就不得不提互相关(cross-orrelation)。卷积实质就是一种互相关运算,只不过要在进行互相关运算前,要把(kernal)上下左... 查看详情

基于空洞卷积的多尺度2d特征融合网络(代码片段)

  空洞卷积模块2,来替代编码网络中每一层的卷积,图3.4展示了空洞卷积模块结构,该模块共使用了五个不同尺度的卷积组,分别用扩张率1,2,4,8,16的空洞卷积进行组合,第一组为扩张率为1的3×3卷积,可以得到每一... 查看详情

08-gnn图机器学习之图神经网络

图神经网络nodeembedding回顾了之前node2vec的例子以及深度学习卷积的一些基础浅层encoder的局限性:参数数量O(v):节点间没有共享参数,每个节点有自己的embedding不能表征未见过的节点没有综合考虑节点特征本节学习图神经网络,多... 查看详情

卷积神经网络 - 如何获得特征图?

】卷积神经网络-如何获得特征图?【英文标题】:Convolutionalneuralnetwork-Howtogetthefeaturemaps?【发布时间】:2010-11-2118:00:21【问题描述】:我阅读了一些关于卷积神经网络的书籍和文章,似乎我理解了这个概念,但我不知道如何把它... 查看详情

图神经网络--gnns

转自:https://zhuanlan.zhihu.com/p/75307407目录一、什么是图神经网络二、有哪些图神经网络三、图神经网络的应用一、什么是图神经网络?在过去的几年中,神经网络的兴起与应用成功推动了模式识别和数据挖掘的研究。... 查看详情

自然语言处理(nlp)基于lstm的谣言检测(代码片段)

...测(文章目录)前言(一)、任务描述本次实践使用基于循环神经网络(RNN)的谣言检测模型,将文本中的谣言事件向量化,通过循环神经网络的学习训练来挖掘表示文本深层的特征,避免了特征构建的问题,并能发现那些不容易被... 查看详情

基于注意力机制的图神经网络gat的一些理解以及dgl官方代码的一些理解(代码片段)

文章目录前言GAT传播公式多头注意力机制DGL中的GAT实例参考前言昨天的R-GCN是对GCN的一种改进,因为考虑了关系,那么今天的GAT也是对GCN的一种改进,就算使用注意力机制来确定每个节点更新特征时,邻居节点传... 查看详情

一文让你彻底了解卷积神经网络

介绍卷积神经网络(ConvolutionalNeuralNetwork,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。它包括卷积层(convolutionallayer)和池化层(poolinglayer)。对比:卷积神经网... 查看详情

一文让你彻底了解卷积神经网络

卷积神经网络(ConvolutionalNeuralNetwork,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。它包括卷积层(convolutionallayer)和池化层(poolinglayer)。对比:卷积神经网络、... 查看详情

基于bp神经网络+hog特征提取的视频中车辆车牌识别算法仿真

步骤一:定位和跟踪       这里,没有直接采用之前的方案,是因为在设计的时候,发现直接采用颜色等直接特征提取然后进行二值化处理的方法,如果视频中出现颜色类似的区域,则很有可能错误的定... 查看详情

自然语言处理nlp——图神经网络与图注意力模型(gnngcngat)(代码片段)

目录系列文章目录一、图神经网络1.图与图嵌入2.GNN动机2.1CNN的缺陷与非结构性数据2.2图嵌入的缺陷3.GNN详解3.1GNN简介3.2GNN模型3.3GNN框架3.4GNN局限与优化二、图卷积神经网络1.卷积2.GCN详解2.1GCN动机2.2GCN简介2.3GCN思想与模型2.4GCN核... 查看详情

一种图神经网络架构:graphsage(代码片段)

一种图神经网络架构:GraphSAGE简介提出了一个通用框架,称为GraphSAGE(SAmple和aggreGatE),用于归纳节点嵌入。GraphSAGE是一种流行的图神经网络架构,具有如下的特点11、利用的特征:与基于矩阵分解的... 查看详情

卷积神经网络

参考技术A卷积神经网络(ConvolutionalNeuralNetworks,CNN)是一种前馈神经网络。卷积神经网络是受生物学上感受野(ReceptiveField)的机制而提出的。感受野主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质。比如在视... 查看详情

gcn图卷积网络入门详解

...术A在这篇文章中,我们将仔细研究一个名为GCN的著名图神经网络。首先,我们先直观的了解一下它的工作原理,然后再深入了解它背后的数学原理。字幕组双语原文:【GCN】图卷积网络(GCN)入门详解英语原文:GraphConvolutionalNetwor... 查看详情

图神经网络gnn介绍

目录标题图神经网络基础图基本模块定义图的邻接矩阵点特征的更新(重构)多层GNN图卷积GCN模型GCN基本思想网络层数:基本计算图注意力机制graphattentionnetworkT-GCN序列图神经网络图相似度图神经网络基础图基本模块... 查看详情

卷积神经网络中特征图大小计算公式总结

W:输入特征图的宽,H:输入特征图的高K:kernel size卷积核宽和高,P:padding(特征图需要填充的0的个数),S:stride步长width_out:卷积后输出特征图的宽,height_out:卷积后输 查看详情

基于图卷积网络的图深度学习

基于图卷积网络的图深度学习先简单回顾一下,深度学习到底干成功了哪些事情!深度学习近些年在语音识别,图片识别,自然语音处理等领域可谓是屡建奇功。ImageNet:是一个计算机视觉系统识别项目,是目前世界上图像识别... 查看详情