目录
[八、遗忘门(Forget Gate)](#八、遗忘门(Forget Gate))
[九、输入门(Input Gate)](#九、输入门(Input Gate))
[十一、输出门(Output Gate)](#十一、输出门(Output Gate))
[十三、RNN vs LSTM对比](#十三、RNN vs LSTM对比)
一、前言
在深度学习处理序列数据的早期阶段,Recurrent Neural Network曾经是最核心的模型结构之一。
它被广泛用于:
-
语言模型
-
机器翻译
-
时间序列预测
但RNN有一个天然问题:
难以建模长距离依赖
为了解决这个问题,研究者提出了改进结构:
LSTM(长短期记忆网络)
二、RNN是什么
(一)基本定义
RNN是一种:
能够处理序列数据的神经网络结构
(二)核心思想
当前输出依赖当前输入 + 上一时刻状态
(三)结构特点
隐藏状态在时间维度上循环传递
三、RNN结构详解
(一)时间展开结构
x1 → x2 → x3 → x4
↓ ↓ ↓ ↓
h1 → h2 → h3 → h4
(二)状态更新公式
h_t = \tanh(W_x x_t + W_h h_{t-1} + b)
(三)输出公式
y_t = W_y h_t
(四)核心机制
隐藏状态 = 记忆载体
四、RNN的优点
(一)处理序列数据
-
NLP文本
-
时间序列
(二)参数共享
所有时间步共享同一组参数
(三)理论上可建模任意序列
五、RNN的主要问题
(一)梯度消失
长序列中梯度逐渐变为0
(二)梯度爆炸
梯度过大导致不稳定
(三)长期依赖困难
无法记住远距离信息
六、LSTM的提出
Long Short-Term Memory专门解决RNN的长期依赖问题。
(一)核心思想
引入"门控机制"控制信息流
(二)一句话理解
选择性记忆 + 选择性遗忘
七、LSTM结构组成
LSTM包含三个核心门:
-
遗忘门(Forget Gate)
-
输入门(Input Gate)
-
输出门(Output Gate)
八、遗忘门(Forget Gate)
(一)作用
决定保留多少历史信息
(二)公式
f_t = \sigma(W_fx_t, h_{t-1} + b_f)
(三)理解
控制"记忆删除比例"
九、输入门(Input Gate)
(一)作用
决定写入多少新信息
(二)公式
i_t = \sigma(W_ix_t, h_{t-1} + b_i)
(三)候选记忆
\tilde{C}*t = \tanh(W_cx_t, h*{t-1} + b_c)
十、细胞状态更新
(一)核心更新公式
C_t = f_t \odot C_{t-1} + i_t \odot \tilde{C}_t
(二)含义
旧记忆 + 新信息融合
十一、输出门(Output Gate)
(一)作用
控制当前隐藏状态输出
(二)公式
o_t = \sigma(W_ox_t, h_{t-1} + b_o)
(三)隐藏状态
h_t = o_t \odot \tanh(C_t)
十二、LSTM整体结构
x_t, h_{t-1}, C_{t-1}
↓
Forget Gate
↓
Input Gate
↓
Cell State Update
↓
Output Gate
↓
h_t
十三、RNN vs LSTM对比
| 对比项 | RNN | LSTM |
|---|---|---|
| 记忆能力 | 弱 | 强 |
| 长依赖 | 差 | 强 |
| 结构复杂度 | 简单 | 复杂 |
| 训练稳定性 | 差 | 好 |
十四、LSTM优势
(一)长期记忆能力
可以记住更远的历史信息
(二)缓解梯度消失
门控机制控制梯度传播
(三)广泛应用
-
NLP
-
时间序列预测
十五、LSTM缺点
(一)计算复杂
门结构多
(二)并行性差
序列依赖强
(三)训练较慢
十六、GRU(简要对比)
Gated Recurrent Unit
(一)特点
LSTM的简化版本
(二)结构
-
更新门
-
重置门
(三)优点
-
更轻量
-
训练更快
十七、RNN/LSTM应用场景
(一)NLP领域
-
语言模型
-
机器翻译
-
文本生成
(二)时间序列
-
股票预测
-
传感器数据
(三)语音识别
- 音频序列建模
十八、RNN/LSTM发展趋势
(一)被Transformer取代
Transformer
并行计算 + 长依赖建模更强
(二)仍然在部分场景使用
-
轻量模型
-
实时系统
十九、总结
RNN和LSTM是序列建模领域的经典模型,其中RNN奠定了序列学习基础,而LSTM通过引入门控机制解决了长期依赖问题。
本文系统讲解了:
1、RNN基本结构
2、时间展开机制
3、梯度问题
4、LSTM提出背景
5、三大门结构
6、细胞状态机制
7、RNN与LSTM对比
8、GRU简要介绍
9、应用场景
10、发展趋势
可以将其理解为:
"RNN负责记忆短期信息,LSTM负责在时间序列中选择性记忆与遗忘,从而实现长期依赖建模。"
掌握RNN与LSTM,就掌握了序列建模时代的核心基础。