学界 | Nested LSTM:一种能处理更长期信息的新型LSTM扩展

2018 年 2 月 4 日 机器之心

选自arXiv

作者:Vihar Kurama

机器之心编译

参与:刘晓坤、李亚洲


近日,CMU 和蒙特利尔大学联合提出一种新型的多级记忆的 RNN 架构——嵌套 LSTM。在访问内部记忆时,嵌套 LSTM 相比传统的堆栈 LSTM 有更高的自由度,从而能处理更长时间规模的内部记忆;实验也表明,NLSTM 在多种任务上都超越了堆栈 LSTM。作者认为嵌套 LSTM 有潜力直接取代堆栈 LSTM。


虽然在层级记忆上已有一些研究,LSTM 及其变体仍旧是处理时序任务最流行的深度学习模型,例如字符级的语言建模。特别是默认的堆栈 LSTM 架构使用一系列 LSTM 一层层地堆叠在一起来处理数据,一层的输出成为下一层的输入。在此论文中,研究者们提出并探索了一种全新的嵌套 LSTM 架构(Nested LSTM,NLSTM),并认为其有潜力直接取代堆栈 LSTM。


在 NLSTM 中,LSTM 的记忆单元可以访问内部记忆,使用标准的 LSTM 门选择性地进行读取、编写。相比于传统的堆栈 LSTM,这一关键特征使得模型能实现更有效的时间层级。在 NLSTM 中,(外部)记忆单元可自由选择读取、编写的相关长期信息到内部单元。相比之下,在堆栈 LSTM 中,高层级的激活(类似内部记忆)直接生成输出,因此必须包含所有的与当前预测相关的短期信息。换言之,堆栈 LSTM 与嵌套 LSTM 之间的主要不同是,NLSTM 可以选择性地访问内部记忆。这使得内部记忆免于记住、处理更长时间规模上的事件,即使这些事件与当前事件不相关。


在此论文中,作者们的可视化图证明了,相比于堆栈 LSTM 中的高层级记忆,NLSTM 的内部记忆确实能在更长的时间规模上操作。实验也表明,NLSTM 在多种任务上都超越了堆栈 LSTM。


嵌套 LSTM


直观上,LSTM 中的输出门会编码仍旧值得记忆的信息,这些记忆可能与当前的时间步骤不相关。嵌套 LSTM 根据这一直观理解来创造一种记忆的时间层级。访问内部记忆以同样的方式被门控,以便于长期信息只有在情景相关的条件下才能选择性地访问。


图 1:嵌套 LSTM 架构


架构


在 LSTM 网络中,单元状态的更新公式和门控机制可以表示为以下方程式:



这些方程式与 Graves (2013) 等人定义的是非常相似的,但不包括 peephole 连接。Nested LSTM 使用已学习的状态函数 c_t = m_t(f_t⊙c_t−1, i_t⊙g_t) 来替代 LSTM 中计算 c_t 的加运算。我们将函数的状态表示为 m 在时间 t 的内部记忆(inner memory),我们会调用该函数以计算 c_t 和 m_t+1。我们可以使用另一个 LSTM 单元来实现该记忆函数,因此如上图 1 所示就生成了 Nested LSTM。同样,该记忆函数能够由另一个 Nested LSTM 单元替换,因此就能构建任意深的嵌套网络。


给定以上所述的架构特性,NLSTM 中记忆函数的输入和隐藏状态为:



特别的,注意如果记忆函数是加性的,那么整个系统将退化到经典的 LSTM,因此记忆单元的状态更新为:


图 2:LSTM、堆叠 LSTM 和嵌套 LSTM 的计算图。隐藏状态、外部记忆单元和内部记忆单元分别由 h、c 和 d 表示。当前隐藏状态可以直接影响下一个内部记忆单元的内容,而内部记忆单元只通过外部记忆单元才影响隐藏状态。


在本论文提出的 Nested LSTM 变体架构中,我们会使用 LSTM 作为记忆函数,且内部 LSTM 的运算方式由以下一组方程式控制:



现在,外部 LSTM 的单元状态更新方式为:


实验


可视化


图 3:关于内部单元(图左)和外部单元(图右)的输入特征的单元激活的可视化。红色表示负单元状态值,蓝色表示正单元状态值。更深的颜色表示更大的值。对于内部 LSTM 的状态,对 tanh(c_t tilde)进行了可视化(因为 c_t tilde 未约束),而对于外部 LSTM 的状态,则直接可视化了 c_t。


