← 返回首页

神经语言模型基础

从 RNN 到 Transformer 的架构演进与语言建模原理

什么是语言模型?

语言模型是一种计算概率分布的统计模型,用于预测给定词序列中下一个词出现的概率。其核心目标是学习自然语言的统计规律,使计算机能够理解和生成人类语言。

语言模型的数学定义:

$$P(w_1, w_2, ..., w_n) = \prod_{i=1}^{n} P(w_i | w_1, w_2, ..., w_{i-1})$$

其中 $w_i$ 表示第 $i$ 个词,$P(w_i | w_1, ..., w_{i-1})$ 表示在给定前面所有词的条件下,第 $i$ 个词出现的概率。

神经语言模型的发展历程

2003
Neural Probabilistic Language Model (NPLM)

Bengio 等人提出了第一个神经语言模型,使用前馈神经网络来预测下一个词。

2010-2013
循环神经网络 (RNN)

引入循环连接处理序列数据,能够处理任意长度的输入序列。

1997-2015
长短期记忆网络 (LSTM) & 门控循环单元 (GRU)

解决了 RNN 的梯度消失问题,能够学习长距离依赖关系。

2017
Transformer

"Attention Is All You Need" 论文发表,完全基于注意力机制的架构。

2018-至今
预训练大模型时代

BERT、GPT、T5 等大规模预训练模型的兴起和快速发展。

RNN vs LSTM vs Transformer

特性 RNN LSTM Transformer
并行处理 ❌ 顺序处理 ❌ 顺序处理 ✅ 完全并行
长距离依赖 ❌ 梯度消失 ✅ 门控机制 ✅ 自注意力
训练速度 中等
内存使用 中等 高 (O(n²))
模型复杂度 简单 复杂 中等

RNN 的基本原理

$x_t$
输入
$h_t$
隐藏状态
$y_t$
输出

RNN 的核心公式:

$$h_t = \tanh(W_{hh} h_{t-1} + W_{xh} x_t + b_h)$$ $$y_t = W_{hy} h_t + b_y$$

优势

  • 能够处理可变长度序列
  • 参数共享,模型大小固定
  • 理论上可以处理任意长序列

劣势

  • 梯度消失/爆炸问题
  • 难以并行化训练
  • 长距离依赖学习困难

LSTM 的改进机制

LSTM(长短期记忆网络)通过引入门控机制解决了 RNN 的梯度消失问题:

三个关键门控

遗忘门: $f_t = \sigma(W_f \cdot [h_{t-1}, x_t] + b_f)$

输入门: $i_t = \sigma(W_i \cdot [h_{t-1}, x_t] + b_i)$

输出门: $o_t = \sigma(W_o \cdot [h_{t-1}, x_t] + b_o)$

LSTM 的核心创新:细胞状态 $C_t$ 提供了信息的"高速公路",允许信息在时间步之间流动而不经过非线性变换,从而缓解了梯度消失问题。

Transformer 的革命性突破

2017年,Google 提出的 Transformer 模型彻底改变了 NLP 领域,其核心创新包括:

自注意力机制 (Self-Attention)

$$\text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$

关键优势

  • 并行化:所有位置可以同时计算,大大提高训练速度
  • 长距离依赖:直接建模任意两个位置之间的关系
  • 可解释性:注意力权重提供了模型决策的可视化
  • 可扩展性:更容易扩展到大规模参数和数据

语言建模的评估指标

困惑度 (Perplexity)

困惑度是评估语言模型最常用的指标,定义为:

$$\text{PPL} = \exp\left(-\frac{1}{N}\sum_{i=1}^{N} \log P(w_i | w_1, ..., w_{i-1})\right)$$

困惑度越低,模型性能越好。直观上,困惑度表示模型在每个时间步平均"困惑"的程度。

其他重要指标

  • BLEU:机器翻译质量评估
  • ROUGE:文本摘要质量评估
  • BERTScore:基于语义相似度的评估

现代语言模型的发展趋势

规模化趋势:从 GPT-1 的 117M 参数到 GPT-3 的 175B 参数,再到更大规模的模型,参数量呈指数级增长。

技术发展方向

  • 模型架构优化:更高效的注意力机制、稀疏模型
  • 训练效率提升:梯度检查点、混合精度训练
  • 推理优化:模型压缩、知识蒸馏、量化技术
  • 多模态融合:文本、图像、音频的统一建模