RNN和Transformer重点?
简单来说,RNN(循环神经网络)和Transformer是两种处理序列数据(比如语言、时间序列)的核心技术,但处理方式完全不同:
RNN的重点:时序依赖
- 核心机制:逐步处理序列。像读句子一样,一个字一个字地看,当前时刻的输出依赖前一个时刻的“记忆”。
- 主要挑战:长距离依赖问题。句子太长时,早期的信息容易被“遗忘”,导致梯度消失或爆炸(比如记不清句首的主语)。
- 常见应用:适合较短序列,比如早期机器翻译、语音识别(如LSTM、GRU是RNN的改进版)。
Transformer的重点:并行与注意力
- 核心机制:一次性看到整个序列,通过**自注意力(Self-Attention)**计算所有位置之间的相关性,而非逐步处理。
- 主要优势:
- 并行计算:不依赖时间顺序,训练速度更快。
- 捕获长距离依赖:注意力机制直接连接任意两个位置,不受距离限制。
- 代价:计算复杂度高(对长序列需要更多资源),且缺乏天然的时序顺序(需要加入“位置编码”来告诉模型词的位置)。
简单类比
- RNN:像逐字阅读,看完上句才能理解下句,但读到后面容易忘了开头。
- Transformer:像扫视全篇,同时看所有词,直接知道“我”和“今天”的关联。
当前趋势
Transformer已成为主流(如BERT、GPT系列),而RNN在短序列或资源受限场景中仍有应用(如某些嵌入式设备)。如果你准备认证考试,重点理解自注意力机制、位置编码、并行计算(Transformer) vs 循环结构、时序依赖、梯度问题(RNN)。