一、PreNorm 残差为什么会稀释单层贡献
标准 PreNorm Transformer 反复执行 (x_{l+1}=x_l+F_l(Norm(x_l)))。展开后,深层残差流包含此前所有子层输出,并且每项的显式系数都是 1。
这条恒等捷径是深层网络可训练的关键,不能被描述为“错误设计”。问题出现在模型非常深时:残差状态幅度持续增长,新层输出在总和中的相对占比下降,网络需要用归一化和权重尺度不断适应这一混合。
二、把深度当成另一条 attention 轴
AttnRes 保存此前若干层的表示,为当前 token 计算内容相关权重,再用 softmax 加权得到当前子层输入。与标准残差固定加 1 不同,不同 token 可以选择不同深度的表示。
xₗ₊₁ = x̃ₗ + Fₗ(Norm(x̃ₗ))
三、为什么 Kimi K3 使用 Block AttnRes
Full AttnRes 若让每层访问全部历史层,会增加激活内存、pipeline stage 之间的通信和打分成本。Block AttnRes 把连续层分组,只把块级表示推入可访问栈;块内仍保留便宜的普通残差路径。
Kimi K3 公开配置的 attn_res_block_size 为 12。它不是“每 12 层重置模型”,而是用 12 层作为深度记忆的管理粒度。
四、一个三状态混合算例
假设某 token 对三个块级状态的 logits 为 ([2,1,0]),softmax 权重约为 ([0.665,0.245,0.090])。当前层不再平均继承全部历史,而是主要读取第一个状态,同时保留其他深度的信息。
这只是说明机制;实际权重由 token、层和训练数据共同决定,不能从一个注意力权重直接推断语义因果。
五、证据与未决问题
AttnRes 论文报告 scaling-law 实验、消融和一个 48B 总参数/3B 激活的 Kimi Linear 预训练实验,并称深度方向的输出幅度与梯度分布更均匀。Kimi K3 随后将 Block AttnRes 用于 2.8T MoE。
论文证据来自 Kimi 团队自己的架构与训练设置。它证明 AttnRes 在这些约束下有可扩展收益,但尚不足以说明所有 Transformer、所有深度或所有硬件拓扑都应采用它。
评论加载中...