手算理解Transformer核心

ProfTomYeh · x · 2026-07-17

### 这篇在讲什么 作者用“手算”的方式拆解一个 Transformer block,目标是让读者自己推一遍前向计算,理解其内部结构。 ### 核心结论 - **Attention weighting** 负责在不同位置之间混合信息,让一个 token 能“看到”邻近位置的特征。 - **FFN(前馈网络)** 负责在同一位置内部混合特征维度。 - 这两部分合起来,才构成一个完整的 Transformer block。作者强调,其他组件(如 positional encoding、multi-head、layer norm、skip connection 等)更多是在提升稳定性和规模,而不是这两类核心计算本身。 ### 文章的演示步骤 1. 先给出 5 个位置的输入特征。 2. 通过 query-key 生成注意力矩阵。 3. 用注意力权重对输入做加权,得到跨位置混合后的表示。 4. 送入 FFN 第一层,在特征维度上扩展。 5. 经过 ReLU 将负值置零。 6. 再经过第二层把维度压回去,输出进入下一层。 ### 作者想传达的 takeaway - Attention 是**横向**混合信息。 - FFN 是**纵向**处理特征。 - Transformer 的表达能力来自这两种机制的反复叠加。

原文链接 →