一张图看清整条管道,以及"我们现在学到哪、还差什么"。到目前为止,我们只做了"向量 → 更好的向量"的加工,还没产出任何能读的输出。
字符串
→ tokenize ✅ → N 个整数
→ embedding ✅ → [N × d_model] 向量
→ Multi-head 注意力 ✅ + 残差/LN/FFN 🅿️,叠 N 层 → [N × d_model] 向量(更懂上下文) ⬅ 现在在这
→ 输出层 🅿️ (Module 2) → 词表概率 → 采样 → 下一个词
| 环节 | 做什么 | 状态 |
|---|---|---|
| Tokenize | 文本 → N 个整数 id | ✅ 已学 |
| Embedding | 查表 → [N × d_model] 向量 | ✅ 已学 |
| Multi-head 注意力 | 每个词吸收上下文(Q/K/V·softmax·÷√d·多头) | ✅ 已学 |
| 残差 / LayerNorm / FFN | Block 的其余零件,稳训练 + 增强表达 | 🅿️ 下一课 |
| 多层堆叠 | 把 Block 叠 N 层,逐层精炼 | 🅿️ Module 1 收尾 |
| 输出层 (unembedding) | 最后一个词的向量 → 词表概率 → 采样下一个词 | 🅿️ Module 2 |
关键提醒:Transformer 主干自始至终在做"向量 → 更好的向量",不直接吐词。要得到能读的"下一个词",必须靠最后的输出层把向量翻译回词表概率。预测时只用最后一个位置的向量(因为要接在整句后面预测下一个)。