【译】Relational inductive biases, deep learning, and graph network(未完成)

关系归纳偏置、深度学习、图网络

摘要

  人工智能(AI)最近经历了一次复兴,在视觉、语言、控制和决策等关键领域取得了重大进展。这在一定程度上要归因于廉价的数据和廉价的计算资源,因为这些资源符合深度学习的自然优势。然而,在不同的压力下发展起来的人类智力的许多决定性特征,仍然是当前方法无法实现的。特别是,超越个人经验的概括——从婴儿时期开始的人类智能的标志——仍然是现代人工智能的一项艰巨挑战。

  以下是部分工作研究,部分回顾和部分统一。我们认为组合泛化必须是AI实现类似人类能力的首要任务,结构化表示和计算是实现这一目标的关键。就像生物学使用自然和培养合作一样,我们拒绝“手工工程”和“端到端”学习之间的错误选择,而是倡导一种从其互补优势中获益的方法。我们探索如何在深度学习架构中使用关系归纳偏差来促进对实体,关系和组成它们的规则的学习。我们为AI工具包提供了一个新的构建模块,具有强大的关系归纳偏差 - 图网络 - 它概括泛化和扩展了在图形上运行的神经网络的各种方法,并为操纵结构化知识和生成结构化行为提供了直接的界面。我们讨论图网络如何支持关系推理和组合泛化,为更复杂,可解释和灵活的推理模式奠定基础。

1 引言

  人类智慧的一个关键特征是能够“无限地使用有限的方法”(Humboldt,1836; Chomsky,1965),其中一小部分元素(如文字)可以以无限的方式有效地组合在一起(例如,组成新句子)。这反映了组合泛化的原则,即从已知构建块构建新的推论,预测和行为。在这里,我们探讨如何通过将学习偏向于结构化表示和计算,特别是在图上运行的系统来提高现代AI的组合泛化能力。

  人类组合泛化的能力,在很大程度上取决于我们表达关系结构和推理关系的认知机制。我们将复杂系统表示为实体及其相互作用的组合(Navon,1977; McClelland and Rumelhart,1981; Plaut et al.,1996; Marcus,2001; Goodwin and Johnson-Laird,2005; Kemp and Tenenbaum,2008),如判断一个不规则物体的堆栈是否稳定(Battaglia et al.,2013)。我们使用层次结构来抽象出细微差异,并捕捉表征和行为之间更普遍的共性(Botvinick,2008; Tenenbaum et al.,2011),例如一个物体的一部分,一个场景中的物体,一个城镇中的社区,和一个国家中的城镇。我们通过撰写熟悉的技能和惯例来解决新问题(Anderson,1982),例如通过编写熟悉的程序和目标去一个新的地点旅行,例如“乘飞机旅行”,“飞往圣地亚哥”,“在那吃饭”,以及“一家印度餐馆”。我们通过对齐两个域之间的关系结构来绘制类比,并基于对另一个域的相应知识得出关于一个域的推论(Gentner and Markman,1997; Hummel and Holyoak,2003)。

Kenneth Craik的“解释的本质”(1943)将世界的构成结构与我们内在心理模型的组织方式联系起来:

  …[人类心智模型]与其模仿的过程具有相似的关系结构。我所使用的“关系 - 结构”,并不是指某个模糊的非物理实体会出现在模型中,而是说它是一个可以工作的物理模型,其工作方式与它所对应的过程是一样的…构建了物理现实,显然,从一些基本类型的单位属性确定的许多属性最复杂的现象,这似乎是对这些组合之间关系结构的机制和相似性之间类比的出现的充分解释,而这些组合没有任何客观共性理论的必要性(Craik,1943,第51-55页)。

  也就是说,世界是组合而成的,或者至少我们在构成方面可以这么理解它。 在学习时,我们要么将新知识应用到我们现有的结构化表示中,要么调整结构本身以更好地适应(和利用)新旧结构(Tenenbaum et al.,2006; Griffiths et al.,2010; Ullman et al.,2017)。

  如何建立展示组合泛化的人工系统的问题一直是人工智能的核心,并且是许多结构化方法的核心,包括逻辑,语法,经典规划,图形模型,因果推理,贝叶斯非参数和概率规划(Chomsky,1957; Nilsson and Fikes,1970; Pearl,1986,2009; Russell and Norvig,2009; Hjort et al.,2010; Goodman et al.,2012; Ghahramani,2015)。整个子领域都侧重于以现实的实体和关系为中心的学习,例如关系增强学习(Dzeroski et al.,2001)和统计关系学习(Getoor and Taskar,2007)。结构化方法在以前的时代对机器学习如此重要的一个关键原因,部分是因为数据和计算资源很昂贵,并且结构化方法强大的归纳偏差对改进样本复杂性是非常有价值的。

  与过去的人工智能方法相比,现代深度学习方法(LeCun et al.,2015; Schmidhuber,2015; Goodfellowet al.,2016)经常遵循“端到端”设计理念,强调最小的先验表征和计算假设,并试图避免显式结构和“手工工程”。这种强调更适合由当前丰富的廉价数据和廉价计算资源,这使得用样本效率更灵活的学习成为一种理性的选择。从图像分类(Krizhevsky et al. ,2012; Szegedy et al.,2017)到许多具有挑战性的领域的显著和快速进展,关于自然语言处理(Sutskever et al.,2014; Bahdanau et al.,2015),到玩游戏(Mnih et al.,2015; Silver et al.,2016;Moravc’ık et al.,2017),这些证明了这种极简主义原则。一个突出的例子来自语言翻译,其中不使用显式的解析树或语言实体之间的复杂关系,从序列到序列的方法(Sutskever et al.,2014; Bahdanau et al.,2015)已经​证明是非常有效。

  然而,尽管深度学习取得了成功,但仍存在重要的批判(Marcus,2001; Shalev-Shwartz et al.,2017; Lake et al.,2017; Lake and Baroni,2018; Marcus,2018a,b; Pearl,2018; Yuille and Liu, 2018)强调了它在复杂的语言和场景理解中所面临的主要挑战,对结构化数据的推理,在训练条件之外的迁移学习,从少量经验中学习。这些挑战需要组合泛化,因此避免组合性和显式结构的方法难以实现,这些挑战也许并不令人感到惊讶。

  当深度学习的联结主义者(Rumelhart et al.,1987),前辈们面临着来自结构化的 ,象征性立场的类似批评时(Fodor and Pylyshyn,1988; Pinker and Prince,1988),有一个建设性的成就(Bobrow and Hinton,1990; Marcus,2001)直接和谨慎地应对挑战。在类比制造,语言分析,符号操纵和其他形式的关系推理等领域中,开发创新了各种用于表示和推理结构化对象的子符号方法(Smolensky,1990; Hinton,1990; Pollack,1990; Elman,1991; Plate,1995; Eliasmith,2013),以及关于大脑如何工作的更综合的理论(Marcus,2001)。这些工作还有助于培养更近期的深度学习进展,这些进步使用分布式向量表示来采集文本中丰富的语义内容(Mikolov et al.,2013; Pennington et al.,2014),图(Narayanan et al.,2016,2017),代数和逻辑表达式(Allamanis et al.,2017; Evans et al.,2018)和程序(Devlin et al.,2017; Chen et al.,2018b)。

  我们认为,现代人工智能的一个关键路径是将组合泛化作为首要任务,我们提倡采用综合方法来实现这一目标。正如生物学不在先天与后天之间做出选择- 它共同使用先天和后天,建立大于其各部分总和的整体-我们也拒绝结构和灵活性在某种程度上不一致或不相容的观念,共同拥有两者,旨在获得互补的优势。 本着最近的许多基于结构化的方法和深度学习的原则混合的精神(Reed and De Freitas,2016; Garnelo et al.,2016; Ritchie et al.,2016; Wu et al.,2017; Denil et al.,2017; Hudson and Manning,2018),我们看到了通过利用完整的AI工具包,并将今天的最佳方法与数据和计算时非常重要的方法相结合来合成新技术的巨大希望。

  最近,在深度学习和结构化方法的交叉点上出现了一类模型,其模型侧重于对显式结构化数据进行推理的的方法,特别是图(Scarselli et al.,2009b; Bronstein et al.,2017; Gilmer et al.,2017; Wang et al.,2018c; Li et al.,2018; Kipf et al.,2018; Gulcehre et al.2018)。这些方法的共同之处在于,在离散实体上执行计算的能力以及它们之间的关系。与传统的方法区别开来的是,如何学习实体和关系的表示和结构以及相应的计算,从而减轻了需要提前指定它们的负担。至关重要的是,这些方法带有强烈的关系归纳偏置,以特定的架构假设的形式,引导这些方法学习实体和关系(Mitchell,1980),我们加入了许多其他方法(Spelke et al.,1992; Spelke and Kinzler,2007; Marcus,2001; Tenenbaum et al.,2011; Lake et al.,2017; Lake and Baroni,2018; Marcus,2018b),建议是类人工智能的重要组成部分。

  在本文的其余部分,我们通过其关系归纳偏置的视角来研究各种深度学习方法,表明现有方法通常带有关系假设,这些假设并不总是显式的或立即可见的。 然后,我们提出了基于实体和关系的推理的一般框架,我们称之为图网络,用于统一和扩展现有的对图进行操作的方法,并描述了使用图网络作为构建块构建强大架构的关键设计原则。

