ICLR 2019最佳论文 | ON-LSTM:用有序神经元表达层次结构

ON-LSTM是一种LSTM的变种,通过有序神经元来表达序列中的层次结构,使得模型能无监督地学习到句子的句法结构。论文提出,将神经元按特定顺序排列,结合层级信息,使得信息更新时能够区分不同层级,进而利用神经元的序信息。ON-LSTM在语言模型任务中表现出色,甚至能解析出输入序列的语法结构,其设计巧妙地融合了树结构和递归神经网络的思想。
摘要由CSDN通过智能技术生成
 
 

640


作者丨苏剑林

研究方向丨NLP,神经网络

个人主页丨kexue.fm


今天介绍一个有意思的 LSTM 变种:ON-LSTM,其中“ON”的全称是“Ordered Neurons”,即有序神经元,换句话说这种 LSTM 内部的神经元是经过特定排序的,从而能够表达更丰富的信息。


ON-LSTM 来自文章 Ordered Neurons: Integrating Tree Structures into Recurrent Neural Networks,顾名思义,将神经元经过特定排序是为了将层级结构(树结构)整合到 LSTM 中去,从而允许 LSTM 能自动学习到层级结构信息。


这篇论文还有另一个身份:ICLR 2019 的两篇最佳论文之一,这表明在神经网络中融合层级结构(而不是纯粹简单地全向链接)是很多学者共同感兴趣的课题。 


640?wx_fmt=png


640?wx_fmt=png


笔者留意到 ON-LSTM 是因为机器之心的介绍,里边提到它出了提高了语言模型的效果之外,甚至还可以无监督地学习到句子的句法结构!正是这一点特性深深吸引了我,而它最近获得 ICLR 2019 最佳论文的认可,更是坚定了我要弄懂它的决心。认真研读、推导了差不多一星期之后,终于有点眉目了,遂写下此文。 


在正式介绍 ON-LSTM 之后,我忍不住要先吐槽一下这篇文章实在是写得太差了,将一个明明很生动形象的设计,讲得异常晦涩难懂,其中的核心是640?wx_fmt=png640?wx_fmt=png的定义,文中几乎没有任何铺垫就贴了出来,也没有多少诠释,开始读了好几次仍然像天书一样。总之,文章写法实在不敢恭维。


基本原理


通常来说,在文章的前半部分,都是要先扯一些背景知识的。


LSTM


首先来回顾一下普通的 LSTM。用常见的记号,普通的 LSTM 写为:


640?wx_fmt=png


如果熟悉了神经网络本身,其实这样的结构没有什么神秘的,640?wx_fmt=png就是三个单层全连接模型,输入是历史信息640?wx_fmt=png和当前信息640?wx_fmt=png,用 sigmoid 激活,因为 sigmoid 的结果在 0~1 之间,所以它们的含义可以诠释为“门(gate)”,分别称为遗忘门、输入门、输出门。不过我个人觉着 gate 这个名字是不够贴切的,“valve(阀门)”也许更贴切些。 


有了门之后,640?wx_fmt=png被整合为 ĉt,然后通过 ∘ 运算(对应逐位相乘,有时候也记为 ⊗)与前面的“门”结合起来,来对640?wx_fmt=png和 ĉt 进行加权求和。 


下面是自己画的一个 LSTM 的示意图:


640?wx_fmt=png

 LSTM运算流程示意图


语言和序信息 


在常见的神经网络中,神经元通常都是无序的,比如遗忘门 ft 是一个向量,向量的各个元素的位置没有什么规律。如果把 LSTM 运算过程中涉及到的所有向量的位置按照同一方式重新打乱,权重的顺序也相应地打乱,然后输出结果可以只是原来向量的重新排序(考虑多层的情况下,甚至可以完全不变),信息量不变,不影响后续网络对它的使用。 


换言之,LSTM 以及普通的神经网络都没有用到神经元的序信息,ON-LSTM 则试图把这些神经元排个序,并且用这个序来表示一些特定的结构,从而把神经元的序信息利用起来。 


ON-LSTM 的思考对象是自然语言。一个自然句子通常能表示为一些层级结构,这些结构如果人为地抽象出来,就是我们所说的语法信息,而 ON-LSTM 希望能够模型在训练的过程中自然地学习到这种层级结构,并且训练完成后还能把它解析出来(可视化),这就利用到了前面说的神经元的序信息。 


为了达到这个目标,我们需要有一个层级的概念,层级越低代表语言中颗粒度越小的结构,而层级越高则代表颗粒度越粗的结构,比如在中文句子中,“字”可以认为是最低层级的结构,词次之,再上面是词组、短语等。层级越高,颗粒度越粗,那么它在句子中的跨度就越大。 


用原文的图示就是:


640?wx_fmt=png

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值