架构概述
Transformer是2017年提出的革命性架构,完全基于注意力机制,改变了自然语言处理领域。
自注意力机制
自注意力是Transformer的核心,让模型能够关注输入序列中的不同部分。
计算过程
- Q、K、V矩阵:通过线性变换得到
- 注意力分数:Q和K的点积
- 缩放:除以维度平方根
- Softmax归一化
- 加权求和:与V相乘
多头注意力
将注意力分成多个头,每个头学习不同的表示:
- 捕捉不同的语义关系
- 并行计算提升效率
- 增强模型表达能力
位置编码
由于没有循环结构,Transformer需要显式位置信息:
- 正弦位置编码(原始论文)
- 可学习位置编码(GPT-2)
- 相对位置编码(T5)
Encoder与Decoder
Encoder结构
BERT等模型使用,特征提取能力强:
Decoder结构
GPT等模型使用,生成能力强:
关键技术创新
- 并行计算:相比RNN大幅加速
- 长距离依赖:有效捕捉远距离关系
- 可扩展性:支持大规模预训练
- 迁移学习:预训练+微调范式
实践应用
文本分类
使用Transformer编码器提取特征,接分类层。
文本生成
使用Transformer解码器自回归生成。
机器翻译
Encoder-Decoder架构,源语言编码到目标语言解码。
优化技巧
- 使用warmup学习率调度
- 梯度裁剪防止梯度爆炸
- 层归一化稳定训练
- Dropout防止过拟合
- 混合精度训练加速
未来发展
- 更高效的注意力变体
- 稀疏注意力机制
- 多模态融合
- 更长的上下文窗口