框1:关系推理

  我们将结构定义为组成一组已知构建块的产物。“结构化表示”采集这个组成(即元素的排列),“结构化计算”作为整体对元素及其组成进行的操作。关系推理涉及操纵实体和关系的结构化表示,使用关于如何组成它们的规则。我们使用这些术语来采集认知科学,理论计算机科学和AI的概念,如下所示:

  • 实体是具有属性的元素,例如具有大小和质量的物理对象。
  • 关系是实体之间的属性。两个物体之间的关系可能包括相同的尺寸,重量和距离。关系也可以具有属性。超过X倍的关系取一个属性X,它决定了关系的相对权重阈值是真是假。关系也可能对全局上下文敏感。对于一个石头和一根羽毛,这种关系的下降速度要大于上下文是在空气中还是在真空中。在这里,我们关注实体之间的配对关系。
  • 规则是一个函数(如非二进制逻辑谓词),它将实体和关系映射到其他实体和关系,例如像 IS ENTITY X LARGE? 这样的比例运算,以及 IS ENTITY X HEAVIER THAN ENTITY Y? 。这里我们考虑采用一个或两个参数(一元和二元)的规则,并返回一元属性值。

  作为机器学习中关系推理的一个示例,图模型(Pearl,1988; Koller and Friedman,2009)可以通过在随机变量之间进行显式随机条件独立来表示复杂的联合分布。这些模型非常成功,因为它们采集稀疏结构,这是许多现实世界生成过程的基础,并且因为它们支持用于学习和推理的高效算法。例如,隐马尔可夫模型在给定前一时间的状态下将潜伏状态约束为条件独立于其他状态,并且考虑到当前时间的潜在状态,观察值是条件独立的,这与以下关系结构完全匹配许多真实世界的因果过程。明确地表达变量之间的稀疏依赖关系提供了各种有效的推理和推理算法,例如消息传递,它们在图模型内的各个地方之间应用通用的消息传递过程,从而产生可组合的和部分可并行的推理过程,应用于不同尺寸和形状的图形模型。

2 关系归纳偏差

  机器学习和AI中有许多具有关系推理能力的方法(框1)使用关系归纳偏差。虽然不是一个精确的、正式的定义,但我们使用这个术语来指代归纳偏置(框2),它对学习过程中对实体之间的关系和相互作用施加约束。

框2:归纳偏置

  学习是通过观察和与消息互动来理解有用知识的过程。它涉及搜索一个解决方案的空间,以期提供更好的数据解释或获得更高的回报。但在许多情况下,有多种解决方案同样出色(Goodman,1955)。归纳偏置允许学习算法将一种解决方案(或解释)优先于另一种解决方案(或独立于观察到的数据)(Mitchell,1980)。在贝叶斯模型中,归纳偏置通常通过先验分布的选择和参数化来表达(Griffi ths et al.,2010)。在其他情况下,归纳偏置可能是一个正则化项(McClelland,1994),用以避免过拟合,或者它可能在算法本身的架构中编码。归纳偏置通常会以牺牲灵活性为代价,提高样本的复杂性,并且可以根据偏差-方差权衡来理解(Geman et al.,1992)。理想情况下,归纳偏置既可以改善对解决方案的搜索,又不会明显降低性能,还可以帮助找到以理想方式推广的解决方案;然而,不匹配的归纳偏置也可能通过引入过于强大的约束而导致次优性能。
  归纳偏差可以表达关于数据生成过程或解决方案空间的假设。例如,当将一维函数拟合到数据时,线性最小二乘遵循约束函数是线性模型,并且在二次惩罚下近似误差应该是最小的。这反映了一种假设,即数据生成过程可以简单地解释为,因为线性过程被加性高斯噪声破坏。类似地,L2正则化优先考虑其参数具有较小值的解决方案,并且可以针对其他不适合的问题引入独特的解决方案和全局结构。这可以解释为关于学习过程的假设:当解决方案之间的模糊程度较小时,搜索到好的解决方案会更容易。注意,这些假设不需要是显式的-它们反映了模型或算法如何与消息相连接。

  创新的新机器学习架构近年来迅速发展,(本文的主题可能并不令人惊讶)实践者经常遵循组成基本构建模块的设计模式,以形成更复杂,更深的计算层次结构和图形。诸如“完全连接”层的构建块被堆叠成“多层感知器”(MLP),“卷积层”被堆叠到“卷积神经网络”(CNN),并且用于图像处理网络的标准配方通常是一些由MLP组成的各种CNN。这种层的组合提供了特定类型的关系归纳偏置- 分层处理-其中分阶段进行计算,通常导致输入信号中的信息之间的长距离交互。正如我们在下面探讨的那样,构建块本身也带有各种关系归纳偏置(表1)。虽然超出了本文的范围,但深度学习中也使用了各种非关系归纳偏置:例如,激活非线性,权重衰减,丢失(Srivastava et al.,2014),批量和层归一化(Io ff e and Szegedy,2015; Ba et al.,2016),数据增强,训练课程和优化算法都对学习的轨迹和结果施加了限制。

组件 实体 关系 关系性推断偏好(RIBs) 不变性
全连接 单元(Units) 多对多 -
卷积 网格元素 局部 局部性 空间平移
循环 时间步(Timesteps) 时序 序列性 时间平移
图网络 节点 随意的 节点、边的排列

表1:标准深度学习组件中的各种关系归纳偏见。另参见第2节。

  为了探索在各种深度学习方法中表达的关系归纳偏置,我们必须确定几个关键要素,类似于框1中的那些:实体是什么,关系是什么,构成实体和关系的规则是什么,以及计算它们的意义?在深度学习中,实体和关系通常表示为分布式表示,而规则表示为神经网络函数逼近器;然而,实体,关系和规则的精确形式因架构而异。为了理解架构之间的这些差异,我们可以通过探测进一步询问每个架构如何支持关系推理:

  • 规则函数的参数(例如,哪些实体和关系作为输入提供)。
  • 规则函数如何在计算图中重复使用或共享(例如,跨越不同的实体和关系,跨越不同的时间或处理步骤等)。
  • 架构如何定义表示之间的交互与隔离(例如,通过应用规则来得出关于相关实体的结论,而不是单独处理它们)。

2.1 标准深度学习构建块中的关系归纳偏置

