Transformer架构
Transformer是由Vaswani等人于2017年提出的深度学习架构,完全基于注意力机制,摒弃了传统的循环或卷积结构。它已成为自然语言处理领域的主流架构,并广泛扩展到计算机视觉、语音处理等多个领域。
整体结构
Transformer遵循编码器-解码器(Encoder-Decoder)结构。编码器将输入序列映射为连续的表示,解码器则基于该表示生成输出序列。
编码器
编码器由 个相同的层堆叠而成,每个层包含两个子层:
- 多头自注意力子层:使每个位置能够关注序列中的所有其他位置
- 前馈神经网络子层:对每个位置的表示进行非线性变换
每个子层都使用了残差连接和层归一化:
解码器
解码器同样由 个相同的层堆叠而成,每个层包含三个子层:
- 掩码多头自注意力子层:与编码器类似,但使用掩码防止每个位置关注到未来的位置
- 编码器-解码器注意力子层:让解码器关注编码器的输出
- 前馈神经网络子层
位置编码
注意力机制本身不具备序列顺序感知能力,因为自注意力计算是对集合中所有元素同时进行的。为了引入位置信息,Transformer在输入嵌入中加入位置编码(Positional Encoding):
其中 是位置索引, 是维度索引。这种正余弦编码方式能够使模型轻松学习到相对位置关系。
核心优势
- 并行计算:所有位置可以同时进行计算,训练效率远高于RNN
- 长距离依赖:自注意力机制直接连接任意两个位置,不受距离限制
- 可扩展性:通过堆叠更多层和增加隐藏维度,模型能力可以持续提升
Transformer架构奠定了BERT、GPT等预训练语言模型的基础,推动了大语言模型(LLM)研究的快速发展。
链接到
- 上一个知识点:7.3 多头注意力模型
- 下一个知识点:7.5 Transformer编码器