作者:Hongyang Gao , Shuiwang Ji
美国德克萨斯A&M大学计算机科学与工程系
来源:ICML 2019
论文链接:Arxiv: https://arxiv.org/abs/1905.05178
github链接: https://github.com/HongyangGao/gunet
问题:图上的池化和上采样操作
提出:新的图池(gPool)和非图池(gUnpool)操作
- gPool层根据可训练投影向量上的标量投影值自适应地选择一些节点以形成较小的图
- gUnpool层作为gPool层的反向操作。gUnpool层使用在相应的gPool层中选择的节点的位置信息将图形恢复为其原始结构
- 基于gPool和gUnpool层,开发了一个基于graph的编码器-解码器模型,称为graph U-Nets
1 introduction
- U-Net: U-Net网络详解_遥远的她-CSDN博客_u-net
- U-Net是比较早的使用全卷积网络进行语义分割的算法之一,论文中使用包含压缩路径和扩展路径的对称U形结构在当时非常具有创新性,且一定程度上影响了后面若干个分割网络的设计,该网络的名字也是取自其U形形状
- U-Net的实验是一个比较简单的ISBI cell tracking数据集,由于本身的任务比较简单,U-Net紧紧通过30张图片并辅以数据扩充策略便达到非常低的错误率,拿了当届比赛的冠军
- 网络是一个经典的全卷积网络(即网络中没有全连接操作)。网络的输入是一张572*572 的边缘经过镜像操作的图片(input image tile),关于“镜像操作“会在1.2节进行详细分析,网络的左侧(红色虚线)是由卷积和Max Pooling构成的一系列降采样操作,论文中将这一部分叫做压缩路径(contracting path)。压缩路径由4个block组成,每个block使用了3个有效卷积和1个Max Pooling降采样,每次降采样之后Feature Map的个数乘2,因此有了图中所示的Feature Map尺寸变化。最终得到了尺寸为 32*32 的Feature Map
- 网络的右侧部分(绿色虚线)在论文中叫做扩展路径(expansive path)。同样由4个block组成,每个block开始之前通过反卷积将Feature Map的尺寸乘2,同时将其个数减半(最后一层略有不同),然后和左侧对称的压缩路径的Feature Map合并,由于左侧压缩路径和右侧扩展路径的Feature Map的尺寸不一样,U-Net是通过将压缩路径的Feature Map裁剪到和扩展路径相同尺寸的Feature Map进行归一化的(即图1中左侧虚线部分)。扩展路径的卷积操作依旧使用的是有效卷积操作,最终得到的Feature Map的尺寸是388*388 。由于该任务是一个二分类任务,所以网络有两个输出Feature Map
2 Related Work
- 经典GCN
- 图池化操作
3 Graph U-Nets
3.1 Graph Pooling Layer
- 图池化操作:减小特征图的大小(可理解为非线性下采样),扩大感受野,从而提高泛化能力和性能
- 分类
- 本地池化
- 全局池化:对所有输入单元执行下采样操作,从而将每个特征映射减少为单个数字
- k-max池化:每个特征图中选择k-max单元
- 转移到图上遇到的问题:
- 图中的节点之间没有局部性信息--->分区操作不适用于图
- 全局池操作将所有节点缩减为一个节点,这限制了网络的灵活性
- k-max 池化操作输出可能来自图中不同节点的k个最大单元,从而导致所选节点的连接不一致
- graph polling(gPool):自适应地选择节点子集以形成新的但更小的图
- 将所有节点特征投影到1D,执行k-max池
- 由于选择基于每个节点的1D示意图(1D footprint),因此新图形中的连接在节点之间是一致的
- 给定一个具有特征向量𝑥𝑖的节点𝑖,标量投影y𝑖=𝑥𝑖𝒑𝒑 。这里,𝑦𝑖测量了当投影到𝑝方向时,节点可以保留多少信息
- 通过采样节点,希望从原始图中保留尽可能多的信息,因此选择𝑝上标量投影值最大的节点来形成一个新的图
- 具体操作
3.2 Graph Unpooling Layer
- 记录在相应的gPool层中选择的节点的位置,并使用此信息将节点放置回其在图形中的原始位置
3.3 Graph U-Nets Architecture
- 编码器(池化+GCN)-解码器(反池化+GCN)架构
- 在每个gPool层之前都有一个GCN层,从而使gPool层能够隐式地捕获图形中的拓扑信息
3.4 Graph Connectivity Augmentation via Graph Power 基于图幂的图连通性增强
- 对一些重要节点进行采样,形成一个新的图,用于高级特征编码,池化之后,一些边会消失,影响了图的连通性,进而影响到聚合--->我们需要增加池图中节点之间的连通性
- 方法:使用图幂,邻接矩阵的𝑘=2次方等于𝑘跳机以内可以连接的点
3.5 Improved GCN Layer
- 希望给节点本身的特征更高的权重,因此将自环的操作由
- 改为
4 Experimental Study
- 直推式学习:在训练期间未标签的节点可以被访问, 因而可以学习到图结构特征
- g-U-Nets和GCN之间的唯一区别是使用了包含gPool和gUnpool层的编码器-解码器体系结构。这些结果证明了g-U网络在网络嵌入中的有效性
- 归纳学习:测试数据在训练期间不可用,这意味着训练过程不使用测试数据的图形结构
- 在相对较大的图形数据集上评估,这些数据集选自图形分类任务中使用的常用基准测试
- 有一项比Diff-Pool_DET差,找补:DiffPool使用连接预测的辅助任务来稳定,说明DiffPool本身不稳定;而本文模型只使用了标签进行训练,没有其他辅助任务,因此本文模型稳定
- 有池化反池化和没有的对比
- 有无边增强对比
- 不同深度的对比
- 参数对比
5 conclusion
- gPool和gUnpool层
- U-Nets(gU-Nets)体系结构
- 2nd图幂来改善图的连通性