2.1.1 全连接层

  也许最常见的构建块是全连接层(Rosenblatt,1961)。通常作为向量输入的非线性向量值函数实现,输出向量的每个元素或“单位”是权重向量之间的点积,后跟增加的偏置项,最终是非线性的点积作为修正线性单元(ReLU)。因此,实体是网络中的单元,关系是全部到全部的(层 i i 中的所有单元都连接到层 j j 中的所有单元),并且规则由权重和偏置指定。该规则的论证是完整的输入信号,没有重用,并且没有信息隔离(图1a)。 因此,完全连接层中的隐式关系归纳偏置非常弱:所有输入单元可以相互作用以确定任何输出单元的值,独立地跨输出(表1)。

2.1.2 卷积层

  另一个常见的构建块是卷积层(Fukushima,1980; LeCun et al.,1989)。它通过将输入向量或张量与相同等级的卷积核进行卷积,添加偏置项并应用逐点非线性来实现。这里的实体仍然是单独的单元(或网格元素,例如像素),但是这些关系更稀疏。全连接层和卷积层之间的差异强加了一些重要的关系归纳偏差:局部性和平移不变性(图1b)。局部性反映出关系规则的论证是在输入信号的坐标空间中彼此靠近的实体,与远端实体隔离。平移不变性反映了输入中跨地区重用相同的规则。这些偏差对于处理自然图像数据非常有效,因为在局部邻域内存在较高的协方差,其随着距离增加而减小,并且因为统计数据在图像上大部分是静止的(表1)。

在这里插入图片描述

图1:在通用的深度学习构建块中重用和共享。(a) 全连接层,全部的权重都是独立的,不存在共享。 (b) 卷积层,局部核函数在输入上重用了多次。共享的权重用相同颜色的箭头指明。(c) 循环层,同样的函数在不同处理阶段被重用。

2.1.3 循环层

  第三个常见构建块是循环层(Elman,1990),它是通过一系列步骤实现的。 在这里,我们可以将每个处理步骤中的输入和隐藏状态视为实体,并将前一隐藏状态和当前输入的隐藏状态的马尔可夫依赖性视为关系。组合实体的规则将步骤的输入和隐藏状态作为参数来更新隐藏状态。该规则在每个步骤中被重复使用(图1c),这反映了时间不变性的关系归纳偏置(类似于CNN在空间中的平移不变性)。例如,一些事件的物理顺序的结果不应该取决于一天的时间。RNNs也通过它们的马尔可夫结构对序列中的位置产生偏差(表1)。

2.2 集合和图的计算

  虽然标准深度学习工具包包含具有各种形式的关系归纳偏置的方法,但是没有“默认”深度学习组件在任意关系结构上运行。我们需要具有实体和关系的明确表示的模型,以及用于计算其交互的规则的学习算法,以及将它们置于数据中的方法。重要的是,世界上的实体(如对象和代理人)没有自然秩序; 相反,排序可以通过他们关系的属性来定义。例如,一组物体的大小之间的关系可以用来对它们进行排序,它们的质量,年龄,毒性和价格也可以。除了面对关系之外,顺序不变性是理想情况下应该通过关系推理的深度学习组件反映的属性。

  集合是用于由其顺序是不确定的或不相关的实体描述的系统的自然表示;特别的,他们的关系归纳偏差不是来自某事物的存在,而是来自缺乏。为了说明,考虑预测由n个行星组成的太阳系质心的任务,其属性(例如,质量,位置,速度等)由 { x 1 , x 2 , . . . x n } \{x_1,x_2,...x_n\} 表示。对于这样的计算,我们认为行星的顺序无关紧要,因为状态可以仅用汇总的平均数量来描述。然而,如果我们使用一个MLP来完成此任务,那么学习某个特定输入 ( x 1 , x 2 , . . . x n ) (x_1,x_2,...x_n) 的预测就不一定会转化为在不同的排序下对相同输入进行预测 ( x n , x 1 , . . . x 2 ) (x_n,x_1,...x_2) 。既然有 n ! n! 种可能的排序,在最坏的情况下,MLP可以将每个排序视为不同,因此需要指数数量的输入/输出训练示例来学习近似函数。处理这种组合爆炸的一种自然方法是只允许预测依赖于输入属性的对称函数。这可能意味着计算共享的每个对象特征 { f ( x 1 ) , . . . f ( x n ) } \{f(x_1),...f(x_n)\} ,然后以对称的方式进行聚合(例如,通过取其平均值)。这种方法是Deep Sets模型的本质(Zaheer et al.,2017),我们将在4.2.3节进一步探讨。

在这里插入图片描述

图2:不同的图表示方法。(a)一个分子,每一个节点代表一个原子,边代表化学键(e.g. Duvenaud et al., 2015)。(b) A mass-spring system, in which the rope is defined by a sequence of masses which are represented as nodes in the graph (e.g. Battaglia et al., 2016; Chang et al., 2017). © A n-body system, in which the bodies are nodes and the underlying graph is fully connected (e.g. Battaglia et al., 2016; Chang et al., 2017). (d) A rigid body system, in which the balls and walls are nodes, and the underlying graph defines interactions between the balls and between the balls and the walls (e.g. Battaglia et al., 2016; Chang et al., 2017). (e) A sentence, in which the words correspond to leaves in a tree, and the other nodes and edges could be provided by a parser (e.g. Socher et al., 2013). Alternately, a fully connected graph could be used (e.g. Vaswani et al., 2017). (f) An image, which can be decomposed into image patches corresponding to nodes in a fully connected graph (e.g. Santoro et al., 2017; Wang et al., 2018c).

  当然,在许多问题中,置换不变性不是唯一重要的基本结构形式。例如,一个集合中的每个对象都可能受到与集合中的其他对象的成对交互而带来的影响。 在我们的行星场景中,现在考虑在一个时间间隔 Δ t \Delta t 之后预测每个行星位置的任务。在这种情况下,使用聚合的平均信息是不够的,因为每个行星的运动取决于其他行星对其施加的力。相反,我们可以将每个对象的状态计算为 x i = f ( x i , j g ( x i , x j ) ) x'_i=f(x_i,\sum_jg(x_i,x_j)) ,其中 g g 可以计算第 j j 个行星在第 i i 个行星上引起的力, f f 可以计算由力和动力学产生的第 i i 个行星的未来状态。我们在任何地方使用相同的 g g 的事实也是系统的全局置换不变性的结果; 然而,它也支持不同的关系结构,因为 g g 现在需要两个参数而不是一个参数。

  上述太阳系实例说明了两种关系结构:一种是不存在的关系,一种包含所有配对关系。许多现实世界的系统(如图2所示)在这两个极端之间的某处具有一个关系结构,然而,一些实体拥有一个关系而另一些实体没有关系。在我们的太阳系例子中,如果系统由行星和它们的卫星组成,那么人们可能会试图通过忽略不同行星的卫星之间的相互作用来近似它。在实际中,这意味着仅计算一些对象之间的交互作用,即 x i = f ( x i , j δ ( i ) g ( x i , x j ) ) x'_i=f(x_i,\sum_{j\in \delta (i)}g(x_i,x_j)) ,其中 δ ( i ) { 1 , . . . , n } \delta (i)\subseteq \{1,...,n\} 是节点 i i 的邻域。这对应于一个图,因为第 i i 个对象仅与其邻域描述的其他对象的子集交互。注意,更新后的状态仍然不依赖于我们描述邻域的顺序。

  通常,图是支持任意(成对)关系结构的表示,并且图上的计算可以是强大的关系归纳偏差,超出卷积层和循环层可以提供的强关系式感应偏差。

3 图网络

  在图形神经网络的保护下,神经网络在图形上运行并相应地构建其计算,已经被广泛开发和探索了十多年(Gori et al.,2005; Scarselli et al.,2005,2009a; Li et al.,2016),但近年来在范围和流行性方面发展迅速。我们在下一小节(3.1)中对这些方法的文献进行了调查。然后在剩下的部分中,我们展示了我们的图网络框架,该框架概括并扩展了该领域的工作。

