引言
2017年,Vaswani等人在论文《Attention Is All You Need》中提出了Transformer架构,这一革命性的设计彻底改变了自然语言处理领域的格局。从BERT到GPT系列,从Vision Transformer到多模态融合模型,Transformer已经成为现代人工智能系统的事实标准架构。
从RNN到Attention:演进的必然
在Transformer出现之前,循环神经网络(RNN)及其变体LSTM、GRU主导着序列建模任务。然而RNN存在两个根本性缺陷:顺序计算无法并行化和长距离依赖信息衰减。Attention机制的引入部分缓解了长距离依赖问题,但直到Transformer将Attention提升为核心计算范式,才真正实现了效率与效果的双赢。
核心架构概览
Transformer采用经典的编码器-解码器(Encoder-Decoder)结构。编码器将输入序列映射为连续表示,解码器基于编码器的输出逐步生成目标序列。每层编码器/解码器都包含两个关键子层:多头自注意力机制和前馈神经网络。
Scaled Dot-Product Attention
Transformer的核心计算单元是缩放点积注意力。给定查询矩阵Q、键矩阵K和值矩阵V,注意力计算公式为:
Attention(Q, K, V) = softmax(QK^T / sqrt(d_k))V缩放因子sqrt(d_k)防止点积值过大导致softmax进入梯度极小的饱和区域。当d_k=64时,注意力分数的缩放有效稳定了训练过程。
Multi-Head Attention
单一注意力只能学习一种注意力模式。多头注意力将Q、K、V投影到h个不同的子空间,并行执行注意力计算后拼接并线性变换。这让模型能够同时关注不同位置的不同表示子空间的信息,大幅提升了模型的表达能力。
Positional Encoding
由于自注意力机制本身是排列不变的,Transformer需要显式注入位置信息。原论文采用正弦/余弦函数生成绝对位置编码。这种编码方式允许模型学习相对位置关系,同时能稳定处理未见过的序列长度。
残差连接与层归一化
每个子层都包裹着残差连接和层归一化(LayerNorm)。残差连接缓解了梯度消失问题使深层网络可训练,LayerNorm稳定了训练过程。Post-LN和Pre-LN在不同场景下各有优劣,Pre-LN在极深层模型中表现更稳定。
前馈神经网络
FFN由两个线性变换和一个ReLU激活组成,隐层维度通常为模型维度的4倍,为模型提供了非线性变换能力。FFN独立地作用于每个位置,相当于1x1卷积。
编码器-解码器交叉注意力
解码器层相比编码器多了一个交叉注意力子层,其中Q来自解码器上一层的输出,K和V来自编码器的最终输出。这让解码器在生成每个token时都能关注输入序列的全部位置,实现了端到端的对齐。
Transformer家族演化
BERT(Encoder-Only):双向注意力+掩码语言模型,擅长理解和分类。GPT系列(Decoder-Only):自回归语言模型,在文本生成上表现卓越。T5(Encoder-Decoder):保持完整架构,统一文本到文本转换。ViT将图像切分为patch序列,纯注意力架构在视觉任务上超越CNN。
扩展到多模态
CLIP将图文对通过双编码器学习对齐的嵌入空间。GPT-4V、Gemini等多模态模型将视觉token与文本token融合输入统一Transformer,展示了惊人的泛化能力。
计算复杂度与优化
标准自注意力复杂度为O(n²)。FlashAttention利用GPU内存层级优化IO,不损失精度但速度提升2-4倍。稀疏注意力、滑动窗口注意力、KV Cache压缩(GQA/MQA)等成为长上下文标配优化。
总结
Transformer用简单的注意力机制取代了复杂的循环结构,实现了全局并行建模。其模块化设计使模型可以无限扩展——更大参数规模、更长上下文、更多模态。理解Transformer意味着理解现代AI系统的核心计算范式。

发表评论 取消回复