转摘GNN图神经网络

侍竹阅读量 16

未完待续...

目录

  • 表示学习
  • 一、表示学习定义
  • 二、基于重构损失的方法---自编码器
  • 三、基于对比损失的方法---word2vec
  • 负采样
  • 词向量可视化
  • 图卷积神经网络
  • GCN
  • GNN
  • GAT
  • R-GCN
  • 三大通用框架
  • MPNN
  • NLNN
  • GN
  • 参考文章

表示学习

一、表示学习定义

表示学习:自动地学习出有效的特征,并提高最终机器学习模型的性能。

好的表示:

  • 一个好的表示应该具有很强的表示能力,即同样大小的向量可以表示更多信息。
  • 一个好的表示应该使后续的学习任务变得简单,即需要包含更高层的语义信息。
  • 一个好的表示应该具有一般性,是任务或领域独立的。虽然目前的大部分表示学习方法还是基于某个任务来学习,但我们期望其学到的表示可以比较容易的迁移到其他任务上
    我们经常使用两种方式来表示特征:
  • 离散表示(如:one-hot):研究对象表示为向量,这个向量只在某个维度上值为1,其余维度为0,不需要学习
  • 分布式表示(如:词向量、颜色都是由三原色表示):通过某种方式得到一个低维稠密的向量,需要学习

端到端学习是很好的表示学习方法:输入图像就行,而不是需要输入特征

二、基于重构损失的方法---自编码器

自编码器是一种表示模型,是以输入数据为参考的无监督学习模型,可以用于数据降维和特征提取

自编码器是基于深度学习进行表示学习的方法,将输入映射到某个特征空间,再将这个特征空间映射回输入空间进行重构。结构上看就是 encoder-decoder 的形式

三、基于对比损失的方法---word2vec

word2vec 中心思想就是用上下文表示词

负采样

词向量可视化

图卷积神经网络

GCN

GCN的概念首次提出于ICLR2017(成文于2016年):作者博客 GNN、DeepWalk、node2vec等都是为了处理图结构数据提出的算法

为何提出图卷积神经网络?

现有的其他网络对于图结构的数据 效果不好

CNN主要针对二维数据,图片结构上的平移不变性:一个小窗口无论移动到图片的哪一个位置,其内部的结构都是一模一样的,因此CNN可以实现参数共享

RNN主要针对一位数据,通过各种门的操作,使得序列前后的信息互相影响,从而很好地捕捉序列的特征

GNN

GAT

R-GCN

三大通用框架

MPNN

J. Gilmer等人(J. Gilmer et. al. 2017)提出了消息传递神经网络(message passing neural network, MPNN),统一了各种图神经网络和图卷积网络方法。

MPNN是监督学习的框架,它抽象了几个最流行的用于处理图结构数据的模型的相似性。模型包括两个阶段,信息传递阶段和读出阶段。

信息传递阶段:

就是传播阶段,会运行T次。是以信息传递函数和端点更新函数为定义的。

读出阶段:

读出阶段会使用读出函数来对整个图计算特征向量。

NLNN

X. Wang等人(X. Wang et. al. 2017)提出了非局部神经网络(non-local neural network, NLNN),它结合了几种"self-attention"风格的方法。

NLNN是用来对深度神经网络的长范围的独立性。non-local操作来源于经典non-local mean操作在计算机视觉上的应用。non-local操作会在一个位置上计算响应,同时加权了的特征和在所有点上。这些位置可以是空间、时间或者空间时间。因此NLNN可以看做是不同的自注意方法的统一。

其中,i是输出位置的索引,j是指出所有可能位置的索引,f函数计算i和j之间的缩放值,这可以代表他们之间的联系,g函数代表了输入的变换以及公式的系数用于正则化结果。当使用不同的f和g函数时,将得到不同的non-local操作实例,最简单的g函数就是线性变换了。以下是一些可能选择的f函数:

Gaussian;

Embedded Gaussian;

Dot product;

Concatenation;

P. W. Battaglia等人(P. W. Battaglia et. al. 2018)提出了图网络(graph network, GN),它统一了统一了MPNN和NLNN方法以及许多其他变体,如交互网络(Interaction Networks),神经物理引擎(Neural Physics Engine),CommNet,structure2vec,GGNN,关系网络(Relation Network),Deep Sets和Point Net。

GN

首先是图的定义然后是GN块,核心GN计算单元,计算步骤,最后是GN的基本设计原则。

Graph definition:

图被定义为三元组,(全局属性,节点集合,边集合);

GN block:

GN块包括三个更新函数和三个聚合函数;

Computation steps;

Design Principles:

GN的设计基于三个基本原则:

flexible representation

configurable within-block structure

composable multi-block architectures

参考文章

图卷积神经网络(GCN)


复制代码
    ```
    

    ===========================
    【来源: 51CTO】
    【作者: 浪里摸鱼】
    【原文链接】 https://blog.51cto.com/u_15995006/6172545
    声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。
    ```
标签: 深度学习
0/300
全部评论0
0/300