3.1 背景

  图神经网络家族中的模型(Gori et al.,2005; Scarselli et al.,2005,2009a; Li et al.,2016)已经在各种问题领域中进行了探索,涵盖监督,半监督,无监督和强化学习等环境。他们对于被认为具有丰富关系结构的任务非常有效,例如视觉场景理解任务(Raposo et al.,2017; Santoro et al.,2017)和少数学习(Garcia and Bruna,2018)。它们也被用来学习物理系统的动力学(Battaglia et al.,2016; Chang et al.,2017; Watters et al.,2017; van Steenkiste et al.,2018; Sanchez-Gonzalez et al.,2018) )和多智能体系统(Sukhbaatar et al.,2016; Hoshen,2017; Kipf et al.,2018),推理知识图(Bordes et al.,2013; On ~oro-Rubio et al.,2017; Hamaguchi et al.,2017)预测分子的化学性质(Duvenaud et al.,2015; Gilmer et al.,2017),以预测道路上的交通(Cui et al.,2018),对视频进行分类和分类(Wang et al.,2018c)和3D网格和点云(Wang et al.,2018d),对图像中的区域进行分类(Chen et al.,2018a),以执行半监督文本分类(Kipf and Welling,2017)和机器翻译(Vaswani et al.,2017; Shaw et al.,2018; Gulcehre et al.,2018)。它们已被用于无模型(Wang et al.,2018b)和基于模型(Hamrick et al.,2017; Pascanu et al.,2017; Sanchez-Gonzalez et al.,2018)的连续控制,用于模型 - 免费强化学习(Hamrick et al.,2018; Zambaldi et al.,2018),以及更经典的规划方法(Toyer et al.,2017)。

  许多传统的计算机科学问题,包括关于离散实体和结构的推理,也已经用图神经网络进行了探索,例如组合优化(Bello et al.,2016; Nowak et al.,2017; Dai et al.,2017) ,布尔满意度(Selsam et al.,2018),程序表示和验证(Allamanis et al.,2018; Li et al.,2016),细胞自动机和图灵机的建模(Johnson,2017),并在图模型中进行推理(Yoon et al.,2018)。最近的工作还集中在构建图的生成模型(Li et al.,2018; De Cao and Kipf,2018; You et al.,2018; Bojchevski et al.,2018),以及图形嵌入的无监督学习(Perozzi et al.,2014; Tang et al.,2015; Grover and Leskovec,2016;Garc’ıa-Dura’n and Niepert,2017)。

  上面引用的作品绝不是详尽的列表,而是提供了图神经网络已经被证明有用的域的广度的代表性横截面。我们将感兴趣的读者指向一些现有的评论,这些评论更深入地研究了图神经网络的工作主体。特别是,Scarselli等人(2009a)提供了早期图神经网络方法的权威概述。布朗斯坦等人(2017)提供了非欧几里德数据深度学习的优秀调查,并探索了图神经网络,图卷积网络和相关的频谱方法。最近,吉尔默等人(2017)引入了消息传递神经网络(MPNN),其统一了各种图神经网络和图卷积网络的方法(Monti et al.,2017; Bruna et al.,2014; Hena ff et al.,2015; Defferrard et al.,2016; Niepert et al.,2016; Kipf and Welling,2017; Bronstein et al.,2017),类比于图模型中的消息传递。同样,Wang等人(2018c)引入了非局部神经网络(NLNN),它通过类比方法统一了各种“自我关注”式方法(Vaswani et al.,2017; Hoshen,2017; Velickovi’c et al.,2018)。从计算机视觉和图模型中采集信号中的长距离依赖性。

3.2 图网络(GN)块

  我们现在展示我们的图网络(GN)框架,它为图形结构表示定义了一类关系推理的函数。我们的GN框架概括和扩展了各种图形神经网络,MPNN和NLNN方法(Scarselli et al.,2009a; Gilmer et al.,2017; Wang et al.,2018c),并支持从简单的构建块构建复杂的体系结构。注意,我们避免在“图网络”标签中使用术语“神经”来反映它们可以用除神经网络之外的函数来实现,尽管这里我们关注的是神经网络实现。

  GN框架中的主要计算单元是GN块,即“图形到图形”的模块,它将图形作为输入,对结构执行计算,并返回图形作为输出。如方框3所述,实体由图的节点,边缘的关系和全局属性的系统级属性表示。GN框架的块组织强调可定制性并合成表达所需关系归纳偏差的新架构。关键设计原则是:灵活的表示(见4.1节); 可配置的块内结构(见4.2节); 和可组合的多块体系结构(参见第4.3节)。

框3:我们对“图 ”的定义

在这里插入图片描述
  这里我们用“图”来代表一个含有全局属性的、有向的、有属性的多图。在我们的术语中,单个节点表示为 v i v_i ,单个边表示为 e k e_k ,全局属性表示为 u u 。我们也用 s k s_k r k r_k 来分别代表边 k k 的发送节点和接收节点(见下文)。更确切地说,我们将这些术语定义为:有向的:从一个“发送”节点到一个“接收”节点的单向边。属性:可以被编码为向量、集合甚至另一个图的特征。有属性的:含有与他们相关的属性的边和节点。全局属性:一个全局级别的属性。多图:节点之间可以有多于一条边,包括指向自身节点的边。
  图2显示了不同类型的、与实际数据对应的图的多样性,我们可能会对他们的模型感兴趣,包括物理系统、分子、图像和文本。

  我们介绍了一个激励性的例子来帮助使GN形式主义更具体。考虑在一个任意重力场中预测一组橡胶球的运动,这些橡胶球不是相互弹跳,而是每个都有一个或多个弹簧将它们连接到其他一些(或全部)弹簧上。我们将在下面的定义中引用这个运行的例子,以激励图形表示和在其上运行的计算。图2描绘了一些其他常见场景,可以用图表表示并推理使用图网络。

3.2.1 “图”的定义

  在我们的GN框架中,图形被定义为三元组 G = ( u , V , E ) G=(u,V,E) (有关图形表示的详细信息,请参见框3)。 u u 是一个全局属性; 例如, u u 可能代表引力场。 V = { v i } i = 1 : N v V=\{v_i\}_{i=1:N^v} 是节点集合(基数 N v N^v ),其中每个 v i v_i 是节点的属性。例如, V V 可能代表每个球,具有位置,速度和质量的属性。 E = { ( e k , r k , s k ) } k = 1 : N e E=\{(e_k,r_k,s_k)\}_{k=1:N^e} 是边缘集合(基数 N e N^e ),其中每个 e k e_k 是边缘的属性, r k r_k 是接收者节点的索引, s k s_k 是发送者节点的索引。例如, E E 可能表示不同球之间存在弹簧,以及它们相应的弹簧常数。

3.2.2 GN块的内部结构

TODO

   ϕ e \phi ^e 被映射到所有边缘以计算每个边缘更新, ϕ v \phi ^v 被映射到所有节点以计算每个节点更新,并且 ϕ u \phi ^u 被应用一次作为全局更新。 ρ \rho 函数每个都将一个集合作为输入,并将其减少为表示聚合信息的单个元素。至关重要的是, ρ \rho 函数必须对其输入的排列不变,并且应该采用可变数量的参数(例如,元素求和,平均值,最大值等)。

