没有合适的资源?快使用搜索试试~ 我知道了~
我的天DeepLogic:面向端到端可区分逻辑推理Nuri Cingillioglu和 Alessandra Russoimperial.ac.uk伦敦帝国理工学院计算机系摘要将机器学习与基于逻辑的专家系统相结合,以获得两个世界的最佳效果,这正变得越来越受欢迎。然而,机器学习在多大程度上可以学习基于规则的知识进行推理仍然是一个悬而未决的问题。在本文中,我们探讨了如何符号逻辑,定义为逻辑程序在字符级别,学习表示在一个高维向量空间使用基于RNN的迭代神经网络进行推理。我们创建了一个新的数据集,定义了12类逻辑程序,举例说明增加了逻辑推理的复杂性,并以端到端的方式训练网络,以了解逻辑程序是否需要给定的查询。我们分析如何学习推理算法产生的原子,文字和规则的逻辑程序中的表示和评估对谓词和常量符号的长度增加,以及多跳推理的步骤增加。介绍越来越多的兴趣和尝试将机器学习与基于逻辑的专家系统相结合,以便两全其美:具有端到端的可训练系统,其需要很少的数据来学习如何推理,可能使用现有的背景知识,并且可由人类解释(Besold et al. 2017)。然而,目前还不清楚机器学习在多大程度上可以学习基于逻辑的推理,而不需要任何事先的工程。因此,在这项工作中,我们提供了第一个洞察符号逻辑,表示为逻辑程序在字符级别可以学习使用基于RNN的迭代神经网络进行推理。现有的基于逻辑的专家系统的一个关键组成部分是迭代地使用给定的知识库的能力。作为多跳推理,这些任务需要一个代理处理信息的几个步骤,以达到一个结论。这种推理范式已经由神经网络在诸如具有动态记忆网络的故事理解(Xiong,Meity和Socher2016)、具有可微分神经计算器的图形问题(Graves etal. 2016)和可视化问答版权归作者所有。以. Martin,K. Hinkelmann,A. Gerber,D.Lenat,F.van Harmelen,P.Clark(Eds.),AAAI 2019春季研讨会将机器学习与知识工程相结合斯坦福大学,帕洛阿尔托,加利福尼亚州,美国,2019年3月25日至27日。关系网络(Santoro et al.2017)和内存消耗控制网络(Hudson和Manning 2018)。传统上,逻辑程序上的推理系统是手动构建在算法上的,如反向链接(Apt和Van Emden 1982 ) 或 正 向 链 接 ( Russell 和 Norvig2016)。已经有人尝试用神经网络(如Neural Prolog(Ding 1995))部分地替换这些系统的符号组件,神经网络通过逻辑规则的符号应用来另一个重要的组成部分,变量的统一已经由统一神经网络(Komendantskaya2011)解决然而,这些网络都不能作为一个完整的推理引擎,可以单独使用示例进行端到端的训练,并学习符号知识的相应表示。机器学习允许可扩展性的另一个重要方面是学习密集的分布式表示,例如单词嵌入(Pennington,Socher和Manning 2014)。这种方法用于学习预测的嵌入以执行知识库完成(Serafini和Garcez 2016);然而,现有的推理机制,如反向链接(Rock täschel和Riedel2017),引导机器学习组件学习这种嵌入。相反,我们建立在迭代神经网络的先前工作上,该迭代神经网络学习算法任务,例如数字相加(Graves,Wayne和Danihelka 2014)和序列处理(Zaremba et al. 2016)。因此,我们从头开始学习reasoning任务,而无需事先工程知识库表示为逻辑程序的克。关键的动机是,如果我们可以使用机器学习来学习符号推理,那么我们可能能够以最小化它们必须手动组合的程度。重点不是提取先前的符号假设,而是学习如何利用给定的知识库;因此,我们不在归纳逻辑编程的领域内进行比较(Muggleton和De Raedt1994)。本文提供了以下贡献,(i)一个新的合成数据集,由12个不同类别的正常逻辑程序,(ii)迭代神经推理网络学习端到端的不同推理任务和(iii)分析这些网络如何表示逻辑程序和处理多跳推理。我们的实现可在https://github.com/nuric/deeplogic在线公开获得。−简体中文.►∈ Q{}∈C表1:任务1到7的示例程序。1:事实2:统一3:1步骤4:2步5:3步6:逻辑与7:逻辑或e(l)。 〇(V,V)。g(L,S):-x(S,L).x(G,B):-k(G,B).p(P,R):-b(R,P)。f(P,U):- b(P),p(U).e(D,X):-n(D,X)。i(u)。 i(x,z)。x(a,m)。k(Z,V):-g(Z,V).b(A,L):-a(A,L)。b(x)。e(D,X):-w(D,X)。n(d)。y(w,d)。y(X):-r(X)。g(k,k)。a(W,F):-v(F,W).p(x)。e(w,y)。v(h,y)。p(a,b)。p(h)。e(k,s)。v(t,i)。p(y)。n(n,j)。p(n)。t(A,U)。s(t,v)。p(L,G):-v(G,L).I ⑶:-t ⑶。e(y,v)。w(t)。?e(l)。1?o(d,d)。1?g(m,a)。1?x(k,k)。1?p(t,i)。1?f(x,x). 1?e(n,j)。1?i(d). 0?o(b,d)。0?g(a,m)。0?x(k,s)。0?p(i,t)。0?f(y,x)。0?e(i,j)。0背景一个普通的逻辑程序(Apt和Bol 1994)是一组规则的形式:A← L1,. 我的天我的天 ,Ln(n ≥ 0)(1)其中A是原子并且每个Li是文字。文字是一个原子(正文字)或形式为notA的否定原子,其中not是失败否定(Clark 1978)。原子A表示头部,L1,. 我的天我的天 ,在规则的主体中。一个原子是一个谓词与一些arity,例如。p(X,Y),q(a),其中变量是大写字符,谓词和常数是小写。如果一个规则不包含任何变量,我们称之为基本规则,而基本规则中的空实体则称为事实。我们遵循与Prolog类似的语法(Clocksin和Mellish 2003),并将正常逻辑程序表示为:p(X):-q(X),−r(X).(二)q(a)。(三)如在等式2中,the被替换为:-并且失败否定不被替换为,同时保持相同的语义。当没有正文字面值时,我们完全省略隐含,等式3。在之前的任务中看到的概念每个任务由遵循等式4中的推理函数的签名的三元组(上下文、查询、目标)组成为了简洁起见,一个上下文可以有多个查询,并以以下形式表示:在上下文之后查询目标。上下文包含最简单的可能规则,这些规则涵盖了所需的推理过程,并且不会像单元软件工程测试。每个任务都是使用从中提取样本的固定过程生成的对于常量和谓词,我们使用小写英文字母表,对于变量使用大写。组成谓词、常量和变量的字符序列的长度可以是任意长度(仅示出长度为1的示例),但是我们为训练数据集生成最多2的长度,为测试数据生成更长的长度。原子的丰度在1和1之间随机选择。2. 对于每个样本,我们还生成不相关的规则作为噪声,这些规则总是具有不同的谓词和随机结构,同时仍然保留任务的语义。事实最简单的任务只包含事实。只有一种成功的情况,其中查询出现在上下文中,并且可以以3种不同的方式失败:(i)常量可能f(C,Q)= 1ifC►Q0否则(四)不匹配(如表1所示),(ii)谓词可能不匹配或(iii)查询可能根本不在上下文中f(C,notQ)=1−f(C,Q)(5)我们将逻辑推理过程定义为推理函数f,等式4,给定正常逻辑程序(没有函数符号)作为上下文C和基础原子作为查询Q返回1、0取决于上下文是否需要查询C Q。我们现在可以使用对应的正基础查询Q的结果来定义失败否定而不是Q,等式5。f(C,Q),p(Q|C)(6)为了学习推理过程,我们为神经网络定义了一个辅助目标,并将推理函数f视为给定上下文的查询的条件概率,等式6。从机器学习的角度来看,这种方法将问题呈现为二进制分类问题,并允许使用标准交叉熵损失进行训练。的任务受bAbI数据集(Weston et al. 2015),我们列出了12个任务,涵盖了正常逻辑程序的各个方面。任务越来越复杂这些失败可以级联,并且查询可以由于多种原因以相等的概率失败。统一这些任务包含具有空主体的规则和在头部具有变量的原子。意图的目标是强调不同p(X,Y)和相同变量p(X,X)之间的统一的语义。如果对应的变量统一,则查询成功,如果其他变量不统一,则查询失败。睿的相同变量不匹配不同常数的故障情况见表1。N步演绎逻辑推理的一个突出特征是应用在主体中包含文字的规则。这些任务涵盖了当体内存在单个正原子时的情况所有这样的规则只包含变量,并且可以生成任意步骤的链。对于训练数据集,我们生成多达3个步骤,表1中的样本当链中最后一个规则的主体使用与查询中相同的常量作为基础时,查询成功我们偶尔交换变量p(X,Y):-q(Y,X)。 强调规则的变量绑定方面可能发生在任何在链中的规则或根本没有。当交换的常量不匹配或链中的最后一个主体文字由于第一个任务中的原因而失败时,将涵盖失败情况。∧∨∧∨►表2:任务8到12的示例程序。8:传递性9:1步骤NBF10:2步骤NBF11:和NBF12:或NBFf(A,W):- q(A,P),d(P,W).s(X,J):--p(J,X).r(C):-o(C)。b(G,B):-i(G),u(B).y(Z):--e(Z)。q(h,t)。p(e,x)。〇(P):-1(P)。i(w)。y ⑵:-b⑵。d(t,j)。v(V,Q):-u(V,Q)。l(o).g(a).y(r)。q(d,m)。o(N):--q(N)。g(u)。u(a)。e(d)。d(n,g)。t(x,e)。p(U,L):-e(U,L)。f(t)。s(a)。s(S,F):- x(S,A),e(A,F).m(y,c)。p(X,X)。l(W):- a(W),d(W)。b(m)。?f(h,j)。1?s(x,e)。0?r(u)。1?b(a,a). 1?y(a)。1?f(d,g)。0?s(e,x)。1?r(o)。0?b(w,a)。0?y(d)。0逻辑AND在前面的演绎任务的基础上推理引擎现在必须跟踪并证明两个主体文字都成功。当一个随机选择的正文文本由于类似于第一个任务的原因失败时,将发生失败。逻辑或有多个匹配的头捕捉的语义在逻辑编程中通过创建几个可能的路径成功的证明,在表1中的例子。在这个任务中,我们将查询谓词分支为3种方式,2种含义和1种基本规则。当任何规则成功时,查询成功;当所有匹配规则失败时,查询失败。传递性基于前两个任务,传递性情况涵盖存在变量绑定。它要求模型表示规则主体文字的连接,并匹配多个可能的事实。当内部变量与基础实例统一时,case成功,否则失败。我们期望推理引擎解决前两个任务,以便解决表2中的示例。N-Step Deduction with Negation这些任务介绍了失败否定的概念。链中第一条规则的正文文字被求反,并生成任意长度的链。对于训练数据集,我们只生成长度为2的证明链,表2中的样本。当求反的主体原子失败时,查询成功;交换的变量与常量不匹配,或者链中最后一个规则的主体文字由于类似于第一个任务的原因而失败每当被求反的体原子遵循由等式5描述的语义成功时,查询失败在引入失败否定之后,我们将否定与逻辑一起考虑,并随机对表2中的一个体字面值进行否定。因此,当被求反的主体原子失败并且另一个文字成功时,查询成功。当任何一个正文文本失败时,查询都可能失败,类似于非求反的情况。最后,我们将否定与逻辑格一起考虑,并对一个规则的主体文字进行否定。当除被求反的规则之外的任何匹配规则成功时,查询成功;如果被求反的规则成功而其他匹配规则失败,则查询失败,示例见表2。神经推理网络在本节中,我们描述了用于学习推理函数f(等式4)的基于RNN的迭代神经网络。广义地说,我们称学习逻辑推理的网络为Neu-Ral Reasoning Networks的目标是学习如何仅从示例中计算C Q。这些网络的主要挑战是具有必须处理所有任务的固定网络架构,这与基于树的递归网络(Tai,Socher和Manning 2015 )或图网络(Battaglia 等人,2015)不同。2018),其根据每个输入构建不同的网络。我们放置此约束以避免将任何先前的结构信息工程化 为网 络。 我们 从 记忆 网络 (We- ston , Chopra和Bordes 2015 ) 中 收 集 灵 感结 合 端 到 端 的 方 法(Sukhbaatar et al. 2015)和动态存储器网络(DMN)的迭代方式(Kumar et al. 2016),同时遵循符号推理方法的步骤,如反向链(Apt和Van Emden 1982)。图1:迭代记忆注意力(IMA)模型的迭代单元的图形概述。上下文和查询在字符级别进行处理以产生文字嵌入,然后在规则的头部上计算注意力。使用注意力的统一器GRU输出的加权和更新下一次迭代的状态。设计我们可以把逻辑程序上下文看作只读存储器,证明状态看作可写存储器组件。以类似于Prolog的反向链接算法(Clocksin和Mellish 2003)的方式(ii) 经由注意选择规则的机制,以及(iii)更新关于规则的状态的部件为此,我们引入了迭代记忆注意力(IMA)网络,给定一个正常的逻辑程序作为上下文和一个积极的地面原子作为查询,嵌入文字在一个高维向量空间,注意到规则使用软注意力和更新状态使用一个循环网络。IMA应该是我∈∈我∈∈我我研究i00米0国使用门控递归单元(GRU)(Cho et al.2014年)开始其中h0=→−0,以相反的顺序处理字符我αt=σ(W1×(U×dcat+b)+b1)日表3:简易测试集(每个IOk)的结果,d=64,sm=softmax。培养模式LSTM麦克多任务DMN顶a麦克课程DMN IMA嵌入-规则规则字面lit+规则规则规则文字lit+规则关注-钐σσ钐钐钐σσ钐钐事实0.610.841.001.001.000.980.891.001.000.990.94统一0.530.860.870.900.870.850.830.850.880.880.861步骤0.570.900.740.980.940.950.770.620.960.930.922步0.560.810.670.950.950.940.700.580.950.910.893个步骤0.570.780.770.940.940.940.640.640.930.860.87和0.650.840.800.950.940.850.810.700.800.780.83或0.620.850.870.970.960.930.750.750.960.930.90及物性0.500.500.500.500.520.520.500.500.500.500.501步NBF0.580.920.790.980.940.950.650.580.960.910.922步NBF0.570.830.850.960.930.950.570.730.950.900.90和NBF0.550.820.840.920.930.850.610.610.710.770.83或NBF0.530.740.750.860.860.860.590.630.860.830.84简单均值0.570.810.790.910.900.880.690.680.870.850.85中位平均值0.520.700.700.860.810.790.600.610.810.760.74硬平均值0.510.630.660.830.750.720.550.580.760.700.68被认为是存储器网络的变体,其被设计为适合逻辑推理过程,其中递归分量在文字上迭代以执行推理,图1中示出了文字嵌入网络的输入是两个字符序列cC,. . .,c C和c Q。. .,c Q用于上下文和查询。国家我们还附加了一个空白的规则(),它作为一个可学习的参数,并且通常在没有其他规则适用时被关注迭代迭代步骤包括注意规则,使用每个规则计算新状态并更新旧状态。网络迭代T步,预先固定,初始状态s0∈Rd设置为查询向量s0=q。泰丽使用字符级输入而不是符号级令牌的主要动机是约束网络cat=[st;q;ri;(st−ri)2;stri](8)学习子符号表示,这些子符号表示可能扩展到以前看不见的文字。我们会预先处理-d d d二二二我我(九)将文本序列分成文字,并获得编码为正整数的字符的输入张量ICNR×L ×m',其中R是规则的数量,L是文字的数量,m'是文字的长度查询是编码为向量IQNn的单个基正原子。这种预处理允许网络在迭代规则时独立地考虑每个文字,从而更好地控制推理过程。ht=GRU(O[I::t],ht−1)(7)在任意时间步t,我们计算一个特征向量ca tR5D对于规则ri=Ci〇的每个头部,使用当前状态s tRd,等式8,其中[;]是级联运算符。我们还使用另一个GRU对文字h′ij = GRU(Cij,h′i,j−1)进行嵌入规则的实验,并将最终状态r i= h′iL作为规则的表示。为了计算最终的注意力向量αt,我们使用两层前馈网络,等式9,其中σ是S形函数。 我们还实验了softmax公式的注意力两层前馈网络后的向量αt每个文字都使用递归神经网络嵌入,该递归神经网络仅处理该文字I::t的字符,等式7t=GRU(Cij,utiji(j−1))(10)其中O[I::t]是字符的独热编码。我们st+1=Σαtut我(十一)强调谓词并取最后的隐藏状态ht是文字l∈Rd的嵌入,其中d是为了应用规则,我们使用另一个递归神经网络来处理每个规则Cij的每个文字。 初始嵌入的固定尺寸上下文和查询是隐藏状态ut=st被设置为当前状态st,则对于嵌入使用相同的网络产生一个上下文张量每个规则一个GRU被用来计算新的隐藏状态C∈RR×L ×d,其中R是规则数,L数ut,等式10。最后,新的状态st+1变为艾湾对于查询,我们得到向量q∈Rd。不为了使网络不改变地传播状态我们附加一个空的哨兵φ=→−0,它所有的网络工作最终隐藏状态的加权和,等式11。我们称内部GRU统一器,因为它需要学习变量和常量之间的统一以及每个规则如何通过继续与当前状态的交互来忽略当前推理步骤你图2:在任务5至7上,针对查询p(a)生成的注意力映射,其中左列中的IMA具有softmax注意力执行反向链接,右列中的IMA具有文字+规则嵌入正向实验我们对我们的模型的变化个别任务进行实验作为基线,我们使用LSTM(Hochreiter和Schmidhuber 1997)来处理查询,然后使用上下文来预测答案。我们还将我 们 的 模 型 与 动 态 记 忆 网 络 ( DMN ) ( Kumar etal.2016 ) 和 记 忆 注 意 力 控 制 ( MAC ) ( Hudson 和Manning 2018)网络,这两个网络都包含了迭代组件,在视觉问答数据集中实现了最先进的结果使用DMN和MAC,上下文被分成规则,并且整个规则使用字符级的GRU嵌入。与使用另一个GRU来积累规则嵌入和当前状态的信息的DMN不同,我们的变体IMA使用GRU来处理文字嵌入,以计算新状态作为每个规则的加权和。培训我们采用两种培训方案:课程学习(Bengio et al.2009年,多任务。通过课程学习,模型以增量方式进行训练,从任务1和2开始,仅进行1次迭代。然后,任务随着迭代次数的增加而累积,其中任务3、7、9、12使用2次迭代,任务4、6、8、11使用3次迭代。我们确定的最小数量的迭代所需的任务的基础上Prolog(时钟和Mellish 2003年)。最后,所有任务都以最多4次迭代引入。多任务方法在整个数据集上进行训练,预先固定4次迭代使用Adam(Kingma and Ba 2014)通过反向传播对模型进行120个时期(每个任务10个)的训练,其中小批量大小为32,每个任务的训练数据集大小为20k个我们确保小批量包含来自每个训练任务的至少1个样本逻辑程序在每个时期之后被洗牌,并且上下文中的规则也随着每个小批被洗牌由于我们可以访问数据生成分布,因此我们在任何模型中都不使用任何正则化,并相应 地 增 加 了 训 练 数 据 集 的 大 小 , 以 避 免 过 度 拟 合(Goodfellow,Bengio和Courville 2017)。我们生成4个测试集的难度增加:验证,容易,中等和困难,有多达2,4,8和12字符的谓词和常量,以及增加了一些不相关的规则分别。每个测试集由10k个在表3中示出了每个任务生成的逻辑程序以及对于在易集上具有状态大小d=64我们观察到所有迭代模型的性能都优于除了任务8之外的基线,所有模型都失败了。我们推测的原因是,该模型没有看到存在变量绑定超过2个字符常量,并未能概括在这种特殊情况下。我们注意到,课程训练制度对任何模型都没有好处,这很可能是因为我们在每次迭代中引入了新的、看不见的任务,使得具有先前训练的模型没有优势。在2次迭代中求解OR不会在3次迭代中改进AND的解。嵌入-丁文字似乎提供了一个优势,因为所有IMA模型优于DMN和MAC的嵌入规则,当我们考虑每个测试集的平均精度我们假设文字嵌入提供了一个更好的视图,并允许更好的概括随着长度的增加,文字(点燃+规则)的嵌入规则也降低了性能。虽然我们的变体IMA在所有测试集上表现最好,但随着难度的增加,所有模型的平均准确度都会迅速下降我们推测,一个有限大小的状态向量存储有限的信息,看不见的独特序列的长度增加,并分析这种行为在下一节中进一步。图2描绘了IMA使用softmax attention生成的注意力地图。尽管默认情况下模型收敛到反向链接,但是通过(i)反转统一器GRU的方向,等式10,以及(ii)跳过任务2,我们可以创建对具有匹配常数的基础事实的偏置。这种方法鼓励我们的具有规则嵌入(lit+rule)的模型IMA收敛到前向链接(Rus-sell和Norvig 2016),尽管需要更多的训练时间(因此前向链接的结果未包括在表3中)。这一观察结果强调了这样一个事实,即固定的网络架构可以足够灵活,在适当的激励下,可以为同一问题域学习两种不同的解决方案。分析由于模型是以端到端的方式训练的,因此还必须学习帮助执行推理的逻辑结构的表示。在本节中,我们将仔细研究图3:单个字符文字的嵌入的第一、第二和最后主分量形成具有聚集在垂直列中的谓词和在水平表面上的常数的网格状结构;从IMASM。图7示出了嵌入GRU的表示、IMA的等式7和DMN的规则嵌入。数据集中的一个重要假设是,每个谓词和常量组合都是唯一的。我们希望这个设置能够创建一个允许区分每个文字的结构。因此,当使用主成分分析(PCA)在3维中可视化单字符和双字符原子的嵌入时,我们观察到晶格状前两个组件选择谓词,最后一个组件选择常量,以唯一标识文字,并明确区分单字符谓词和双字符谓词。这种安排与利用实体之间的相似性的分布式表示形 成 对 比 , 例 如 在 自 然 语 言 嵌 入 中 ( Mikolov etal.2013)。在我们的例子中,p(a)可能与p(b)比与pp(a)更相似,尽管它们都被认为是唯一的。图4:重复字符谓词使嵌入饱和并收敛到相应的点,等距线以灰色绘制;从IMASM。由于嵌入大小是有限的,我们还期望随着文字长度的增加,嵌入空间中的饱和度。我们通过重复字符p64次来捕捉这种现象我们注意到奇数和偶数长度谓词如何收敛到它们各自的点,这表明由GRU产生的嵌入(等式7)学习奇偶校验。如果我们采取结构上不同的文字,我们观察到对文字是否被否定或接地的偏好,然后原子的arity,图5a。我们相信这种聚类捕获了4个主要聚类(灰色线)内的数据集中可用的文字语义此外,如果我们查看通过DMN学习的规则嵌入,我们注意到基于规则结构的类似聚类,其中再次接地,否定,arity和主体文字的数量作为学习的区别特征,图5b。集群内的多个点对应于遵循类似排序的不同谓词,例如谓词p通常是最上面的点。为了评估多跳推理,我们生成的逻辑程序,需要增加数量的演绎步骤。虽然训练数据包含多达3个步骤,但我们生成多达32个步骤,并且网络运行n+1次迭代。我们得到了类似于其他递归神经网络的结果基于系统(Zaremba et al.2016),并且观察到超过训练线(灰色虚线)的准确度的稳定下降,如图6所示,其中imasm和imarsm分别指示具有softmax注意力和规则嵌入的我们推测,随着每个迭代步骤的状态表示退化,最终丢失信息,因为模型往往会产生嘈杂的注意力地图或状态转换。我们的IMA模型与softmax注意保持最高的准确性,最有可能是由于softmax操作创建的稀疏性。为了评估对看不见的符号的泛化,我们采取任务3并生成随机谓词或常量符号的字符长度增加到64,远远超过训练数据集长度2。尽管我们观察到文字嵌入可能饱和,但模型可以处理更长的随机生成的谓词或常量符号,如图7a所示,因为仅查看几个字符就可以确定唯一性。这反映了我们的直觉,即查看序列的部分可能足以确定等式,而不是完全记住它们。查看电话号码的最后几位数字以检查它们是否相同。为了理解嵌入和状态维度d如何影响模型,我们实验了尺寸32、48、64、96和128,为我们的IMA模型运行每个课程训练会话3次图7b示出了增加维度大小并不有助于所有任务的平均准确度的明显增加,并且容易、中等和困难测试集的准确度的下降遵循与测试集相似的模式。每个维度尽管初始增加超过d=32,但我们在d=64时得到准确度的最高上限,其个体结果在表3中。我们设计的任务是越来越困难的建立在以前看到的问题,如统一前演绎。我们预计使用迭代方案训练的模型会随着网络深度的逐渐增加而更好地泛化。然而,当我们对平均值取平均(a) 结构上不同的字面量首先通过它们是否被否定或接地来聚类,然后通过arity(添加的灰色线作为视觉辅助);来自IMAsm。(b) 规则嵌入基于它们的结构形成集群,其中否定和非否定规则之间有区别(添加的灰色线作为视觉辅助),来自DMN。图5:学习表示的主成分分析(PCA)。图6:当模型迭代超过训练步数(灰线)以执行越来越多的演绎步骤时,所有模型的准确性都会降低。对于所有维度的准确性,对于跨测试集的具有软最大注意力的IMA的所有3次运行,我们没有辨别出课程训练超过验证集之外的多任务训练的任何优势。图7c示出了两种训练方案的测试集上的性能的类似我们认为,这一结果源于每次迭代都引入新任务,并且模型没有任何激励来抽象子任务,直到下一组看不见的任务被纳入训练数据集。讨论考虑到生成的逻辑程序的简单、类似单元测试的性质,迭代神经网络缺乏鲁棒的结果进一步鼓励了机器学习的组合和符号系统,而不是包含一个与其他。在本节中,我们将尝试提供更多的讨论和见解,以了解为什么人们可能会或可能不会使用迭代神经网络从头开始学习符号推理。虽然本文中提出的基本逻辑程序都可以使用现有的符号系统,如Prolog(Clocksin和Mellish 2003)来解决,但我们很难从神经网络中看到类似的性能。如图6所示,增加任务3中的步骤数量,证明了使用连续表示进行严格符号推理的脆弱性嵌入空间在容量上是固有受限的,因为它具有固定数量的维度。虽然64维向量在理论上可以编码大量信息,但在实践中,使用反向传播训练的神经网络似乎无法保证它们在向量空间中学习表示的效率。我们推测,这会在每次迭代中产生累积噪声,最终降低性能。另一方面,学习的连续表示缩放到非常长的先前未见过的符号,图7a,这是神经符号系统的期望属性。注意力机制允许最先进的基于记忆的网络寻址和操作外部记忆(Weston、Chopra和Bordes 2015)。在神经推理网络的情况下,注意力组件提供了选择规则的方法。一个有趣的结果是,所有的神经推理模型在适用时,例如当存在如图2所示的两个匹配规则时,都试图关注多个规则。与Prolog不同,这种方法允许神经网络同时探索多个可能的分支,以更少的步骤完成推理任务。然而,我们推测,当匹配规则数量很大,可能有数百条时,这种注意力机制将成为瓶颈,例如在知识库完成任务中,因为它将尝试聚合所有匹配(a) 模型可以应付,特别是IMA与文字嵌入,当谓词和常量符号的长度增加,domly随机生成。(b) 所有任务的平均准确度对增加嵌入维度d没有显示出明显的增加超过d=64。(c) 平均精度的培训制度适用于IMAsm对测试集在所有维度上显示没有优势的课程培训,ING概括。图7:在增加的符号长度、状态维度和训练方案上的准确度图规则在一个步骤。注意力机制的明确强监督,类似于原始DMN(Kumar et al.2016)工作或分层架构可能需要鼓励一种形式的迭代回溯。看似相关的任务之间缺乏抽象限制了看不见的逻辑程序的性能。在课程训练期间,我们注意到解决任务1、2和3的模型在解决任务4时没有优势,因为任务3的最终状态表示专门寻找诸如p(a)的基础实例来完成任务。然而,在任务4中,模型需要匹配另一个规则p(X):-并再次迭代。当呈现任务4时,模型很可能必须调整中间状态表示以检查第二规则情况;结果,图7 c也可以被解释为缺乏对数据集中日益复杂的任务的抽象,因为课程学习没有提供明显的优势。换句话说,神经模型似乎没有学习到足够通用的推理过程,可以与现有的符号系统进行比较;因此,我们无法在现有的逻辑程序基准上或Prolog上运行它们。相关工作已经有许多尝试将符号推理与机器学习技术结合起来,称为神经符号系统(Garcez,Broda和Gabbay 2012)。提升关系神经网络(Sourek et al. 2015)的基础子句,当将网络构造为一组加权定冠词时,将它们转换为命题程序。我们不对程序进行预处理以确定变量,神经推理网络必须学习统一。TensorLog(Co- hen 2016)从逻辑规则中构建我们的方法不因素,编译或使用任何隐含的知识,一阶逻辑推理或规则的应用程序。我们也只对字符进行one-hot编码,而不是对整个谓词或常量进行编码,并且只将标签1或0作为目标,使用相同的神经网络进行端到端训练,每个正常逻辑具有相同的架构和权重计划逻辑张量网络(Serafini和Garcez 2016)“在一个简单但有代表性的例子上”解决了知识完成在上述工作之后,神经定理教授(Rocktaüschel和Riedel2017)通过使用现有的符号推理引擎符号地构建嵌入之间的关系来学习谓词和常量的分布我们设计我们的任务,使得神经网络尝试学习不仅在字符级别的表示,而且在没有现有推理引擎和方法的帮助或知识的情况学习常数之间的相似性可以用于执行链接预测任务( Nickel et al.2016) 和 知 识 基 础 完 成 ( Socher et al.2013),但创建不必要的推论时,类似的常数确实应该是唯一的(岩石taüschel等l。2014)。尽管我们将每个常数设置为唯一的,但如果数据包含相同的结论,我们希望在训练期间将类似常数的嵌入创建可微分逻辑推理网络也可以归纳规则(Evans and Grefenstette 2018);然而,在这个阶段,我们不会在推理任务中学习逻辑规则,并假设它们被赋予模型。 可能的世界网(Evans et al. 2018)遵循使用语义、世界解释来学习命题逻辑蕴涵的独特方法;然而,它们通过解析逻辑公式并以类似树的方式构建神经网络来利用逻辑公式的语法,其中节点对应于逻辑运算符。到目前为止所提到的工作是为演绎数据库、关系学习、链接预测、知识库完成或命题程序设计的;因此,我们使用固定的基于RNN的迭代网络学习正常逻辑程序的推理和嵌入的任务本质上是不同的,使得直接的经验比较不合理。神经推理网络可以被视为逻辑程序的解释器,因为规则可以像指令一样起作用。这种观点反映了神经程序解释器(Reed和De Freitas 2015)和神经符号解释器Machines(Liang et al.2016)。 这些系统包含允许执行更复杂动作的离散操作,克服了降级状态表示的问题;然而,它们需要强化学习设置来训练。我们相信,在我们的数据集上应用的强化学习方法将学习与Prolog类似的算法(Clocksin和Mellish2003)。结论我们提出了一个新的合成数据集,并提供了机器学习如何包含符号推理的见解,定义为使用基于RNN的迭代神经网络的逻辑程序端到端训练的完全可微模型有其固有的缺点:当迭代次数增加时,它们似乎会失去跟踪,并且嵌入空间容量有限。然而,通过理解如何组织嵌入空间来存储符号信息,这种网络可能仍然掌握着将符号先验知识纳入连续空间的关键。由于这样的神经网络提供了一个可微分的,但近似的推理引擎的逻辑程序,在未来,我们希望通过传播梯度回到上下文的逻辑规则的连续嵌入诱导规则然而,最初如果可能的话,必须学习一个更强大的神经推理网络,一个是性能相当的,曼斯现有的基于逻辑的专家系统。引用Apt,K. R.,和Bol,R.国1994.逻辑编程和否定:一个调查。《逻辑程序设计杂志》19:9-71。Apt,K.R.,和Van Emden,M.小时一九八二年对逻辑程序设计理论的贡献Journal of the ACM(JACM)29(3):841-862.巴塔利亚山口W.; Hamrick,J.B.; Bapst,V.;Sanchez-Gonzalez,A.;Zambaldi,V.;Malinowski,M.;Tacchetti,A.;Raposo,D.;Santoro,A.; Faulkner,R.等,2018年。关系归纳偏差、深度学习和图网络。arXiv预印本arXiv:1806.01261。Bengio,Y.;Louradour,J.;Collobert,R.;Weston,J.2009年课程学习。第26届机器学习集,41ACM。Besold,T.R.; Garcez,A.d.; Bader,S.;Bowman,H.;多明gos,P.; Hitzle r,P.; Kuhnber ge r,K.- U.; 兰姆湖C.;Lo wd,D.; 利马山口先生五.; 等人2017年。神经符号学习和推理:调查和解释。arXiv:1711.03902。Cho,K.;Van Merri eenboer,B.;Bahdanau,D.;和Bengio纽约2014.关于神经机器翻译的特性:编码器-解码器方法。arXiv:1409.1259。Clark,K.法律1978.否定就是失败。在逻辑和数据库。斯普林格293-322Clocksin,W. F.和Mellish,C.美国2003. PROLOG编程施普林格科学商业媒体。Cohen,W.水渍2016. Tensorlog:一个可区分的演绎数据库。arXiv:1605.06523。丁湖1995.神经程序:概念、结构与机制。《系统、人与控制论》,1995年。21世纪的智能系统 IEEE国际会议,第4卷,3603-3608。IEEE。埃文斯河和Grefenstette,E. 2018.从噪声数据中学习解释规则。Journal of Artificial Intelligence Research61:1-64.Evans,R.;Saxton,D.;Amos,D.;Kohli,P.;还有格雷芬斯特大肠2018年。神经网络能理解逻辑蕴涵吗?arXiv:1802.08535。Garcez,A.美国d.; Broda,K. B.;和Gabbay,D.先生2012.神经符号学习系统:基础与应用。施普林格科学商业媒体。古德费洛岛Bengio,Y.;和Courville,A. 2017. 深度学习The MIT Press.Graves , A.;Wayne , G.;Reynolds , M.;Harley ,T.;Danihelka,I.; Grabska-Barwi n′ska,A.; Colmenarejo,S.G.; Grefenstette,E.; Ramalho,T.; Agapiou,J.;等2016年。使用具有动态外部存储器的神经网络的混合计算。Nature538(7626):471.Graves,A.;Way
下载后可阅读完整内容,剩余1页未读,立即下载
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- VMP技术解析:Handle块优化与壳模板初始化
- C++ Primer 第四版更新:现代编程风格与标准库
- 计算机系统基础实验:缓冲区溢出攻击(Lab3)
- 中国结算网上业务平台:证券登记操作详解与常见问题
- FPGA驱动的五子棋博弈系统:加速与创新娱乐体验
- 多旋翼飞行器定点位置控制器设计实验
- 基于流量预测与潮汐效应的动态载频优化策略
- SQL练习:查询分析与高级操作
- 海底数据中心散热优化:从MATLAB到动态模拟
- 移动应用作业:MyDiaryBook - Google Material Design 日记APP
- Linux提权技术详解:从内核漏洞到Sudo配置错误
- 93分钟快速入门 LaTeX:从入门到实践
- 5G测试新挑战与罗德与施瓦茨解决方案
- EAS系统性能优化与故障诊断指南
- Java并发编程:JUC核心概念解析与应用
- 数据结构实验报告:基于不同存储结构的线性表和树实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)