目录1.目的2.transformer简易框架3.编码器工作流1.Input Embeddings2.Positional Encoding3.Multi-Headed Self-Attention Mechanism3.1.矩阵乘法 (MatMul) - 查询和键的点积3.2降低注意力得分的幅度3.3.将 Softmax 应用于调整后的分数3.4.将 Softmax 结果与值向量相结合4.Normalization and Residual Connections5.Feed-Forward Neural Network6.Output of the Encoder7.整个编码器详细的流程图4.解码器工作流1.Output Embeddings2.Positional Encoding3.Self-Attention Mechanism3.1 Masked Self-Attention Mechanism3.2.Encoder-Decoder Multi-Head Attention or Cross Attention4.Normalization and Residual Connections5.Feed-Forward Neural Network6.Linear Classifier and Softmax for Generating Output Probabilities7.Output of the Decoder8.整个解码器详细流程图1.目的Transformer自2017年《Attention Is All You Need》论文提出完全基于注意力机制取代了RNN/LSTM因串行计算慢、长距离依赖差导致的低效问题。它极大提升了并行效率与建模能力推动了BERT、GPT等大模型发展至2026年已演进为具备推理与自主能力的智能体基础架构。通过了解transformer更好的去拥抱ai拥抱未来2.transformer简易框架Transformer 模型最初是为序列转换或神经机器翻译而设计的它擅长将输入序列转换为输出序列。它是第一个完全依赖自注意力机制来计算输入和输出表示的转换模型无需使用序列对齐的循环神经网络RNN或卷积。Transformer 架构的核心特征在于它保留了编码器-解码器模型。transformser两个部分组成码器接收我们的输入并输出该输入的矩阵表示。例如英文句子hang zhou解码器接收编码后的表示并迭代地生成输出。在我们的例子中翻译后的句子 杭州编码器和解码器实际上都是多层堆栈两者层数相同。所有编码器的结构相同输入信号依次进入每一层并传递给下一层。所有解码器的结构也相同输入信号来自上一层编码器和前一层解码器。原架构由 6 个编码器和 6 个解码器组成但我们可以根据需要复制任意数量的层。所以我们假设各有 N 层。3.编码器工作流1.Input Embeddings编码器首先将输入词元单词或子词转换为固定维度的数值向量每个向量的维度为 512。所有编码器均接收一个由此类向量组成的列表最底层编码器以词嵌入向量作为输入而其余编码器则接收其前一编码器的输出。2.Positional Encoding通过组合不同频率与相位的正弦、余弦函数生成可适应任意长度句子的位置向量。每个维度由特定频率的正弦波及其相位偏移表示向量元素值域为 [-1, 1]从而唯一表征序列中各位置信息。3.Multi-Headed Self-Attention Mechanism多头注意力机制采用自注意力Self-Attention结构使模型能够在序列内部建立词元间的关联关系。例如模型可学习将“hang”与“zhou”在语义上关联起来。在该机制中编码器在处理每个词元时均能通过注意力分数对输入序列的不同位置进行加权聚焦。其计算基于以下三个组件查询Query表示当前关注词元的向量键Key输入序列中每个词元对应的向量值Value与键关联的向量用于构建注意力输出。当查询与某一键的匹配度即注意力分数较高时对应的值在输出中获得更高权重。不同于仅执行单次注意力函数多头机制先将查询、键、值进行h次线性投影并在每个投影版本上并行计算注意力最终拼接得到h维输出。这种设计使模型能够从不同表示子空间中联合捕获上下文信息显著提升对序列内复杂依赖的建模能力。3.1.矩阵乘法 (MatMul) - 查询和键的点积查询、键和值向量经线性投影后通过查询与键的点积矩阵乘法计算得到注意力分数矩阵。该矩阵衡量序列中每个词元对其他词元的关注权重分数越高表示对应词元在编码当前词元时获得更高关注。此计算本质上实现了查询与键的匹配映射。3.2降低注意力得分的幅度将得分除以查询向量和键向量维度的平方根从而降低得分。这一步骤是为了确保梯度更加稳定因为数值相乘可能会导致过大的影响。3.3.将 Softmax 应用于调整后的分数随后对调整后的分数应用softmax函数以获得注意力权重。这会产生介于0到1之间的概率值。softmax函数会增强高分同时减弱低分从而增强模型有效判断哪些词应该获得更多关注的能力。3.4.将 Softmax 结果与值向量相结合注意力机制的下一步是将 softmax 函数得到的权重与值向量相乘从而得到输出向量。在此过程中仅保留softmax得分高的词。最后将该输出向量输入线性层进行进一步处理。4.Normalization and Residual ConnectionsTransformer 作为深度网络其信息传递路径复杂包含点积注意力、线性与非线性变换等多层操作易在反向传播中引发梯度消失或爆炸。为此标准做法是在每个子层如自注意力、前馈网络后引入残差连接将输入与子层输出相加缓解梯度衰减支持更深网络训练随后进行层归一化稳定隐藏层分布加速收敛。两者共同构成 Transformer 的基础稳定性组件。5.Feed-Forward Neural Network逐点前馈网络FFN是 Transformer 中位于残差连接与层归一化之后的关键处理阶段。其结构由两个线性变换与中间的 ReLU 激活函数构成独立作用于序列的每个位置实现对特征的进一步非线性映射。FFN 的输出会通过残差连接与自身输入相加再次进行层归一化完成当前子层的调整后将稳定的表征传递至下一层。这一设计在增强模型非线性表达能力的同时保持了训练的稳定性和信息流动的顺畅性。6.Output of the Encoder最终编码器层的输出是一组上下文感知的向量序列每个向量融合了输入序列中的全局依赖信息。该输出作为解码器的输入通过注意力机制引导解码过程聚焦于输入序列的相关部分。堆叠 N 个编码器层可逐级抽象特征各层从不同子空间学习注意力模式逐步构建层次化表征。这种结构既丰富了语义表达也提升了整体模型的建模能力。7.整个编码器详细的流程图4.解码器工作流1.Output Embeddings和编码器的阶段相似2.Positional Encoding和编码器的阶段相似3.Self-Attention Mechanism3.1 Masked Self-Attention Mechanism解码器中的掩蔽自注意力与编码器自注意力机制类似但核心区别在于引入了掩蔽机制禁止当前词元关注后续位置即序列中每个词元的表示仅依赖于其之前位置的输出。该机制通过在注意力分数矩阵中对未来位置的权重置为 −∞−∞ 实现从而在预测当前词元时确保自回归属性——例如计算“hang”的表示时无法“看到”序列中更后的词元如“zhou”。这种设计保证了解码过程的因果性符合自回归生成任务的要求。3.2.Encoder-Decoder Multi-Head Attention or Cross Attention解码器中的第二层多头注意力即交叉注意力实现了编码器与解码器之间的信息交互。其查询Query来自解码器第一层掩蔽自注意力的输出而键Key和值Value均来自编码器的输出。这一结构使解码器能够基于当前已生成的部分序列动态聚焦于输入序列中的相关位置从而实现源序列与目标序列的精确对齐。该层输出随后经逐点前馈网络进一步变换增强解码器的表征能力。整体设计保证了信息从编码器向解码器的有效传递是 Transformer 生成能力的关键支撑。4.Normalization and Residual Connections和编码器的阶段相似5.Feed-Forward Neural Network和编码器的阶段相似6.Linear Classifier and Softmax for Generating Output Probabilities解码器最终的输出通过一个线性层分类头 映射到词汇表维度将高维特征转化为与词汇表大小一致的向量其每个元素对应一个词的逻辑得分。随后Softmax 函数将该向量转换为归一化的概率分布其中最大值所在位置的索引即为模型预测的下一词。这一过程本质上是将解码器的连续表示解码为离散词元完成从特征空间到词汇表的概率化选择是Transformer生成流程的最后一步7.Output of the Decoder解码器最终层的输出经线性变换与 Softmax 归一化转化为词汇表上的概率分布其中概率最高的词元作为当前时间步的预测结果。解码过程采用自回归方式每步生成的词元追加至输入序列驱动下一步预测直至输出终止符如 为止。解码器可堆叠 (N) 层每层基于编码器输出与前一层的表征通过多头注意力机制从不同子空间学习注意力模式。这种分层设计使得模型能够组合多种注意力视角显著提升对序列依赖的建模能力与最终预测质量。8.整个解码器详细流程图整个流程红色标记出来是解码器和编码有差异的地方
一文搞懂transformer中编码和解码器机制
发布时间:2026/5/22 20:03:45
目录1.目的2.transformer简易框架3.编码器工作流1.Input Embeddings2.Positional Encoding3.Multi-Headed Self-Attention Mechanism3.1.矩阵乘法 (MatMul) - 查询和键的点积3.2降低注意力得分的幅度3.3.将 Softmax 应用于调整后的分数3.4.将 Softmax 结果与值向量相结合4.Normalization and Residual Connections5.Feed-Forward Neural Network6.Output of the Encoder7.整个编码器详细的流程图4.解码器工作流1.Output Embeddings2.Positional Encoding3.Self-Attention Mechanism3.1 Masked Self-Attention Mechanism3.2.Encoder-Decoder Multi-Head Attention or Cross Attention4.Normalization and Residual Connections5.Feed-Forward Neural Network6.Linear Classifier and Softmax for Generating Output Probabilities7.Output of the Decoder8.整个解码器详细流程图1.目的Transformer自2017年《Attention Is All You Need》论文提出完全基于注意力机制取代了RNN/LSTM因串行计算慢、长距离依赖差导致的低效问题。它极大提升了并行效率与建模能力推动了BERT、GPT等大模型发展至2026年已演进为具备推理与自主能力的智能体基础架构。通过了解transformer更好的去拥抱ai拥抱未来2.transformer简易框架Transformer 模型最初是为序列转换或神经机器翻译而设计的它擅长将输入序列转换为输出序列。它是第一个完全依赖自注意力机制来计算输入和输出表示的转换模型无需使用序列对齐的循环神经网络RNN或卷积。Transformer 架构的核心特征在于它保留了编码器-解码器模型。transformser两个部分组成码器接收我们的输入并输出该输入的矩阵表示。例如英文句子hang zhou解码器接收编码后的表示并迭代地生成输出。在我们的例子中翻译后的句子 杭州编码器和解码器实际上都是多层堆栈两者层数相同。所有编码器的结构相同输入信号依次进入每一层并传递给下一层。所有解码器的结构也相同输入信号来自上一层编码器和前一层解码器。原架构由 6 个编码器和 6 个解码器组成但我们可以根据需要复制任意数量的层。所以我们假设各有 N 层。3.编码器工作流1.Input Embeddings编码器首先将输入词元单词或子词转换为固定维度的数值向量每个向量的维度为 512。所有编码器均接收一个由此类向量组成的列表最底层编码器以词嵌入向量作为输入而其余编码器则接收其前一编码器的输出。2.Positional Encoding通过组合不同频率与相位的正弦、余弦函数生成可适应任意长度句子的位置向量。每个维度由特定频率的正弦波及其相位偏移表示向量元素值域为 [-1, 1]从而唯一表征序列中各位置信息。3.Multi-Headed Self-Attention Mechanism多头注意力机制采用自注意力Self-Attention结构使模型能够在序列内部建立词元间的关联关系。例如模型可学习将“hang”与“zhou”在语义上关联起来。在该机制中编码器在处理每个词元时均能通过注意力分数对输入序列的不同位置进行加权聚焦。其计算基于以下三个组件查询Query表示当前关注词元的向量键Key输入序列中每个词元对应的向量值Value与键关联的向量用于构建注意力输出。当查询与某一键的匹配度即注意力分数较高时对应的值在输出中获得更高权重。不同于仅执行单次注意力函数多头机制先将查询、键、值进行h次线性投影并在每个投影版本上并行计算注意力最终拼接得到h维输出。这种设计使模型能够从不同表示子空间中联合捕获上下文信息显著提升对序列内复杂依赖的建模能力。3.1.矩阵乘法 (MatMul) - 查询和键的点积查询、键和值向量经线性投影后通过查询与键的点积矩阵乘法计算得到注意力分数矩阵。该矩阵衡量序列中每个词元对其他词元的关注权重分数越高表示对应词元在编码当前词元时获得更高关注。此计算本质上实现了查询与键的匹配映射。3.2降低注意力得分的幅度将得分除以查询向量和键向量维度的平方根从而降低得分。这一步骤是为了确保梯度更加稳定因为数值相乘可能会导致过大的影响。3.3.将 Softmax 应用于调整后的分数随后对调整后的分数应用softmax函数以获得注意力权重。这会产生介于0到1之间的概率值。softmax函数会增强高分同时减弱低分从而增强模型有效判断哪些词应该获得更多关注的能力。3.4.将 Softmax 结果与值向量相结合注意力机制的下一步是将 softmax 函数得到的权重与值向量相乘从而得到输出向量。在此过程中仅保留softmax得分高的词。最后将该输出向量输入线性层进行进一步处理。4.Normalization and Residual ConnectionsTransformer 作为深度网络其信息传递路径复杂包含点积注意力、线性与非线性变换等多层操作易在反向传播中引发梯度消失或爆炸。为此标准做法是在每个子层如自注意力、前馈网络后引入残差连接将输入与子层输出相加缓解梯度衰减支持更深网络训练随后进行层归一化稳定隐藏层分布加速收敛。两者共同构成 Transformer 的基础稳定性组件。5.Feed-Forward Neural Network逐点前馈网络FFN是 Transformer 中位于残差连接与层归一化之后的关键处理阶段。其结构由两个线性变换与中间的 ReLU 激活函数构成独立作用于序列的每个位置实现对特征的进一步非线性映射。FFN 的输出会通过残差连接与自身输入相加再次进行层归一化完成当前子层的调整后将稳定的表征传递至下一层。这一设计在增强模型非线性表达能力的同时保持了训练的稳定性和信息流动的顺畅性。6.Output of the Encoder最终编码器层的输出是一组上下文感知的向量序列每个向量融合了输入序列中的全局依赖信息。该输出作为解码器的输入通过注意力机制引导解码过程聚焦于输入序列的相关部分。堆叠 N 个编码器层可逐级抽象特征各层从不同子空间学习注意力模式逐步构建层次化表征。这种结构既丰富了语义表达也提升了整体模型的建模能力。7.整个编码器详细的流程图4.解码器工作流1.Output Embeddings和编码器的阶段相似2.Positional Encoding和编码器的阶段相似3.Self-Attention Mechanism3.1 Masked Self-Attention Mechanism解码器中的掩蔽自注意力与编码器自注意力机制类似但核心区别在于引入了掩蔽机制禁止当前词元关注后续位置即序列中每个词元的表示仅依赖于其之前位置的输出。该机制通过在注意力分数矩阵中对未来位置的权重置为 −∞−∞ 实现从而在预测当前词元时确保自回归属性——例如计算“hang”的表示时无法“看到”序列中更后的词元如“zhou”。这种设计保证了解码过程的因果性符合自回归生成任务的要求。3.2.Encoder-Decoder Multi-Head Attention or Cross Attention解码器中的第二层多头注意力即交叉注意力实现了编码器与解码器之间的信息交互。其查询Query来自解码器第一层掩蔽自注意力的输出而键Key和值Value均来自编码器的输出。这一结构使解码器能够基于当前已生成的部分序列动态聚焦于输入序列中的相关位置从而实现源序列与目标序列的精确对齐。该层输出随后经逐点前馈网络进一步变换增强解码器的表征能力。整体设计保证了信息从编码器向解码器的有效传递是 Transformer 生成能力的关键支撑。4.Normalization and Residual Connections和编码器的阶段相似5.Feed-Forward Neural Network和编码器的阶段相似6.Linear Classifier and Softmax for Generating Output Probabilities解码器最终的输出通过一个线性层分类头 映射到词汇表维度将高维特征转化为与词汇表大小一致的向量其每个元素对应一个词的逻辑得分。随后Softmax 函数将该向量转换为归一化的概率分布其中最大值所在位置的索引即为模型预测的下一词。这一过程本质上是将解码器的连续表示解码为离散词元完成从特征空间到词汇表的概率化选择是Transformer生成流程的最后一步7.Output of the Decoder解码器最终层的输出经线性变换与 Softmax 归一化转化为词汇表上的概率分布其中概率最高的词元作为当前时间步的预测结果。解码过程采用自回归方式每步生成的词元追加至输入序列驱动下一步预测直至输出终止符如 为止。解码器可堆叠 (N) 层每层基于编码器输出与前一层的表征通过多头注意力机制从不同子空间学习注意力模式。这种分层设计使得模型能够组合多种注意力视角显著提升对序列依赖的建模能力与最终预测质量。8.整个解码器详细流程图整个流程红色标记出来是解码器和编码有差异的地方