3.2.3 GN块中的计算步骤

  当提供图形 G G 作为GN块的输入时,计算从边缘,到节点,到全局级别。图3显示了在每个计算中调用哪些图元素的描述,图4a显示了具有更新和聚合功能的完整GN块。算法1显示了以下计算步骤:

  1. 每个边应用 ϕ e \phi ^e ,带参数 ( e k , v r k , v s k , u ) (e_k,v_{r_k},v_{s_k},u) ,并返回 e k e'_k 。在我们的弹簧示例中,这可能对应于两个连接球之间的力或势能。每个节点的结果每边输出的集合 i i 是, E i = { ( e k , r k , s k ) } r k = i , k = 1 : N e E'_i=\{(e'_k,r_k,s_k)\}_{r_k=i,k=1:N^e} 。并且 E = i E i = { ( e k , r k , s k ) } k = 1 : N e E'=\bigcup _iE'_i=\{(e'_k,r_k,s_k)\}_{k=1:N^{e}} 是所有每边缘输出的集合。
  2. ρ e v \rho ^{e\rightarrow v} 应用于 E i E'_i ,并将投影到顶点 i i 的边缘更新聚合到 e i \overline e'_i 中,这将用于下一步的节点更新。在我们的运行示例中,这可能对应于对作用在第 i i 个球上的所有力或势能进行求和。
  3. ϕ v \phi ^v 应用于每个节点 i i ,以计算更新的节点属性 v i v'_i 。在我们的运行示例中, ϕ v \phi ^v 可以计算类似于每个球的更新位置,速度和动能等信息。得到的每节点输出的集合是, V = { v i } i = 1 : N v V'=\{v'_i\}_{i=1:N^v}
  4. ρ e u \rho ^{e\rightarrow u} 应用于 E E' ,并将所有边缘更新聚合成 e \overline e' ,然后将用于下一步的全局更新。在我们的运行示例中, ρ e u \rho ^{e\rightarrow u} 可以计算总和力(在这种情况下应该为零,由于牛顿第三定律)和弹簧的势能。
  5. ρ v u \rho ^{v\rightarrow u} 应用于 V V' ,并将所有节点更新聚合到 v \overline v' 中,然后将用于下一步的全局更新。在我们的运行示例中, ρ v u \rho ^{v\rightarrow u} 可能会计算出系统的总动能。
  6. 每个图形应用 ϕ u \phi ^u 一次,并计算全局属性 u u' 的更新。在我们的运行示例中, ϕ u \phi ^u 可能会计算出与物理系统的净力和总能量类似的东西。

  注意,虽然我们假设这里的步骤顺序,但是没有严格执行顺序:例如,可以反转更新函数以从全局,每节点到每边缘更新。 Kearnes et al.(2016)以类似的方式计算来自节点的边缘更新。
在这里插入图片描述

图3:一个GN块中的更新过程。蓝色代表元素正在被更新,黑色代表涉及到更新的其他元素(注意蓝色节点的预更新值也被用于更新)。有关符号的详细信息,请参阅等式1。

3.2.4 图网络中的关系归纳偏差

  我们的GN框架在用作学习过程中的组件时会产生一些强大的关系归纳偏差。 首先,图形可以表示实体之间的任意关系,这意味着GN的输入决定了如何表示交互和隔离,而不是由固定的体系结构决定的那些选择。 例如,假设两个实体具有关系,由实体的对应节点之间的边缘表示,因此这应该表示的是相互作用。类似地,没有边缘表示假设节点之间没有关系,并且不应该直接相互影响。

  其次,图表将实体及其关系表示为集合,这些集合对于排列是不变的。这意味着GNs对于这些元素的顺序是不变的,这通常是可取的。例如,场景中的对象没有自然顺序(参见2.2节)。

  第三,GN的每条边和每个节点函数分别在所有边和节点上重用。这意味着GNs自动支持一种组合泛化形式(参见5.1节):因为图形由边,节点和全局特征组成,所以单个GN可以在不同大小(边和节点的数量)和形状(边缘)的图形上运行连接)。

4 图网络体系结构的设计原则

  GN框架可以用于实现各种体系结构,符合上面3.2节中列出的设计原则,这些原则也对应于下面的子部分(4.1,4.2和4.3)。通常,框架与特定的属性表示和功能形式无关。然而,在这里,我们主要关注深度学习架构,它允许GNs充当可学习的图形到图形函数逼近器。

4.1 灵活的表示

  图网络以两种方式支持高度灵活的图形表示:首先,就属性的表示而言; 第二,就图本身的结构而言。

4.1.1 属性

  GN块的全局,节点和边缘属性可以使用任意表示格式。在深度学习实现中,实值向量和张量是最常见的。但是,也可以使用其他数据结构,例如序列,集合甚至图形。

  问题的要求通常会确定应该为属性使用哪些表示。例如,当输入数据是图像时,属性可以表示为图像块的张量; 然而,当输入数据是文本文档时,属性可以是与句子对应的单词序列。

  对于更广泛架构内的每个GN块,边缘和节点输出通常对应于向量或张量的列表,每个边缘或节点一个,并且全局输出对应于单个向量或张量。这允许将GN的输出传递给其他深度学习构建块,例如MLP,CNN和RNN。GN块的输出也可以根据任务的需求进行定制。尤其是,

  • 边缘聚焦GN,使用边缘作为输出,例如,决定实体之间的相互作用(Kipf et al.,2018; Hamrick et al.,2018)。

  • 以节点为中心的GN,使用节点作为输出,例如推理物理系统(Battaglia et al.,2016; Chang et al.,2017; Wang et al.,2018b; Sanchez-Gonzalez et al.,2018) 。

  • 以图形为中心的GN,使用全局变量作为输出,例如预测物理系统的潜在能量(Battaglia et al.,2016),分子的属性(Gilmer et al.,2017),或问题的答案关于视觉场景(Santoro et al,,2017)。

  节点,边和全局输出也可以根据任务进行混合和匹配。例如,Hamrick等(2018)使用输出边缘和全局属性来计算策略而不是动作。

4.1.2 图结构

  在定义输入数据如何表示图形时,通常有两种情况:首先,输入明确指定关系结构; 第二,必须推断或假设关系结构。这些不是硬性的区别,而是连续统一的极端。

  具有更明确指定的实体和关系的数据的示例包括知识图,社交网络,解析树,优化问题,化学图,道路网络和具有已知交互的物理系统。图2a-d示出了这些数据如何表示图形。

  关系结构未明确且必须推断或假设的数据示例包括视觉场景,文本语料库,编程语言源代码和多代理系统。在这些类型的设置中,数据可以被格式化为没有关系的一组实体,或甚至仅仅是矢量或张量(例如,图像)。如果实体未明确指定,则可以假设它们,例如,通过将句子中的每个单词(Vaswani et al.,2017)或CNN的输出特征映射中的每个局部特征向量视为节点(Watters et al.,2017; Santoro et al.,2017; Wang et al.,2018c)(图2e-f)。或者,可能使用单独的学习机制来推断来自非结构化信号的实体(Luong et al.,2015; Mnih et al.,2014; Eslami et al.,2016; van Steenkiste et al.,2018)。如果关系不可用,最简单的方法是实例化实体之间所有可能的有向边(图2f)。然而,这对于大量实体来说可能是禁止的,因为可能的边缘的数量随着节点的数量而呈二次方增长。因此,开发更复杂的方法来推断非结构化数据的稀疏结构(Kipf et al.,2018)是未来的重要方向。

4.2 块内结构的配置

  GN块中的结构和功能可以以不同的方式配置,灵活地提供哪些信息作为其功能的输入,以及如何产生输出边缘,节点和全局更新。特别地,等式1中的每个 ϕ \phi 必须用一些函数 f f 来实现,其中 f f 的参数确定它需要什么信息作为输入;在图4中,每个 ϕ \phi 的输入箭头描述了 u u V V E E 是否作为输入。Hamrick等(2018)和Sanchez-Gonzalez等(2018)使用图4a中所示的完整GN块。他们的 ϕ \phi 实现使用神经网络(在下面表示为NN e _e ,NN v _v 和NN u _u ,表示它们是具有不同参数的不同函数)。他们的 ρ \rho 实现使用元素和,但也可以使用平均和最大或最小,其中 [ x , y , z ] [x,y,z] 表示向量或张量连接。对于向量的属性,MLP通常用于 ϕ \phi ,而对于诸如图像特征映射的张量,CNN可能更合适。

   ϕ \phi 函数也可以使用RNN,这需要额外的隐藏状态作为输入和输出。图4b显示了一个非常简单的GN块的版本,其中RNN为 ϕ \phi 函数:在这个公式中没有消息传递,这种类型的块可能用于一些动态图状态的循环平滑。当然,作为 ϕ \phi 函数的RNN也可以用在完整的GN块中(图4a)。

  GN框架中可以表达各种其他体系结构,通常作为不同的函数选择和块内配置。剩下的小节探讨了GN的块内结构如何以不同的方式进行配置,以及使用这种配置的已发表作品的例子。有关详细信息,请参阅附录。

