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。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
最近,对于神经网络的研究日益深入,引起了广泛关注。神经网络是一种能够对数据进行建模和分析的神经网络模型。它可以处理任意结构的形数据,如社交网络、蛋白质互作网络等。 在过去的几年中,研究者们提出了许多神经网络的模型和方法。然而,这些方法仍然面临一些挑战,例如有效地处理大型形数据、学习高质量的嵌入表示以及推理和预测复杂的结构属性等。 为了克服这些挑战,研究人员开始通过增加神经网络的深度来探索更深的神经网络模型。深度模型具有更强大的表达能力和学习能力,可以更好地捕捉数据中的关系和模式。这些深层神经网络可以通过堆叠多个神经网络层来实现。每个神经网络层都会增加一定的复杂性和抽象级别,从而逐渐提高数据的表达能力。 除了增加深度外,研究人员还提出了一些其他的改进来进一步提高神经网络的性能。例如,引入注意力机制可以使模型能够自动地选择重要的节点和边来进行信息传播。此外,研究人员还研究了如何通过引入卷积操作来增强数据的局部性,从而提高神经网络模型的效果。 综上所述,对于更深层的神经网络的研究将在处理大规模形数据、学习高质量的表示以及进行复杂结构属性的推理方面取得更好的性能。随着深度神经网络的推广和应用,我们可以预见它将在许多领域,如社交网络分析、推荐系统和生物信息学中发挥重要作用,为我们带来更多的机遇和挑战。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值