Skip to main content
QUICK REVIEW

[论文解读] Learning Operations on a Stack with Neural Turing Machines

Tristan Deleu, Joseph Dureau|arXiv (Cornell University)|Dec 2, 2016
Topic Modeling参考文献 7被引用 7
一句话总结

该论文表明,神经图灵机(NTM)可通过其读写头模拟栈操作,无需显式栈指令,即可学习识别平衡括号字符串(Dyck词)。NTM在测试序列长度达到训练长度20倍时仍表现出极强的泛化能力,由于其通过内存寻址实现算法学习,因此在长序列上的表现显著优于LSTM。

ABSTRACT

Multiple extensions of Recurrent Neural Networks (RNNs) have been proposed recently to address the difficulty of storing information over long time periods. In this paper, we experiment with the capacity of Neural Turing Machines (NTMs) to deal with these long-term dependencies on well-balanced strings of parentheses. We show that not only does the NTM emulate a stack with its heads and learn an algorithm to recognize such words, but it is also capable of strongly generalizing to much longer sequences.

研究动机与目标

  • 探究神经图灵机(NTM)是否能够学习形式语言(如Dyck语言)上的算法计算。
  • 检验NTM是否可在不使用显式栈操作的情况下,模拟栈数据结构。
  • 评估模型在训练分布之外的更长序列上的强泛化能力。
  • 对比NTM与LSTM在Dyck成员资格问题上的表现。
  • 分析NTM的内存与寻址机制如何支持算法推理。

提出的方法

  • NTM采用具有100个隐藏单元的前馈控制器,配备一个读头、一个写头,以及一个包含128个位置、每个大小为20的内存库。
  • 读写操作通过基于内容和基于位置的寻址机制控制,采用可微分权重实现对内存的软注意力机制。
  • 读头通过注意力权重对内存行进行加权求和,而写头则通过控制器生成的擦除和添加向量执行擦除-添加操作。
  • 模型使用Adam优化器,固定初始学习率为0.001,批量大小为16,在Dyck词成员资格的二分类任务上进行训练。
  • 控制器处理输入符号('u'表示'上','d'表示'下'),并利用读头通过注意力机制在内存位置上隐式跟踪当前栈深度。
  • 通过可视化注意力权重,并与Dyck词的图形路径表示进行比较,分析模型行为。

实验结果

研究问题

  • RQ1NTM是否可在不使用显式栈操作的前提下,仅依赖其内存与寻址机制,学习识别Dyck词?
  • RQ2在序列处理过程中,NTM的读头行为如何与栈操作相关联?
  • RQ3NTM在多大程度上能泛化到远长于训练阶段所见的序列?
  • RQ4NTM在Dyck语言的长序列上与标准LSTM相比表现如何?
  • RQ5内存库大小在模型模拟栈和泛化能力方面起到何种作用?

主要发现

  • NTM通过使用读头在内存中跟踪未匹配括号的深度,成功模拟了栈操作,'u'时上移,'d'时下移。
  • 模型在长度达到训练序列20倍(最长240)的Dyck词上实现近乎完美的性能,表明其具有极强的泛化能力。
  • 对于长度达训练规模20倍的序列,NTM的AUC保持高位(接近1.0),而LSTM的AUC在长度超过200后显著下降。
  • NTM在内存上的写入操作极少,主要依赖读头的注意力模式来模拟栈行为。
  • NTM的泛化失败始于约n ≈ 120,原因是内存溢出,因128个内存位置限制了栈模拟能力。
  • NTM学习的是算法解法而非记忆模式,这一点通过其在出现不匹配右括号后仍能正确分类非Dyck词得到验证。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。