本篇文章2798字,读完约7分钟

雷锋。com ai技术评论:ijcai 2017将很快举行。出于这个原因,雷锋。(公开号码:雷锋。com)特别邀请了一些受聘的论文作者来详细解释他们的作品,以便感兴趣的老师和学生能够理解作者的研究思路。这篇文章最初发表在王永青的个人公开号“御花园”,由雷锋转载。《雷锋的人工智能科技评论》在编辑过程中没有改变初衷。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

此外,雷锋。网站将于8月12日下午举行“上海交通大学盖尔报告厅专题会议”分享会。感兴趣的学生将点击此链接了解更多关于该活动的信息。

王永青于2017年毕业于中国科学院计算技术研究所。他现在是中国科学院计算技术研究所的助理研究员。研究兴趣:信息传播、社会计算、数据挖掘和机器学习。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

标题:基于注意力的递归神经网络级联动力学建模

作者:,华为沈,,高金华,。

背景介绍这篇文章被提交给ijcai,并于今年被录用。本文以级联动力学建模为背景,切入点是如何将结构信息融入序列建模。

本文简要介绍了低序建模,这是一种按序挖掘关联模式的技术手段。这种关联模式可以根据序列中前后元素之间的距离是否相等来对应两个特定的问题:离散序列和时间序列建模。例如,离散马尔可夫模型、连续时间马尔可夫模型等都是经典的序列建模模型。当然,随着近年来神经网络的影响,利用递归神经网络(rnn)处理序列建模问题逐渐成为该领域的一个标杆。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

为了生成迭代和提高序列建模的效率,一般认为序列中元素之间的关系是按顺序传递的。基于这个假设,您可以仔细考虑序列建模的问题:不可能处理序列中每个元素的结构信息。图1显示了这个假设和传统序列建模中的实际情况之间的矛盾。在考虑了结构信息之后,图1(a)中的事件节点(u3,t3)和(u4,t4)不再依序依赖于它们之前的节点。如果继续采用传统的顺序建模方法,建模会有一定的偏差。这里,我们称之为序列建模中的交叉依赖问题。那么如何有效地解决这个问题呢?

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

传统序列建模的转移依赖

元素间的结构信息与传统序列建模假设之间的矛盾

图1传统序列建模假设与实际情况的矛盾

动机让我们首先考虑解决跳跃依赖问题的关键:如何在序列建模过程中考虑结构信息。但迄今为止,这一尝试并没有真正成功。例如,让我们考虑下面图1(a)中u4节点可能的依赖结构。、{u1}、{U2}、{u3}、{u1,U2}、{u1,U2}、{u1,u3}、{U2,u3}、{u1,U2,u3}。假设目标节点的可能依赖节点的数量为k,则有2k+1种可能的依赖结构。考虑到结构信息,序列建模的计算复杂度将呈几何级数增长,而过多的计算开销不会给最终的计算结果带来显著的改善。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

那么,有没有一种方法可以在没有太多计算开销的情况下解决跳转依赖问题呢?太好了。本文提出了一种在循环神经网络框架下顺序考虑结构信息的建模方法——青-RNN(基于注意的RNN级联动力学建模)。本文简要介绍了下循环神经网络:在循环神经网络中,序列元素是按顺序输入的,它们通过激活函数转化为相应的输入表示,并用来生成序列。一般来说,我们认为获得的表示信息是序列中相应输入的合理抽象。例如,在语言模型中,将单词作为输入,结果是单词语义的抽象。在信息传播中,以用户行为为输入,我们得到的是用户行为的合理抽象。因此,如果我们综合这些表示,并在同一个任务中一起工作,那么所谓的结构能被理解为当前任务对这些抽象表示的利用程度吗?

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

基于以上讨论,我们基本上确定了一个解决问题的思路:综合目前所有可用的表示,通过理解当前任务删除适当的信息,并推导出可能的依赖结构。

图2示出了在rnn框架下通过综合所有可用表示的序列建模的示意图。考虑到计算效率和有效性,我们决定采用注意机制来实现该架构。

一方面,注意机制的实现和计算效率很高;

另一方面,在许多不同的应用中,注意机制被证明是一种学习结构信息的好机制。

图3示出了具有注意机制的循环神经网络的结构图。注意机制的关键是学习获得注意向量α。我们约束向量∑i αi=1中所有元素的和,以便学习到的注意力可以用来表达相应表示的权重信息,然后反映可能的依赖结构。在图3的具体实现中,还给出了基于覆盖机制的体系结构图。这是因为在对序列顺序进行建模的过程中,一些表示信息可能会被多次重用,而序列中的其他表示信息则被忽略。然而,覆盖机制在原有的注意机制上增加了记忆信息,增加了信息重用的成本,进而提高了建模过程中所有表示信息的使用覆盖。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

图2集成了所有可用的表示来模拟rnn框架下的序列生成过程

图3青色-rnn的具体实现架构

实验结果在实验部分,我们列举了三组实验来说明青色神经网络框架的有效性。

实验1:传播预测(预测下一个激活用户和激活时间)

这个组是序列生成效应的标准实验。输入是观测信息的传播记录,这就要求序列建模模型能够准确还原观测信息。从图4中的实验结果可以发现,青色-rnn在传播预测的实验效果上明显优于所有其他比较方法。值得注意的是,传统的rnn模型(rmtpp)在预测下一个激活用户的任务方面并不比一些简单的模型(没有神经网络建模)更好(比较ct bern和ct jac),而带有结构信息的青色rnn与传统方法相比,实验效果有了显著的提高。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

图4传播预测结果

实验二:注意机制和覆盖机制的权重分配比较

这部分实验主要用于验证覆盖机制中添加的内存信息是否能有效提高所有表示信息的使用覆盖。根据图5中的实验结果的比较,可以发现由于记忆信息的引入,覆盖机制(图5中的右侧)中的权重分布比注意机制(图5中的左侧)中的权重分布更倾向于新的表示信息,因此计算的权重也可以更清楚地表达结构信息。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

图5注意机制和覆盖机制的权重分布比较

实验3:网络推理

这组实验主要是用来验证我们从开始解决问题时就有的一个问题:具有注意力和覆盖机制的循环神经网络结构是对依赖结构的描述吗?由于观测信息生成过程的限制,我们很难准确描述具体的依赖关系,但我们可以利用推断出的依赖结构来推断物理关系网络结构,进而回答这个问题。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

我们合成并删除了从网络推理的注意机制和覆盖机制中学习到的权重信息,并在图6中用红线标出了错误的推理结果。研究发现,带有注意机制的青色rnn和带有覆盖机制的青色rnn都可以有效地推断关系网络,这回答了我们的问题:注意机制和覆盖机制可以描述序列生成过程中的依赖结构。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

图6网络推理结果

内容提要:虽然本文是以信息传播为背景进行序列建模的,但是本文提到的跳跃依赖问题普遍存在于序列建模的许多场景中。在语言模型等相关文章中,我做了一些尝试,发现这种采用注意机制和覆盖机制的方法同样有效。因此,如果读者感兴趣,他们可以从我的github下载源代码,并在相关领域进行尝试。

中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

此外,这项工作的示范代码(ipython)可以在永旺/公共/RES _ dat/uai _ demo.tar.gz找到。

雷锋文章版权所有。严禁擅自转载。详情请参考转载说明。

标题:中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建

地址:http://www.hcsbodzyz.com/hcxw/5413.html