图 4:tanh(c^n_t)的可视化,表征第一(图右)和第二(图左)堆栈层的输入字符的单元激活。红色表示负单元状态值,蓝色表示正单元状态值。更深的颜色表示更大的值。


Penn Treebank 字符级语言建模


图 5:在 PTB 的测试和验证集上的 BPC(bits per character)vs. Epoch 曲线。


表 1:嵌套 LSTM 和多个基线模型的 BPC 损失的对比。测试(test)的 BPC 损失分别和各个模型在最小验证(valid)BPC 值的 epoch 的损失相关。


中文诗歌生成


表 2:嵌套 LSTM 和多个基线模型在中文诗歌生成数据集(Chinese Poetry Generation dataset)上的困惑度的对比。


图 6:在中文诗歌生成的测试和验证集上进行字符级预测的困惑度 vs. Epoch 曲线。


MNIST Glimpses


表 3:嵌套 LSTM 和多个基线模型在 MNIST Glimpses 任务上的 NLL(负对数似然度)和准确率的对比。其中采用的 epoch 是每个模型在验证集上有最高准确率的 epoch。和 NLL 相似,模型的验证 NLL 被用于确定测试 NLL 的 epoch。


图 7:在 MNIST Glimpses 的训练集和验证集上的 NLL(图左)和误差率(图右)vs. Epoch 的曲线图。



论文:Nested LSTMs 

论文地址:https://arxiv.org/pdf/1801.10308.pdf


我们在本文中提出嵌套 LSTM(Nested LSTM,NLSTM),这是一种新型的多级记忆的 RNN 架构。NLSTM 通过嵌套(和堆栈相对)为 LSTM 增加深度。NLSTM 的一个记忆单元的值由一个 LSTM 单元(有自身的内部记忆单元)计算。具体来说,NLSTM 记忆单元不会如经典 LSTM 那样计算(外部的)记忆单元的值:而是利用级联:  作为内部 LSTM(或 NLSTM)记忆单元的输入,并设定 我们的实验表明,在相似的参数数量下,嵌套 LSTM 在多种字符级语言建模任务中的表现都超越了堆栈和单层 LSTM,并且和堆栈 LSTM 的高层级单元相比,LSTM 的内部记忆可以学习更长期的依赖关系。



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:editor@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

点击「阅读原文」,在 PaperWeekly 参与对此论文的讨论

登录查看更多
7

相关内容

长短期记忆网络(LSTM)是一种用于深度学习领域的人工回归神经网络(RNN)结构。与标准的前馈神经网络不同,LSTM具有反馈连接。它不仅可以处理单个数据点(如图像),还可以处理整个数据序列(如语音或视频)。例如,LSTM适用于未分段、连接的手写识别、语音识别、网络流量或IDSs(入侵检测系统)中的异常检测等任务。
【ICML2020-西电】用于语言生成的递归层次主题引导RNN
专知会员服务
21+阅读 · 2020年6月30日
【ICML2020-华为港科大】RNN和LSTM有长期记忆吗?
专知会员服务
73+阅读 · 2020年6月25日
【CVPR2020-百度】用于视觉识别的门控信道变换
专知会员服务
12+阅读 · 2020年3月30日
【ICLR2020-】基于记忆的图网络,MEMORY-BASED GRAPH NETWORKS
专知会员服务
108+阅读 · 2020年2月22日
知识图谱更新技术研究及其应用,复旦大学硕士论文
专知会员服务
100+阅读 · 2019年11月4日
三次简化一张图:一招理解LSTM/GRU门控机制
机器之心
15+阅读 · 2018年12月18日
基于LSTM深层神经网络的时间序列预测
论智
21+阅读 · 2018年9月4日
一文详解LSTM网络
论智
18+阅读 · 2018年5月2日
学界 | 神奇!只有遗忘门的LSTM性能优于标准LSTM
机器之心
7+阅读 · 2018年4月27日
一文读懂LSTM和循环神经网络
七月在线实验室
8+阅读 · 2018年4月18日
Arxiv
8+阅读 · 2019年5月20日
Arxiv
6+阅读 · 2019年3月19日
Recurrent Fusion Network for Image Captioning
Arxiv
3+阅读 · 2018年7月31日
Arxiv
14+阅读 · 2018年5月15日
VIP会员
Top
微信扫码咨询专知VIP会员