Transformer 架构全景图

一张图看懂注意力机制、位置编码与 Encoder-Decoder 结构

整体架构

从输入到输出的完整数据流,点击图中节点可查看详解(部分浏览器支持)
💡 提示:鼠标悬停或点击图中模块可查看交互高亮
graph TD A[输入序列
Input Tokens] --> B[词嵌入
Token Embedding] B --> C[+ 位置编码
Positional Encoding] C --> D[Encoder 层 ×N] D --> E[Decoder 层 ×N] F[目标序列
Shifted Output] --> G[词嵌入 + 位置编码] G --> E E --> H[线性层
Linear] H --> I[Softmax] I --> J[输出概率分布] style A fill:#fde6d8,stroke:#c6442c,stroke-width:2px style D fill:#fffaf3,stroke:#c6442c,stroke-width:2px style E fill:#fffaf3,stroke:#c6442c,stroke-width:2px style J fill:#fde6d8,stroke:#c6442c,stroke-width:2px

Encoder 层内部结构

每一层由多头自注意力 + 前馈网络组成,均带残差连接和 LayerNorm
graph TD IN[输入] --> MHA[多头自注意力
Multi-Head Self-Attention] MHA --> AN1[Add & Norm
残差 + LayerNorm] IN -.残差连接.-> AN1 AN1 --> FFN[前馈网络
Feed Forward] FFN --> AN2[Add & Norm
残差 + LayerNorm] AN1 -.残差连接.-> AN2 AN2 --> OUT[输出到下一层] style MHA fill:#fde6d8,stroke:#c6442c,stroke-width:2px style FFN fill:#e8f0fe,stroke:#4285f4,stroke-width:2px style AN1 fill:#fffaf3,stroke:#d8bfa4 style AN2 fill:#fffaf3,stroke:#d8bfa4

Decoder 层内部结构

比 Encoder 多了 Masked 自注意力和交叉注意力(Cross-Attention)
graph TD IN[输入] --> MMHA[Masked 多头自注意力
带因果掩码] MMHA --> AN1[Add & Norm] IN -.残差.-> AN1 AN1 --> CA[交叉注意力
Cross-Attention
Q来自Decoder, K/V来自Encoder] ENC[Encoder输出] --> CA CA --> AN2[Add & Norm] AN1 -.残差.-> AN2 AN2 --> FFN[前馈网络] FFN --> AN3[Add & Norm] AN2 -.残差.-> AN3 AN3 --> OUT[输出] style MMHA fill:#fde6d8,stroke:#c6442c,stroke-width:2px style CA fill:#fce8e6,stroke:#ea4335,stroke-width:2px style FFN fill:#e8f0fe,stroke:#4285f4,stroke-width:2px