目录
2)N:M(Seq2Seq或者Encoder-Decoder模型)
3)1:N(处理如图片标注问题,x是图像特征,y是一个句子)
1 LSTM(Long Short Term Memory,长短时序记忆)
3 GRU(Gated Recurretn Unit,门内循环单元)
一 递归神经网络基础
1 递归神经网络与前馈神经网络的联系与区别
1)网络结构
BP、CNN等是前馈神经网络,递归神经网络是反馈神经网络
2)输入角度
BP、CNN等前馈神经网络中输入是独立的没有上下联系的,递归神经网络中是有上下联系的序列化输入
3)输出角度
BP、CNN等前馈神经网络中输出是依赖当前输入,递归神经网络中输出依赖当前输入以及过去的输入,从而赋予神经网络记忆能力
注意:递归神经网络分为时间递归和结构递归,我们这里是指时间递归的递归神经网络
2 递归神经网络的架构类别
第一种架构类别:从输入和输出的序列长度角度
1)N:N(最为常见的架构)
第一点:节点的理解
-
:表示整个输入序列(
),其中
表示时间t的输入(向量)
-
:表示隐层的输出序列(
),其中
表示时间t的隐层输出(向量)
注意:
-
:表示整个输出序列(
),其中
表示时间t的输出(向量)
注意:
第二点:连接权重的理解
-
:表示输出层和隐层的连接权重(方阵),将输入层的输入进行抽象来作为隐层的输入
-
:表示隐层和隐层的连接权重(方阵),是记忆的控制者(负责记忆调度)
-
:表示隐层和输出层的连接权重(方阵),将隐层的输出进行抽象来作为输出层的输入
2)N:M(Seq2Seq或者Encoder-Decoder模型)
- 第一步:将输入编码为词向量
- 第二步:将词向量
解码为预测序列
注意:实际问题中,输入和输出几乎不等长
3)1:N(处理如图片标注问题,x是图像特征,y是一个句子)
第一种:在序列开始进行输入
的计算
第二种:在序列的各个阶段,都进行同一个输入x的计算
4)N:1(处理如序列分类问题(情感倾向分析))
第二种架构类别:从隐层的传输方向角度
1)单向递归神经网络(以N:N为例)
2)双向递归神经网络(以N:N为例)
-
:表示整个输入序列(
),其中
表示时间t的输入(向量)
-
:表示隐层正向的输出序列(
),其中
表示时间t的隐层输出(向量)
注意:
-
:表示隐层反向的输出序列(
),其中
表示时间t的隐层输出(向量)
注意:
-
:表示整个输出序列(
),其中
表示时间t的输出(向量)
注意:
3 递归神经网络的正向与反向传播(以N:N为例)
1)正向传播(同FP过程)
第一步:t=0
初始化
第二步:递归进行,t=1,2,..
2)反向传播(同BP过程,这里称为BPTT)
第一步:损失函数(凸函数)
第二步:计算梯度
注意:使用链式法则(注意考虑,
依赖问题)
第三步:使用梯度下降算法(SGD)
4 递归神经网络的梯度消失与梯度爆炸问题
1)梯度消失问题(长时依赖造成记忆消失)
注意:LSTM/GRU可以克服梯度消失问题(可以解决记忆消失问题)
2)梯度爆炸问题(长时依赖造成记忆紊乱)
注意:Gradient-clipping将梯度限制在阈值的范围内,可以克服梯度爆炸问题(可以解决记忆紊乱问题)
二 递归神经网络隐层结构
1 LSTM(Long Short Term Memory,长短时序记忆)
1)三个门(信息遗忘门、增加门、输出门)
- 信息遗忘门:
- 信息增加门:
- 信息输出门:
2)正向传播
第一步:计算
第二步:计算
第三步:计算
2 LSTM变种
1)peephole connections(窥视孔连接)
第一点:三个门(信息遗忘门、增加门、输出门)
- 信息遗忘门:
- 信息增加门:
- 信息输出门:
第二点:正向传播
- 第一步:计算
- 第二步:计算
- 第三步:计算
2)耦合信息遗忘门与增加门
第一点:三个门(信息遗忘门、增加门、输出门)
- 信息遗忘门:
- 信息增加门:
(遗忘门与增加门的耦合)
- 信息输出门:
第二点:正向传播
- 第一步:计算
- 第二步:计算
- 第三步:计算
3 GRU(Gated Recurretn Unit,门内循环单元)
1)两个门(信息更新门、输出门)
- 信息更新门:
- 信息输出门:
注意:信息更新门=信息遗忘门+信息增加门
2)正向传播
第一步:计算
第二步:计算