文章目录

  • 1. 前言
  • 2. GG-NN
  • 3. GGS-NN
  • References
  • 论文地址:https://arxiv.org/abs/1511.05493
  • 源码地址:ggnn
  • slides:ggnn-talk
  • 关键词:RNN, Graph Sequential tasks

1. 前言

这篇论文提出了一种基于GRU1的GNN,能够进行输出单个值的任务(如结点分类、图分类等),也能完成序列输出的任务(如最短路、欧拉环等)。论文中使用bAbI2(bAbI是Facebook AI推出的文本理解/推理任务生成器)任务和程序验证的任务对GG-NN, GGS-NN进行了测试均达到了很好的效果。

论文中讨论的是针对有向图的GNN。那么是如何表示有向图的GNN呢?
对于有向图 G = ( V , E ) \mathcal{G} = (\mathcal{V}, \mathcal{E}) G=(V,E),其邻接矩阵由两部分组成 A = [ A i n , A o u t ] A=[A_{in}, A_{out}] A=[Ain​,Aout​], A i n , A o u t A_{in},A_{out} Ain​,Aout​分别为入,出邻接矩阵。 G \mathcal{G} G中每个结点 v v v都定义了其 I N IN IN和 O U T OUT OUT结点集,分别表示指向 v v v的边的起始结点集和从 v v v出发的边的终点结点集。 v v v的邻居结点集 N B R NBR NBR定义为 I N ∪ O U T IN \cup OUT IN∪OUT,并且对于边和结点都可以有各自的标签。

论文中对GNN进行了回顾。GNN将图数据映射到输出的过程中,可以划分为两个部分:PROPAGATION MODEL, OUTPUT MODEL,分别用来计算节点的表征和将节点表征映射到输出。

论文针对非序列的输出和序列的输出分别提出了GG-NNs(Gated Graph Neural Networks)和GGS-NNs(Gated Graph Sequence Neural Networks)。其中GG-NNs是基于GNN的,不同的是使用了GRU来构建PROPAGATION MODEL 和 OUTPUT MODEL。用于输出序列的GGS-NN则是在GG-NN的基础上构建的。接下来先介绍一下GRU1,在介绍GG-NN和GGS-NN。

GRU(Gated Recurrent Unit) 门控循环单元。GRU可以视为LSTM的变体,与LSTM很相似。与常规的RNN中的单元相比,门控神经单元间的连接是不变的,但每个门控神经单元内部都是经过精心设计的。作为门控RNN能够学会决定何时清除状态。

2. GG-NN

GG-NN 的过程如下图所示。

从上图中可以看出,GG-NN的输入是 “Annotate nodes with problem specific information”,在论文中称为"Node Annotations",这与之前提到的结点标签并不是同一个,node annotations 是在特定问题下所定义的“标签/特征”。根据特定的问题领域会为每个节点生成annotation(如何生成annotations?),在输入层会将annotation用0填充成固定的大小作为网络的输入。结点的annotations通过PROPAGATION MODEL—基于GRU的t层(论文中成t-steps, 但根据我的理解是指网络有t层)网络,再将计算后的数据通过OUTPUT MODEL输出任务结果。

3. GGS-NN

GGS-NN 的过程如下。

从上图中也能看出,GGS-NN是在GG-NN的基础上搭建的。GGS-NN的输入也是Node Annotations。每一步输入的Annotations是根据上一步的的隐层的输出转换而来的。每一步中的隐层输出会分别传给两个GG-NN,一个用来产生这一步的输出,另一个则用来产生下一步的输入,即下一步输入的node annotations。其实,在GGS-NN中除了上述两个GG-NN外,还有一个GG-NN用于在每一步确定是否继续,该GG-NN会在graph-level(把图看成一个特殊的结点,与图中的所有结点都有联系)上来进行一个二分类。

论文中使用bAbI任务和程序逻辑验证进行测试。bAbI任务中将实体和实体间关系看作点和边(有点类似知识图谱),利用GG-NN/GGS-NN来进行推理。为解决程序验证中的program invariants 问题是这篇论文的一个主要出发点。通过将程序运行过程中heap的状态看作图数据,在这些数据的基础上以序列的方式生成程序的sepration logic3 表达式。

参考资料:

  • 门控循环单元(GRU)的基本概念与原理
  • Illustrated Guide to LSTM’s and GRU’s: A step by step explanation


欢迎访问我的个人博客~~~

References


  1. Kyunghyun Cho, Bart van Merrienboer, Caglar Gulcehre, Dzmitry Bahdanau, Fethi Bougares, Holger
    Schwenk, and Yoshua Bengio. Learning phrase representations using rnn encoder-decoder for statistical
    machine translation, 2014. ↩︎ ↩︎

  2. Jason Weston, Antoine Bordes, Sumit Chopra, Alexander M. Rush, Bart van Merriënboer, Armand Joulin,
    and Tomas Mikolov. Towards ai-complete question answering: A set of prerequisite toy tasks, 2015. ↩︎

  3. Peter O’Hearn, John Reynolds, and Hongseok Yang.
    Local reasoning about programs that alter data
    structures. In Laurent Fribourg, editor, Computer Science Logic, pages 1–19, Berlin, Heidelberg, 2001.
    Springer Berlin Heidelberg. ↩︎