在这里插入图片描述

图4:不同的GN块内部配置。有关符号的详细信息请参阅3.2节,各种变体的细节请参阅4节。(a)一个完全的GN根据输入的节点、边和全局属性来预测节点、边以及全局输出属性。(b)一个独立的、循环的更新块接收输入和隐藏图,并且 ϕ \phi 函数是RNNs(Sanchez-Gonzalez et al., 2018)。(c)一个消息传递神经网络(MPNN)(Gilmer et al., 2017)根据输入的节点、边和全局属性来预测节点、边以及全局属性。注意全局预测不包含聚合的边。(d)一个非局部连接网络(NLNN)(Wang et al., 2018c) 只预测节点的输出属性。(e)一个关系网络(Raposo et al., 2017; Santoro et al., 2017)只用边的预测值来预测全局属性。(f)一个Deep Set (Zaheer et al., 2017)绕开边的更新并预测更新后的全局属性。

4.2.1 消息传递神经网络(MPNN)

  Gilmer等(2017)MPNN归纳了许多以前的架构,可以自然地转换成GN形式。遵循MPNN论文的术语(参见Gilmer等(2017),第2-4页):

  • 消息函数 M t M_t 扮演GN的 ϕ e \phi ^e 角色,但不将 u u 作为输入,

  • 元素求和用于 GN的 ρ e v \rho ^{e\rightarrow v}

  • 更新函数 U t U_t 扮演GN的 ϕ v \phi ^v 的角色,

  • 读出函数 R R 扮演GN的 ϕ u \phi ^u 的角色,但不将 u u E E' 作为输入,因此不需要与GN的 ρ e u \rho ^{e\rightarrow u} 类似;

  • d m a s t e r d_{master} 与GN的 u u 大致相似,但是被定义为连接到所有其他节点的额外节点,因此不会直接影响边缘和全局更新。然后它可以在GN的 V V 中表示。

在这里插入图片描述

图5:用GNs实现的NLNNs。一个展示在GN框架下如何用 ϕ e \phi ^e ρ e v \rho ^{e\rightarrow v} 实现NLNNs(Wang et al., 2018c)的简图。代表性地,NLNNs假设一个图像的不同区域(或句子中的单词)相当于一个全连接图的节点,且在聚合步骤中注意力机制定义了一个节点上的加权和。

  • 读出函数 R R ,作为GN中的 ϕ u \phi ^u ,但不是采用 u u E E' 作为输入,所以无需模拟GN中的 ρ e u \rho ^{e\rightarrow u}
  • d m a s t e r d_{master} 提供了和GN中 u u 大致相似的作用,但定义为一个连接到所有其他节点的额外节点,因此不直接影响边和全局的更新。之后它可在GN的 V V 中体现出来。

  图4c显示了根据GN框架如何构建MPNN。有关详细信息和各种MPNN体系结构,请参阅附录。

4.2.2 非局部神经网络(NLNN)

  Wang等(2018c)的NLNN,其统一了各种“内/自/顶点/图注意”方法(Lin et al.,2017; Vaswani et al.,2017; Hoshen,2017; Velickovi’c et al.,2018; Shaw et al.,2018),也可以转换成GN形式。标签“注意”是指节点如何更新:每个节点更新基于其邻居的节点属性的(某些函数)的加权和,其中节点与其邻居之间的权重由一个标量计算得到。标量成对函数在它们的属性之间(然后在邻居之间标准化)。已发布的NLNN形式主义并未明确包含边缘,而是计算所有节点之间的成对关注度。但是各种NLNN兼容模型,例如顶点注意交互网络(Hoshen,2017)和图注意网络(Velickovi’c et al.,2018),能够通过有效地将不共享边缘的节点之间的权重设置为零来处理显式边缘。

  如图4d和5所示, ρ e \rho ^e 被分解为标量成对相互作用函数,其返回非标准化注意项,表示为 α e ( v r k , v s k ) = a k \alpha ^e(v_{r_k},v_{s_k})=a'_k ,以及向量值非成对项,表示为 β e ( v s k ) = b k \beta ^e(v_{s_k})=b'_k 。在 ρ e v \rho ^{e\rightarrow v} 聚合中, a k a'_k 项在每个接收器的边缘上进行归一化, b k b'_k 和元素求和:

TODO

  在NLNN论文的术语中(参见Wang等(2018c),第2-4页):

  • 他们的 f f 扮演上述 α \alpha 的角色,

  • 他们的 g g 扮演上述 β \beta 的角色。

  该公式可能有助于仅关注与下游任务最相关的那些交互,特别是当输入实体是一组时,通过在它们之间添加所有可能的边来形成图。

  Vaswani等(2017)的多头自我关注机制增加了一个有趣的特征,其中 ϕ e \phi ^e ρ e v \rho ^{e\rightarrow v} 由一组并行函数实现,其结果作为 ρ e v \rho ^{e\rightarrow v} 的最后步骤连接在一起。这可以解释为使用类型边,其中不同的类型索引到不同的 ϕ e \phi ^e 分量函数,类似于Li等(2016)。有关详细信息和各种NLNN体系结构,请参阅附录。

