神经网络Transformer架构
字数 954 2025-11-15 11:37:32
神经网络Transformer架构
神经网络Transformer架构是一种基于自注意力机制的神经网络设计,专门用于处理序列数据。它通过并行计算和全局依赖建模能力,显著提升了机器翻译、文本生成等任务的效率和质量。
-
序列建模的挑战
传统循环神经网络(RNN)和长短期记忆网络(LSTM)按时间步逐步处理序列,导致训练无法并行化,且长距离依赖容易丢失。例如,翻译长句子时,RNN可能遗忘句首的关键信息。 -
自注意力机制的核心作用
Transformer用自注意力替代循环结构。其计算步骤如下:- 输入表示:将词嵌入向量与位置编码相加,保留词汇语义和位置信息。
- 查询-键-值计算:每个输入向量生成查询(Query)、键(Key)、值(Value)三组向量。
- 注意力权重:通过查询与所有键的点积,计算注意力分数,经Softmax归一化后形成权重。
- 加权融合:用权重对值向量加权求和,得到当前位置的上下文感知表示。
此过程使每个位置直接访问全局信息,例如处理“它”这个词时,模型能直接关联到前文提到的“猫”。
-
多头注意力的设计
通过并行运行多个独立的注意力头,捕获不同类型依赖关系:- 某些头关注局部语法结构(如形容词修饰名词),其他头捕捉长距离逻辑关联(如代词与先行词)。
- 各头的输出拼接后经线性层融合,增强模型表征能力。
-
前馈网络与残差连接
- 前馈网络:对注意力输出进行非线性变换,通过两层全连接层(如ReLU激活)增强模型容量。
- 残差连接:每个子层(注意力/前馈)输入与输出相加,缓解深层网络梯度消失。
- 层归一化:对残差输出标准化,稳定训练过程。
-
编码器-解码器结构
- 编码器:由N个相同层堆叠(如原文N=6),每层含多头自注意力和前馈网络,最终输出源序列的上下文表示。
- 解码器:在编码器结构基础上插入交叉注意力层,使目标序列位置可关注编码器输出。解码时使用掩码注意力,确保当前位置仅访问已生成内容。
-
Transformer的优势与影响
- 并行效率:摆脱序列顺序约束,利用GPU并行计算大幅缩短训练时间。
- 长程依赖建模:自注意力直接连接序列任意位置,支持更复杂的语义关联。
- 技术辐射:奠定BERT、GPT等预训练模型基础,推动NLP领域范式变革,并扩展至图像(ViT)、音频等多模态领域。