Towards Sparse Hierarchical Graph Classifiers

在这里插入图片描述
预备知识:
在 numpy中,矩阵的元素操作对矩阵维度的要求,通过一种叫做 broadcasting的机制实现。我们称两个矩阵相容(compatible),如果它们相互对应的维度(行对行,列对列)满足以下条件:

  1. 对应的维度均相等, 或 有一个维度的大小是1
  2. 矩阵的Hadamard 乘积是一个元素运算,就像向量一样。对应位置的值相乘产生新的矩阵。
  3. 在 numpy 中,只要矩阵和向量的维度满足 broadcasting的要求,你便可以对他们使用 Hadamard 乘积运算.
    在这里插入图片描述

动机:

节点嵌入的学习对图节点分类与连接预测是非常有效的,然而现在的节点分类只停留在初级水平,也就是只是用简单的全局池化去聚集节点特征,或者是手动设计,固定的启发式的为图结构设计粗化层次。前面的一个比较大的提升是可微分粗化池化层(DIFFPOOL),其像一个CNNs的下采样,用自适应的方法对图的size进行reduce,但是之前的池化复杂度达到了平方阶,所以不能推广到大的图。所以现在我们结合图神经网络设计的几个最新进展,以证明在不牺牲稀疏性的情况下,具有竞争力的层次图分类结果是可能的。

模型

准备工作:

  • 节点特征: X ∈ R N × F \mathbf{X}\in \mathbb{R}^{N\times F} XRN×F
  • 邻接矩阵: A ∈ R N × N \mathbf{A}\in \mathbb{R}^{N\times N} ARN×N
    如果我们的节点没有特征可用,则可以使用节点的度作为人造特征,比如可以用one-hot编码。这里邻接矩阵采用二值对称(即无向无权图)
    类似CNN,我们这里用了readout层类比pooling层,它将学习的representation转换成了固定长度的向量表示(dualMPNN里边有用到),用于最后的预测(比如一个简单的MLP)。

卷积层

在这里插入图片描述

  • A ^ = A + I N \hat{\mathbf{A}}=\mathbf{A}+\mathbf{I}_N A^=A+IN
  • D ^ i j = ∑ j A ^ i j \hat{D}_{ij}=\sum_j \hat{A}_{ij} D^ij=jA^ij
  • σ = R e l u \sigma=Relu σ=Relu
  • θ , θ ′ ∈ R F × F ′ \mathbf{\theta},\mathbf{\theta}' \in \mathbb{R}^{F\times F'} θθRF×F
    前一项是卷积,后面一项相当于是跳跃连接(skip-connect)

池化层

之前DIFFPOOL中是吧N个点变成[kN]个簇。现在我们是学graph U-Net的思想,将节点减去[kN]个,k属于0到1之间。
在这里插入图片描述 为了可以决定哪些节点是要留下来的,我们采用节点得分,这个得分用网络自己学习出来,所以要是可微的操作,这里定义一个向量 p ⃗ ∈ R F × 1 \vec{p}\in \mathbb{R}^{F\times 1} p RF×1,与X相乘之后可以得到每个节点的得分,按照得分排名可以选择留下来的指标,大概流程是:
在这里插入图片描述

  • ||.||为二范数
  • y ⃗ ∈ R N × 1 \vec{y}\in \mathbb{R}^{N\times 1} y RN×1
  • top-k表示从给定向量中选出前k个指标
  • ⊙ \odot 是哈达玛乘积,预备知识有
  • . i ⃗ ._{\vec{i}} .i 表示指标操作,从矩阵中选出指定的 i i i个,X的话是选出 i 列,A的话行列都取。

Redout layer

我们经经过图卷积之后的矩阵都不便用于预测等操作,都是将这个得到的representation变成一个fixed-size的representation,最简单的方式就是直接将所有节点的嵌入表示都加起来,最后取平均,就像变成一个节点一样。这里我们采用全局最大节点嵌入与全局平均拼接起来,之后再利用JK-net架构,最后把所有中间的特征矩阵 X l X^{l} Xl加起来。
在这里插入图片描述

  • N l N^{l} Nl是图节点的数量,
  • x ⃗ i l \vec{x}_i^{l} x il是第 i 个节点的特征,
  • || 表示拼接

最后将 s ⃗ ( l ) \vec{s}^{(l)} s (l)加起来,即
s ⃗ = ∑ l = 1 L s ⃗ ( l ) \vec{s}=\sum_{l=1}^L \vec{s}^{(l)} s =l=1Ls (l)
然后再放进MLP中进行预测,最后可以得到预测。

实验

在这里插入图片描述 在这里插入图片描述文章的主要亮点只是占的内存少而已,其他还不如DIFFPOOL。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值