4.2.3 其他图形网络变体

  完整的GN(公式2)可用于预测完整图或 ( u , V , E ) (u',V',E') 的任何子集,如第4.1.1节所述。例如,要预测图形的全局属性,可以忽略 V V' E E' 。类似地,如果输入中未指定全局,节点或边缘属性,那些向量可以是零长度,即不作为显式输入参数。同样的想法适用于不使用全套映射( ϕ \phi )和缩减( ρ \rho )函数的其他GN变体。例如,交互网络(Battaglia et al.,2016; Watters et al.,2017)和神经物理引擎(Chang et al.,2017)使用完整的GN,但缺少全局更新边缘属性(详见附录)。

  各种模型,包括CommNet(Sukhbaatar et al.,2016),structure2vec(Dai et al.,2016)(在(Dai et al.,2017)的版本中)和门控图序列神经网络(Li et al., 2016)已使用不直接计算成对交互的 ϕ e \phi ^e ,而是忽略接收节点,仅在发送方节点上操作,在某些情况下仅操作边缘属性。这可以通过具有以下签名的 ϕ e \phi ^e 的实现来表达,例如:有关详细信息,请参阅附录。

在这里插入图片描述

图6:(a) An example composing multiple GN blocks in sequence to form a GN “core”. Here, the GN blocks can use shared weights, or they could be independent. (b) The encode-process-decode architecture, which is a common choice for composing GN blocks (see Section 4.3). Here, a GN encodes an input graph, which is then processed by a GN core. The output of the core is decoded by a third GN block into an output graph, whose nodes, edges, and/or global attributes would be used for task-specific purposes. © The encode-process-decode architecture applied in a sequential
setting in which the core is also unrolled over time (potentially using a GRU or LSTM architecture), in addition to being repeated within each time step. Here, merged lines indicate concatenation, and split lines indicate copying.

4.3 可组合的多块体系结构

  图网络的一个关键设计原则是通过组合GN块来构建复杂的体系结构。我们定义了一个GN块,因为它始终将包含边,节点和全局元素的图作为输入,并返回一个与输出具有相同组成元素的图(当这些元素未明确更新时,只需将输入元素传递给输出)。这种图形到图形的输入/输出接口确保一个GN块的输出可以作为输入传递给另一个,即使它们的内部配置不同,类似于标准深度学习工具包的张量到张量接口。在最基本的形式中,两个GN块GN 1 _1 和GN 2 _2 可以通过将第一个输出作为输入传递给第二个来组成GN 1 _1\circ GN 2 _2 G = G'= GN 2 ( _2( GN 1 ( G ) ) _1(G))

  可以组成任意数量的GN块,如图6a所示。块可以是非共享的(不同的功能和/或参数,类似于CNN的层),GN 1 _1\neq GN 2 . . . _2\neq...\neq GN M _M ,或共享(重用的功能和参数,类似于展开的RNN),GN 1 = _1= GN 2 = . . . = _2=...= GN M _M 。图6a中GN c o r e _{core} 周围的白框表示 M M 个重复的内部处理子步骤,具有共享或非共享GN块。共享配置类似于消息传递(Gilmer et al.,2017),其中迭代地应用相同的本地更新过程以在整个结构中传播信息(图7)。如果我们排除全局 u u (其聚合来自节点和边缘的信息),则在 m m 个传播步骤之后节点可以访问的信息由最多 m m 跳的节点和边缘集确定。这可以解释为将复杂计算分解为更小的基本步骤。这些步骤还可用于及时采集顺序性。在我们的弹簧示例中,如果每个传播步骤预测持续时间 Δ t \Delta t 的一个时间步长上的物理动态,那么 M M 个传播步骤导致总模拟时间 M Δ t M·\Delta t

  常见的架构设计就是我们所说的编码-处理-解码配置(Hamrick et al.(2018);也见图6ba):输入图形, G i n p G_{inp} 由编码器GN e n c _{enc} 转换成潜在表示 G 0 G_0 ; 共享核心块GN c o r e _{core} 应用 M M 次以返回 G M G_M ; 最后,输出图 G o u t G_{out} 由GN d e c _{dec} 解码。例如,在我们的运行示例中,编码器可能计算球之间的初始力和相互作用能量,核心可能应用基本动态更新,并且解码器可能从更新的图形状态读出最终位置。

在这里插入图片描述

图7:消息传递的例子。Each row highlights the information that diffuses through the graph starting from a particular node. In the top row, the node of interest is in the upper right; in the bottom row, the node of interest is in the bottom right. Shaded nodes indicate how far information from the original node can travel in m steps of message passing; bolded edges indicate which edges that information has the potential to travel across. Note that during the full message passing procedure, this propagation of information happens simultaneously for all nodes and edges in the graph (not just the two shown here).

  与编码-处理-解码设计类似,可以通过维护隐藏图形 G h i d t G^t_{hid} 来构建基于GN的循环体系结构,将每个步骤作为输入观察图形 G i n p t G^t_{inp} 并返回输出图形 G o u t t G^t_{out} (参见图6c))。这种类型的架构对于预测图的序列特别有用,例如预测动态系统随时间的轨迹(例如Sanchez-Gonzalez et al.,2018)。由GN e n c _{enc} 输出的编码图必须具有与 G h i d t G^t_{hid} 相同的结构,并且在传递给GN c o r e _{core} 之前,可以通过连接它们对应的 e k e_k v i v_i u u 向量(其中向上箭头合并到图6c中的左手水平箭头)来容易地组合它们。对于输出,复制 G h i d t G^t_{hid} (右手水平箭头分成图6c中的向下箭头)并由GN d e c _{dec} 解码。这个设计以几种方式重用GN块:GN e n c _{enc} ,GN d e c _{dec} 和GN c o r e _{core} 在每个步骤t中共享;在每个步骤中,GN c o r e _{core} 可以执行多个共享子步骤。

  用于设计基于GN的体系结构的各种其他技术可能是有用的。例如,图形跳过连接会在进行进一步计算之前将GN块的输入图 G m G_m 与其输出图 G m + 1 G_{m+1} 连接起来。 如图6c所示,合并和平滑输入和隐藏图形信息可以使用LSTM或GRU样式的门控方案,而不是简单的连接(Li et al.,2016)。或者,可以在其他GN块之前和/或之后组成不同的,重复的GN块(例如图4b),以改善多个传播步骤中的表示的稳定性(Sanchez-Gonzalez et al.,2018)。

4.4 在代码中实现图形网络

  类似于CNN(参见图1),它们是自然可并行化的(例如在GPU上),GN具有天然的并行结构:因为公式1中的 ϕ e \phi ^e ϕ v \phi ^v 函数分别在边和节点上共享,所以它们可以分开并行计算。实际上,这意味着对于 ϕ e \phi ^e ϕ v \phi ^v ,节点和边缘可以像典型的小批量训练方案中的批量维度一样对待。此外,通过将几个图形视为较大图形的不互斥分量,可以自然地将几个图形组合在一起。通过一些额外的簿记,这允许将在几个独立图上进行的计算批处理。

  复用 ϕ e \phi ^e ϕ v \phi ^v 也可以提高GN的样本效率。同样,类似于卷积核,用于优化GN的 ϕ e \phi ^e ϕ v \phi ^v 函数的样本数是分别在所有训练图中的边和节点的数量。例如,在Sec3.2的球示例中,在图3.2中,具有四个球的场景全部通过弹簧连接将提供十二(4×3)个它们之间的接触相互作用的示例。

框4:Graph Nets开源软件库:github.com/deepmind/graph_nets

我们发行了一个开源的、使用Tensorflow/Sonnet的库用于构建GNs。它包含了演示如何创造、处理、训练GNs来推理基于图的数据,在寻找最短路径任务、排序任务和物理预测任务上。每个演示都使用相同的GN结构,来突出这种近似的灵活性。

最短路径演示:tinyurl.com/gn-shortest-path-demo

这个演示生成了随机图,并且训练一个GN来给任意两点之间最短路径上的节点和边做标记。经过了一系列的消息传递步骤后(正如每一步的设计所描述的),模型改善了其对于最短路径的预测。
在这里插入图片描述

排序演示:tinyurl.com/gn-sort-demo

这个演示生成了若干列的随机数,并且训练一个GN来给列表排序。经过了一系列的消息传递步骤后,模型对哪些元素(示图中的列)紧随其(示图中的行)后做了精准的预测。
在这里插入图片描述

物理演示:tinyurl.com/gn-physics-demo

这个演示生成了随机弹簧系统,并且训练一个GN来预测在下一个时间步系统的状态。模型的下一步预测可以被反馈为输入来创建未来的轨迹。下面的每一个子图显示了在50时间步后真实的和预测的弹簧系统状态。这很像(Battaglia et al., 2016)的“交互网络”的模型和实验。
在这里插入图片描述

4.5 概要

  在本节中,我们讨论了图形网络背后的设计原则:灵活的表示,块内结构的配置和可组合的多块体系结构。这三个设计原则结合在我们的框架中,该框架非常灵活,适用于从感知,语言和符号推理等广泛领域。而且,正如我们将在本文的其余部分中看到的那样,图网络所具有的强关系归纳偏差支持组合泛化,从而使其成为实现和理论方面的强大工具。

5 讨论

  在本文中,我们分析了深度学习架构(如MLP,CNN和RNN)中存在关系归纳偏差的程度,并得出结论,虽然CNN和RNN确实包含关系归纳偏差,但它们无法自然地处理更多结构化表示,如集合或图表。我们主张通过强调未充分利用的深度学习构建块(称为图形网络)来构建更强的关系归纳偏向深度学习架构,该构建块对图形结构数据执行计算。我们的图形网络框架统一了现有的方法,这些方法也可以在图形上运行,并提供了一个简单的界面,用于将图形网络组装成复杂,复杂的体系结构。

