【论文笔记】Hierarchical Multiscale Recurrent Neural Networks

Hierarchical Multiscale Recurrent Neural Networks

作者提出了一种新的“分层多尺度RNN”(HM-RNN)体系结构。该模型显式地学习时间和层次(字符->单词->短语-> …)表示,而无需告知层次结构或时间尺度是什么。这是通过在每层添加二进制边界检测器来完成的。这些检测器根据特定层中的段是否完成来激活。基于这些边界检测器的激活,信息随后被传播到相邻层。由于此模型涉及基于二进制输出的离散决策,因此使用直通估计器对其进行训练。作者对语言建模和手写序列生成任务的模型进行了评估,其性能优于竞争模型。定性地,作者表明网络无需了解边界即可学习有意义的边界(例如空间)。

关键点

  • 同时学习分层和时间表示对于RNN来说是一个挑战
  • 观察:高级抽象(例如,段落)变化缓慢,而低级抽象(例如,单词)变化很快。这些应该在不同的时间尺度上更新。
  • HN-RNN的好处:(1)计算效率(2)有效的长期依赖传播(消失的梯度)(3)有效的资源分配,例如更高的层可以有更多的神经元
  • 如果相应层抽象的部分(字符,单词,句子等)完成,则打开每一层的二进制边界检测器。
  • 基于边界检测器状态的三种操作:UPDATE,COPY,FLUSH
  • 更新操作:标准LSTM更新。当前段尚未完成,但下一层的段已完成时,会发生这种情况。
  • 复制操作:复制上一个存储单元。当前段或下一层的段均未完成时发生。基本上,这等待较低级别的表示“完成”。
  • FLUSH Op:将状态刷新到上方的层并重置状态以开始新的段。当该层的线段完成时发生。
  • 使用步进功能对边界检测器进行二值化。这是不可微的,使用直通估算器进行训练,该估算器使用类似的硬S型函数估算梯度。
  • 斜率退火技巧:逐渐增加硬S形函数的斜率以进行边界估计,使其随时间逐渐接近离散阶跃函数。需要成为SOTA。
  • PTB上的语言建模:超越了最先进的水平,但幅度不大。
  • 其他数据的语言建模:超越或匹配最新技术。
  • 手写序列生成:优于标准LSTM

我的笔记

  • 我认为本文中的想法非常重要,但结果令我有些失望。与竞争模型相比,该模型要复杂得多,具有更多可调整的旋钮(例如,简单的批归一化LSTM)。但是,通过添加新的“技巧”(如斜率退火),它几乎无法击败那些简单的模型。例如,常数为“ 0.04”的斜面退火进度表看起来非常可疑。
  • 我对“手写序列生成”了解不多,但是看不到与最新模型的比较。为什么只与标准LSTM进行比较?
  • 主要论点是网络可以动态地学习分层表示和时间尺度。但是,层数隐含地限制了网络可以学习和不能学习的层次表示形式。因此,这里仍然存在需要手动设置的超参数。
  • 一种说法是该模型学习边界信息(空间)而没有被告知。没错,但我不相信这是作者所说的那样新颖的作品。我很确定标准LSTM(也许带有额外的跳过连接)将学习相同的知识,并且有可能从LSTM参数矩阵中挑出这些。
  • 将其应用于边界和层次表示形式更加明显的CJK语言可能会很有趣。
  • 作者声称“计算效率”是该模型的主要优点之一,因为更高级别的表示需要更新的频率更少。但是,没有实验可以验证这一说法。显然,从理论上讲这是正确的,但我可以想象到在实践中该模型的训练速度实际上较慢。另外,收敛时间呢?

你可能感兴趣的:(【论文笔记】Hierarchical Multiscale Recurrent Neural Networks)