Gated Graph Sequence Neural Networks相关推荐

  1. GGNN(Gated Graph Sequence Neural Networks)

    GGNN研究意义: 1.提升在图结构中长期的信息传播 2.消息传播中使用GRU,使用固定数量的步骤T,递归循环得到节点表征 3.边的类型,方向敏感的神经网络参数设计 4.多类应用问题,展示了图神经网络 ...

  2. GGNN:GATED GRAPH SEQUENCE NEURAL NETWORKS

    论文 相较于之前的文章,模型最大的修改即为,使用门控循环单元并且将网络的展开循环控制在一个固定的次数. 一个可达模型: 例如网络需要在给定一个图的情况下,判断节点s是否可达节点t:        模型 ...

  3. 图神经网络(二十八)GATED GRAPH SEQUENCE NEURAL NETWORKS

    本文收录于ICLR2016,作者来自于多伦多大学,文章比较老了,但是很经典.GGNN是一种基于GRU的经典空域模型,一个基本的感觉就是GNN+Gate.我们现在看的大部分GNN模型都是基于消息传递机制 ...

  4. Graph Convolutional Neural Networks for Web-Scale Recommender Systems(用于Web级推荐系统的图形卷积神经网络)

    Graph Convolutional Neural Networks for Web-Scale Recommender Systems 用于Web级推荐系统的图形卷积神经网络 ABSTRACT R ...

  5. Graph Convolutional Neural Networks for Predicting Drug-Target Interactions

    1. 摘要 2. 数据集 DUDE数据集改进 DUDE-chemBl负样本数据集 最大无偏数据集(MUV) 3. 图构建 pocket graph molecuar graph 4. 口袋pretra ...

  6. 文献学习(part12)--GMNN: Graph Markov Neural Networks

    学习笔记,仅供参考,有错必纠 文章目录 GMNN: Graph Markov Neural Networks Abstract Introduction 相关著作 统计关系学习 基于图的半监督分类 图 ...

  7. Action Recognition Using Attention-Joints Graph Convolutional Neural Networks翻译

    对Action Recognition Using Attention-Joints Graph Convolutional Neural Networks(19年ieee上的一篇)这篇论文的翻译,可 ...

  8. 【论文导读】- Variational Graph Recurrent Neural Networks(VGRNN)

    文章目录 文章信息 摘要 Background Graph convolutional recurrent networks (GCRN) Semi-implicit variational infe ...

  9. 论文浅尝 | GMNN: Graph Markov Neural Networks

    论文笔记整理:吴锐,东南大学硕士研究生,研究方向为自然语言处理 来源:ICML 2019 链接:http://proceedings.mlr.press/v97/qu19a/qu19a.pdf 问题定 ...

最新文章

  1. .htaccess的重写规则
  2. Asp.net 不使用SQLDMO实现数据库备份和还原
  3. 深度解读 OpenYurt :边缘自治能力设计解析
  4. PHPstorm相同变量标识
  5. 安装使用大key工具rdb_bigkeys
  6. struts.xml mysql_mybatis3.3 + struts2.3.24 + mysql5.1.22开发环境搭建及相关说明
  7. php 识别语种,HYPHP增加多国语言支持 PHP通过用户浏览器判断来源国家方案
  8. c++new时赋初值_优质 quot;嵌入式C编程quot; 必备指南
  9. JavaScript学习笔记(一)--JS基础【入门必看】
  10. DTO,VO,POJO,JavaBeans之间的区别?
  11. hdu 4638 Group
  12. leetcode刷题日记-846. 一手顺子
  13. 平行四边形的定义以及判定和性质
  14. matlab 类型强制转换,关于数据类型强制转换的分析和应用
  15. 逃亡97天!这位麻省理工博士生落网
  16. Druid连接池简介和配置
  17. vscode源代码管理不显示修改的文件夹
  18. html怎么把图片做成抖动效果,CSS图片抖动和JS点击特效
  19. flowable-ui(v6.7.2)简单的请假流程审批操作(一)
  20. 计算机测试的论文,软件测试毕业论文-软件工程论文-计算机论文.docx

热门文章

  1. EVPN配置实例(二)——EVPN分布式网关
  2. 西南科技大学Linux实验名称:实验六 Linux环境的Shell程序设计
  3. 头歌--Java入门 - 数组进阶
  4. 当初不应该学php歌词,(翻唱)[翻唱]不分手的恋爱三国杀有何不可 - wo991.net 我99大型伴奏下载翻唱网站--刘浩伟...
  5. php获取xml cdata_php提取cdata内容
  6. DNS服务——搭建企业内网DNS服务器的作用
  7. 网上开店,网店系统选择有高招
  8. 【uvm】 $sformat与 $sformatf
  9. ICPC2017香港赛区游记
  10. bower到底是啥?