5.1 图网络中的组合泛化

  GNs的结构自然支持组合泛化,因为它们不在系统级别严格执行计算,而且还应用跨实体和跨关系的共享计算。这允许对前所未有的系统进行推理,因为它们是由熟悉的组件构建的,其方式反映了Humboldt的“有限使用有限手段”(Humboldt,1836; Chomsky,1965)。

  许多研究探讨了GNs组合泛化的能力。Battaglia等(2016)发现受过训练以进行一步物理状态预测的GNs可以模拟数千个未来的时间步长,并且还表现出精确的零射击转移到物理系统,具有训练期间经历的实体数量的两倍或一半。 Sanchez-Gonzalez等(2018)在更复杂的物理控制设置中发现了类似的结果,包括在模拟多关节代理上训练为正向模型的GN可以扩展到具有新数量关节的代理。Hamrick等(2018年)和Wang等(2018b)各自发现基于GN的决策制定政策也可以转移到新的实体数量。在组合优化问题中,Bello等(2016)表明,GNs可以很好地概括到比他们接受过训练的大小不同的问题。同样,Toyer等 (2017)显示了对不同规模问题的概括,Hamilton等(2017)显示了为以前看不见的数据生成有用的节点嵌入的概括。关于布尔SAT问题,Selsam等 (2018)证明了对不同问题大小和跨问题分布的推广:他们的模型在强烈修改输入图的分布及其典型的局部结构时保持了良好的性能。

  鉴于GNs的实体和以关系为中心的组织,这些组合泛化的显著例子并不完全令人惊讶,但仍然为这种观点提供了重要的支持,即采用显式结构和灵活学习是实现更好的样本效率和现代化人工智能的可行方法。

5.2 图网络的局限性

  GNs’和MPNNs学习消息传递形式的一个限制是(Shervashidze et al.,2011),它不能保证解决某些类别的问题,例如区分某些非同构图。Kondor等 (2018)提出协方差(Cohen and Welling,2016; Kondor and Trivedi,2018),而不是对节点和边缘的排列的不变性是优选的,并且提出了可以保留结构信息的“协变组成网络”,并允许它只有在需要时才被忽略。

  更一般地说,虽然图表是表示结构信息的有效方式,但它们具有限制。例如,递归,控制流和条件迭代等概念不能直接用图表表示,并且最低限度地需要额外的假设(例如,在解释抽象语法树时)。程序和更多“类似计算机”的处理可以提供关于这些概念的更强的代表性和计算表现力,并且一些人认为它们是人类认知的重要组成部分(Tenenbaum et al.,2011; Lake et al.,2015; Goodman et al.,2015)。

5.3 打开问题

  虽然我们对图网络可能产生的潜在影响感到兴奋,但我们提醒说这些模型只是向前迈出了一步。实现图网络的全部潜力可能比在一个框架下组织其行为更具挑战性,事实上,关于使用图形网络的最佳方式存在许多未解决的问题。

  一个迫切的问题是:图表来自哪个图网络运行?深度学习的标志之一是它能够对原始感官数据(如图像和文本)执行复杂计算,但目前尚不清楚将感官数据转换为更加结构化的表示(如图形)的最佳方法。一种方法(我们已经讨论过)假设空间或语言实体之间存在完全连通的图形结构,例如关于自我关注的文献(Vaswani et al.,2017; Wang et al.,2018c)。然而,这样的表示可能不完全对应于“真实”实体(例如,卷积特征不直接对应于场景中的对象)。此外,许多底层图形结构比完全连接图形更稀疏,如何引发这种稀疏性是一个悬而未决的问题。几项积极的研究正在探索这些问题(Watters et al.,2017; van Steenkiste et al.,2018; Li et al.,2018; Kipf et al.,2018),但到目前为止还没有单一的方法可以从感觉数据中可靠地提取离散实体。开发这样一种方法对于未来的研究来说是一个激动人心的挑战,一旦解决,很可能会为更强大,更灵活的推理算法打开大门。

  一个相关的问题是如何在计算过程中自适应地修改图形结构。例如,如果一个对象分成多个部分,则表示该对象的节点也应该分成多个节点。类似地,仅表示接触的对象之间的边缘可能是有用的,因此需要能够根据上下文添加或移除边缘。关于如何支持这种适应性的问题也正在积极研究中,特别是,用于识别图的基础结构的一些方法可能是适用的(Li et al.,2018; Kipf et al.,2018)。

  人类认知强烈假设世界是由对象和关系组成的(Spelke and Kinzler,2007),并且由于GNs做出了类似的假设,他们的行为往往更容易被解释。GN运行的实体和关系通常对应于人类理解的事物(例如物理对象),因此支持更可解释的分析和可视化(Selsam et al.,2018)。未来工作的一个有趣方向是进一步探索图网络行为的可解释性。

5.4 学习和结构的综合方法

  虽然我们的重点是图表,但本文的一个内容是关于图形本身,而不是关于将强大的深度学习方法与结构化表示相结合的方法。我们对相关方法感到兴奋,这些方法已经探索了这种思想用于其他类型的结构化表示和计算,例如语言树(Socher et al.,2011a,b,2012,2013; Tai et al.,2015; Andreas et al., 2016),状态 - 行动图中的部分树遍历(Guez et al.,2018; Farquhar et al.,2018),等级行动政策(Andreas et al.,2017),“胶囊”(Sabour et al.,2017)和程序(Parisotto et al.,2017)。其他方法试图通过模仿计算机中的关键硬件和软件组件以及它们如何在彼此之间传递信息来采集不同类型的结构,例如持久性时隙存储,寄存器,存储器I/O控制器,堆栈和队列(Dyer et al.,2015;Grefenstette et al.,2015;Joulin and Mikolov,2015; Sukhbaatar et al.,2015;Kurach et al.,2016;Graves et al.,2016)。

5.5 结论

  在深度学习的推动下,人工智能的最新进展已经在许多重要领域发生了变革。尽管如此,人类和机器智能之间仍存在巨大差距,特别是在高效,普遍化的学习方面。我们主张将组合泛化作为人工智能的首要任务,并提倡采用综合方法,这些方法利用人类认知,传统计算机科学,标准工程实践和现代深度学习的思想。在这里,我们探索了灵活的基于学习的方法,这些方法实现了强大的关系归纳偏差,以利用明确的结构化表示和计算,并提出了一个称为图网络的框架,它概括和扩展了应用于图形的神经网络的各种最新方法。图网络旨在使用可定制的图形到图形构建块来促进构建复杂的体系结构,并且它们的关系归纳偏差促进了组合泛化,并提高了样本效率,超过了其他标准机器学习构建块。

  然而,尽管它们具有好处和潜力,但在图形上运行的可学习模型只是走向类似人类智慧的道路上的踏脚石。我们对许多其他相关的,也许是未被充分认识的研究方向持乐观态度,包括将基于学习的方法与计划相结合(Ritchie et al.,2016; Andreas et al.,2016; Gaunt et al.,2016; Evans and Grefenstette,2018; Evans et al.,2018),开发基于模型的方法,重点是抽象(Kansky et al.,2017; Konidaris et al.,2018; Zhang et al.,2018; Hay et al.,2018),更多地投入元学习(Wang et al.,2016,2018a; Finn et al.,2017),并探索多智能体学习和互动作为高级智能的关键催化剂(Nowak,2006; Ohtsuki et al.,2006)。这些方向各自涉及丰富的实体概念,关系和组合泛化,并且可以从与通过明确结构化表示学习关系推理的方法的更大交互中获益并且有益。

转自15.Relational inductive biases, deep learning, and graph networks - weixin_40740160的博客 - CSDN博客,在此基础上进行了润色,LaTeX化数学公式,添加了缺失内容。

猜你喜欢

转载自blog.csdn.net/hangvane123/article/details/85220460