神经网络与深度学习 第四周知识总结
一、序列建模基础
1.1 自回归模型(Autoregressive Model)
- 核心思想:当前时刻的输出依赖于过去观测值。
- 简化方法:
- 固定窗口:仅依赖最近 τ 个观测值。
- 马尔可夫假设:当前状态仅依赖前一时刻状态。
1.2 隐状态建模
-
使用递归公式更新隐状态:
ht=g(ht−1,xt−1)ht=g(ht−1,xt−1)ht=g(ht−1,xt−1)h_t = g(h_{t-1}, x_{t-1})ht=g(ht−1,xt−1)ht=g(ht−1,xt−1)
-
输出概率:
P(xt∣ht)P(xt∣ht)P(xt∣ht)P(x_t | h_t)P(xt∣ht)P(xt∣ht)
-
能捕捉长期依赖,适用于时间序列、文本、语音等任务。
二、数据预处理与文本处理
2.1 特征编码
- 数值特征:直接使用(如年龄)。
- 类别特征:
- 整数编码:适用于类别较多的情况。
- 独热编码:适用于类别较少的情况。
- 词嵌入(Word Embedding):将高维稀疏向量映射为低维稠密向量,捕捉语义关系。
2.2 文本处理流程
- 分词:按字符或单词切分文本。
- 构建词表:统计词频,分配索引。
- 数值化:将文本转换为索引序列。
- 对齐序列:使用**填充(Padding)或截断(Truncation)**统一序列长度。
三、词嵌入(Word Embedding)
- 用一个矩阵 W∈Rd×VW \in \mathbb{R}^{d \times V}W∈Rd×V(d ≪ V)表示嵌入层。
- 可捕捉语义关系,例如:
“king - man + woman ≈ queen” - 比独热编码更高效、更有语义表达力。
- 在 IMDB 数据集上表现优于传统编码(测试准确率约 74%)。
四、循环神经网络(RNN)
4.1 基本结构
-
输入序列:x1,x2,...,xTx_1, x_2, ..., x_Tx1,x2,...,xT
-
每一步更新隐状态:
ht=tanh(Wxhxt+Whhht−1+b)ht=tanh(Wxhxt+Whhht−1+b)ht=tanh(Wxhxt+Whhht−1+b)h_t = \tanh(W_{xh}x_t + W_{hh}h_{t-1} + b)ht=tanh(Wxhxt+Whhht−1+b)ht=tanh(Wxhxt+Whhht−1+b)
-
输出用于分类或预测任务。
4.2 存在问题
- 梯度消失/爆炸:长序列训练困难,早期信息难以保留。
- 遗忘问题:模型难以捕捉长距离依赖。
五、RNN 进阶模型
5.1 门控循环单元(GRU)
-
核心机制:
- 重置门 rtr_trt:控制遗忘旧信息。
- 更新门 ztz_tzt:决定保留多少旧状态。
-
更新公式:
ht=(1−zt)⊙ht−1+zt⊙h tht=(1−zt)⊙ht−1+zt⊙h~tht=(1−zt)⊙ht−1+zt⊙h~th_t = (1 - z_t) \odot h_{t-1} + z_t \odot \tilde{h}_tht=(1−zt)⊙ht−1+zt⊙h tht=(1−zt)⊙ht−1+zt⊙h~t
-
优点:结构简单,计算效率高,适用于中等长度序列。
5.2 长短期记忆网络(LSTM)
-
核心机制:
- 遗忘门 ftf_tft、输入门 iti_tit、输出门 oto_tot。
- 引入细胞状态 CtC_tCt 传递长期信息。
-
更新方式:
Ct=ft⊙Ct−1+it⊙C tCt=ft⊙Ct−1+it⊙C~tCt=ft⊙Ct−1+it⊙C~tC_t = f_t \odot C_{t-1} + i_t \odot \tilde{C}_tCt=ft⊙Ct−1+it⊙C tCt=ft⊙Ct−1+it⊙C~t
ht=ot⊙tanh(Ct)ht=ot⊙tanh(Ct)ht=ot⊙tanh(Ct)h_t = o_t \odot \tanh(C_t)ht=ot⊙tanh(Ct)ht=ot⊙tanh(Ct)
-
优点:适合处理长距离依赖任务(如机器翻译)。
5.3 深度 RNN 与双向 RNN
- 深度 RNN:堆叠多层 RNN,增强模型表示能力。
- 双向 RNN(Bi-RNN):同时建模前向和后向信息,适用于上下文相关任务(如情感分析、命名实体识别)。
六、模型训练与优化
6.1 误差反向传播(BPTT)
- 将误差反向传播至多个时间步,计算复杂。
- 截断策略:限制反向传播的步数(如最近10步)。
6.2 实验对比与应用场景
| 模型 | 参数量 | 优势 | 适用场景 |
|---|---|---|---|
| 基础RNN | 最少 | 简单、效率高 | 短序列分类 |
| GRU | 中等 | 计算效率与记忆能力平衡 | 文本生成、中序列任务 |
| LSTM | 最多 | 长依赖建模能力强 | 机器翻译、语音识别 |
- The Time Machine 数据集:GRU/LSTM 表现优于基础RNN。
- IMDB 情感分析:
- 基础 RNN:准确率约 84%-85%
- LSTM/GRU:进一步提升准确率(最高 84.4%)
七、总结
- RNN 适用于处理序列数据,但存在长程依赖问题。
- GRU 和 LSTM 有效缓解梯度消失,增强记忆能力。
- 数据预处理(如分词、词嵌入)对模型效果影响显著。
- 实践中应结合任务需求选择合适模型结构与参数。
更多推荐


所有评论(0)