展开计算图

就是将循环图展开成展开图而已。

循环神经网络

深度学习(花书)学习笔记——第十章 序列建模:循环神经网络

深度学习(花书)学习笔记——第十章 序列建模:循环神经网络

 

就是如上网络,将某一层不断重复,输出重新作为输入的一部分。

双向RNN

应用于上下文环境都影响结果的场景,如语音识别,文章翻译等

基于编码-解码的序列到序列架构

可以将可变长度的输入转变为可变长度的输出。这里也提到了注意力模型。后面了解下自编码网络有没有用到循环神经网络的技术。自编码网络是将一个东西编码后解码再还原成原有事务。这里的编码解码不一样,是一个序列到另一个序列。

深度循环网络

将循环网络应用于深度学习中的部分层。

递归神经网络

主要用于推断学习,处理同样大小的序列,深度降低。主要问题是如何构建树。一种方式构建平衡二叉树,一种以先验知识为基础构建。

长期依赖挑战

循环网络涉及相同函数的多次组合,当次数过多时,导致极端非线性。比如梯度消失和梯度爆炸。

后面几节介绍采取的一些措施减少长期依赖。

回声状态网络

谱半径:特征值得最大绝对值。

添加了储层计算。用来存储之前学到的知识,用于后续处理。

ESN:回声状态网络

 

貌似很少遇到回声状态网络这个概念。

渗漏单元和其他多时间尺度的策略

时间维度的跳跃连接:构造t到t+n时刻的连接,减轻梯度消失和梯度爆炸。

渗漏单元和一系列不同时间尺度:深度学习(花书)学习笔记——第十章 序列建模:循环神经网络,当深度学习(花书)学习笔记——第十章 序列建模:循环神经网络接近1时,能记住之前很长一段时间信息。深度学习(花书)学习笔记——第十章 序列建模:循环神经网络可手动设置或者通过学习。

删除连接:主动删除长度为1的连接并用更长的连接替换。

长短期记忆和其他门控RNN

这里主要介绍两种最常用的LSTM和GRU,可以有效克服长期依赖。

LSTM:长短期记忆

主要包括三个模块:

忘记们:

输出门:

输入门:

GRU:门控循环单元

优化长期依赖

主要针对梯度爆炸和梯度消失。

当梯度爆炸时,可以使用梯度截断,有两个思路,一个是当梯度大于一定阈值时,设置当前梯度为阈值;另一个是大于阈值时,随机往一个方向走一小步,看能否跳出这段不稳定区域。

梯度消失时使用信息流正则化,加入以下正则:

深度学习(花书)学习笔记——第十章 序列建模:循环神经网络

这段没理解。如何引导信息流。

外显记忆

就是通过使用专门的存储单元存储得到的记忆,可以保存较多的内容,而后通过寻址的方式查找记忆来进行学习。

可以基于内容寻址。寻址方式可以类似注意力机制。示意图如下:

深度学习(花书)学习笔记——第十章 序列建模:循环神经网络