• 论文解读(SAGPool)《Self-Attention Graph Pooling》


    论文信息

    论文标题:Self-Attention Graph Pooling
    论文作者:Junhyun Lee, Inyeop Lee, Jaewoo Kang
    论文来源:2019, ICML
    论文地址:download 
    论文代码:download

    1 Introduction

      图池化三种类型:

      • Topology based pooling;
      • Hierarchical pooling;(使用所有从 GNN 获得的节点表示)
      • Hierarchical pooling;

      关于 Hierarchical pooling 聚类分配矩阵:

        S(l)=softmax(GNNl(A(l),X(l)))A(l+1)=S(l)A(l)S(l)(1)

      gPool 取得了与 DiffPool 相当的性能,gPool 需要的存储复杂度为 O(|V|+|E|),而 DiffPool 需要 O(k|V|2),其中 VEk 分别表示顶点、边和池化率。gPool 使用一个可学习的向量 p 来计算投影分数,然后使用这些分数来选择排名靠前的节点。投影得分由 p 与所有节点的特征之间的点积得到。这些分数表示可以保留的节点的信息量。下面的公式大致描述了 gPool 中的池化过程:

        y=X(l)p(l)/p(l)idx=toprank(y,kN)A(l+1)=A(l)idx,idx(2)

    2 Method

      框架如下:

       

    2.1. Self-Attention Graph Pooling

    Self-attention mask

      本文使用图卷积来获得自注意分数:

        Z=σ(˜D12˜A˜D12XΘatt)(3)

      其中,自注意得分 ZRN×1、邻接矩阵 ˜ARN×N、注意力参数矩阵 ΘattRF×1、特征矩阵 XRN×F、度矩阵 ˜DRN×N

      这里考虑节点选择方法,即使输入不同大小和结构的图,也会保留输入图的部分节点。

        idx=toprank(Z,kN)Zmask =Zidx(4)

      基于自注意得分 Z ,选择保留前 kN 个节点,其中 k(0,1] 代表着池化率(pooling ratio),Zmask 是 feature attention mask。。

    Graph pooling

      接着获得新特征矩阵和邻接矩阵:

         X=Xidx,:Xout =XZmask Aout =Aidx,idx(5)

      其中,  is the broadcasted elementwise product。

    Variation of SAGPool

      利用图特征矩阵 X 和拓扑结构 A ,计算注意力得分矩阵 Z 的通用形式:

        Z=σ(GNN(X,A))(6)

      比如  SAGPool augmentation ,加入二跳邻居信息:

        Z=σ(GNN(X,A+A2))(7)

      比如  SAGPool serial ,堆叠多层 GNN:

        Z=σ(GNN2(σ(GNN1(X,A)),A))(8)

      比如  SAGPool parallel ,平均多重注意力分数。M 个 GNN 的平均注意得分如下:

        Z=1Mmσ(GNNm(X,A))(9)

    2.2 Model Architecture

      本节用来验证模块的有效性。

    Convolution layer

      图卷积 GCN:

        h(l+1)=σ(˜D12˜A˜D12h(l)Θ)(10)

      与 Eq.3 不同的是,ΘRF×F

    Readout layer

      根据 JK-net architecture 的思想:

        s=1NNi=1ximaxNi=1xi(11)

      其中:

      • N 代表着节点的个数;
      • xi 代表着第 i 个节点的特征向量;

    Global pooling architecture & Hierarchical pooling architecture

      对比如下:

      

    3 Experiments

    数据集

      

    基线实验

      

    SAGPool 的变体

      

    4 Conclusion

      本文提出了一种基于自注意的SAGPool图池化方法。我们的方法具有以下特征:分层池、同时考虑节点特征和图拓扑、合理的复杂度和端到端表示学习。SAGPool使用一致数量的参数,而不管输入图的大小如何。我们工作的扩展可能包括使用可学习的池化比率来获得每个图的最优聚类大小,并研究每个池化层中多个注意掩模的影响,其中最终的表示可以通过聚合不同的层次表示来获得。


    __EOF__

  • 本文作者: Blair
  • 本文链接: https://www.cnblogs.com/BlairGrowing/p/16230073.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    Java项目:SSM婚纱影楼摄影商城项目网站
    Django — 配置和路由
    Nacos注册中心细节分析
    Python写一个MES系统和ERP系统协同任务流程
    微信小游戏adapter对document和windows 支持不足的错误
    微信小程序——组件、API
    在群晖上安装Nextcloud-AIO详解
    在Windos 10专业版搭建Fyne(Go 跨平台GUI)开发环境
    tomcat 部署web项目
    Temporal Action Proposal Generation with Transformers TAPG transformer论文阅读笔记
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/16230073.html