Update 第二章 Transformer架构.md

add pre-norm
This commit is contained in:
Logan Zou
2025-06-23 11:02:23 +08:00
committed by GitHub
parent 5f2ccc44bf
commit 98a122e323

View File

@@ -777,6 +777,8 @@ class PositionalEncoding(nn.Module):
<p>图2.7 Transformer 模型结构</p> <p>图2.7 Transformer 模型结构</p>
</div> </div>
但需要注意的是上图是原论文《Attention is all you need》配图LayerNorm 层放在了 Attention 层后面也就是“Post-Norm”结构但在其发布的源代码中LayerNorm 层是放在 Attention 层前面的也就是“Pre Norm”结构。考虑到目前 LLM 一般采用“Pre-Norm”结构可以使 loss 更稳定本文在实现时采用“Pre-Norm”结构。
如图,经过 tokenizer 映射后的输出先经过 Embedding 层和 Positional Embedding 层编码,然后进入上一节讲过的 N 个 Encoder 和 N 个 Decoder在 Transformer 原模型中N 取为6最后经过一个线性层和一个 Softmax 层就得到了最终输出。 如图,经过 tokenizer 映射后的输出先经过 Embedding 层和 Positional Embedding 层编码,然后进入上一节讲过的 N 个 Encoder 和 N 个 Decoder在 Transformer 原模型中N 取为6最后经过一个线性层和一个 Softmax 层就得到了最终输出。
基于之前所实现过的组件,我们实现完整的 Transformer 模型: 基于之前所实现过的组件,我们实现完整的 Transformer 模型: