18 KiB
K3 Attention Residuals 局部梯度尖峰与反向路由审计
研究日期:2026-07-30
协议 ID:llm-atlas-k3-attnres-spike-path-v1
父协议:llm-atlas-k3-attnres-gradient-scale-v1
研究身份:Round 05 已知异常驱动的定向机制追踪,不是盲发现
0. 一句话结果
在与 Round 05 model / optimizer / BPC / post-MLP gradient 全部 exact 的 depth-32 Block AttnRes 三 seed 重放中:
- layer 21–25 的局部峰在六个捕获位置最终都 3 / 3 可见;
- 四种预注册 Token-gradient reductions 的 12 / 12 单元全部过闸;
- 全局切断 64 个 depth mixers 与 output mixer 的 softmax / query / key source-gradient path,峰没有下降,反而在 3 / 3 seed 略增;
- 保持 learned forward 完全不变、只把所有 mixer 的 value backward coefficients
从 learned
w改为1/N后,spike contrast 平均下降 70.2%、peak normalized 平均下降 37.0%,两项都在 3 / 3 seed 超过预注册 20% 阈值; - seed-1 从初始化完整重训 8,000 steps 的 replay,连六位置、七 reductions、三模式和 65 个 mixer quantile summaries 都 exact。
最窄、最准确的结论是:
在这个已训练的缩小 Block AttnRes 图上,最终 layer 21–25 峰对 learned mixer 的 value-backward routing coefficients 有预注册阈值下的强全局敏感性;它不是由 softmax/key source-gradient derivative path 单独解释的。
这不等于:
- uniform backward 是更好的训练方法;
- learned value weights 让模型训练变差;
- 某一个 layer 或同层 MLP mixer 是唯一原因;
- Kimi K3 真实 checkpoint 存在同样尖峰。
1. 研究问题从哪里来
Round 05 已知:
- Block 的首/末四分位失衡在 6 / 6 配对中改善;
- 全层 CV 却在 6 / 6 配对中恶化;
- depth-32 三 seed 平均的相对高值集中在 layer 21–25;
- post-MLP gradient 与 MLP latest-source mean weight 在 96 个
seed × layer点上 Pearsonr≈0.651,在 layer 19–28 的 30 点上r≈0.690。
这些 observational correlations 不能回答:
- 是 softmax / key 的导数路径重要,还是 value coefficients 重要?
- 峰是否只是 element RMS 的 reduction 产物?
- 峰在一个 block 内到哪个位置才出现?
因此 Round 06 在看见新结果前固定:
- 六个 activation 位置;
- 四个主 reductions、两个 cancellation-sensitive reductions 和一个代数控制;
- 三种 same-forward backward rules;
- fixed spike set
S={21,22,23,24,25}; contrast≥1.5、top-5 overlap、Spearman、20% material drop;- 三 formal seeds 和一个完整 replay。
前置 scoping、协议与 runner 分别在提交 204f599、54c80fb 前后进入公开仓库,
formal 训练随后才开始。
2. 对抗审查如何改变协议
本机 Grok Headless 只用于一次只读、对抗性方法审查,不提供事实来源,也没有修改文件。 主代理采纳并在结果前修正的关键问题包括:
- 把“最早生成位置”降级为“最早可见 tensor”;
- 主判定时点固定为 step 8,000;
- intervention 明确作用于全部 64 个 depth mixers 加 output mixer;
- 结论从局部因果分解降级为全局 backward-rule sensitivity;
- material 判定固定只用
element_rms; - median / p95 固定 Hyndman–Fan Type 7;
- top-5 ties、Spearman ties、正分母与 invalid 条件全部写死;
- 增加六位置 loss×2、optimizer isolation 和训练不得进入 custom autograd 的闸门。
这次审查的价值是发现协议漏洞,不是为结果背书。
3. 第一次 smoke 为什么被拦住
最初 intervention custom backward 直接用 elementwise multiplication 分配
weights × grad_output。forward identity 已经 exact,但 step-0 uniform negative
control 失败:
六位置 max raw relative difference:约 0.0037–0.0046
六位置 max normalized difference:约 0.0011–0.0020
这说明虽然代数公式一致,手写 backward 没有复用父 runner autocast einsum 的实际数值 路径,不能满足预注册的“query=0 时三模式等价”。
正式训练尚未开始。实现随后改为:
- forward 直接返回父
DepthMixer.forward已算出的y_parent; - backward 在
torch.enable_grad()下,用冻结的 learned / uniform weights 重新走同一个 BF16-autocast einsum surrogate; - 只把 surrogate 对 source values 的梯度返回;
- 不向
y_parent、query、key path 回传。
修正后:
三模式 logits / loss / 六位置 activations:byte-exact
65 个 mixer summaries:exact
step-0 六位置 raw gradient spectra:max difference 0
step-0 normalized spectra:max difference 0
六位置 × 七 reductions loss×2:scale / shape error 0
两个全新进程非计时字段:exact
这个失败不是需要隐藏的“调试噪声”;它正是负控制在正式结果前发挥作用的证据。
4. 训练合同与工作量
Round 06 没有创建新的训练分布:
| 字段 | 值 |
|---|---|
| architecture | Block AttnRes |
| depth | 32 Transformer blocks |
| groups | 8,每组 4 blocks |
| width / heads / FFN | 192 / 6 / 768 |
| context / batch | 256 / 32 |
| steps | 8,000 |
| formal seeds | 2026073001 / 2 / 3 |
| replay | seed-1,从初始化完整 8,000 steps |
| formal target bytes | 196,608,000 |
| 含 replay target bytes | 262,144,000 |
| diagnostic tensor | 固定 16 × 256 |
| diagnostic steps | 0 / 100 / 500 / 2,000 / 4,000 / 8,000 |
| intervention steps | 0 / 8,000 |
数据与父协议 exact,完整值为:
formal schedule:
5041e09b167f229248d2462324e8c254b8f5938975f135dcd8192b00a54a4f4e
validation:
f459316f13078a163b47c133511bb7181e05170ab89516e196490113893ce338
diagnostic:
21117e31db302b10d67b63f035665dc8f220b879d216ccd12b7d2ba86e7b1716
5. 父协议训练等价闸门
三个 formal seed 全部满足:
| 字段 | seed-1 | seed-2 | seed-3 |
|---|---|---|---|
| final model-state hash | exact | exact | exact |
| final optimizer-state hash | exact | exact | exact |
| 六个 validation BPC | exact | exact | exact |
| 六条 post-MLP element-RMS arrays | exact | exact | exact |
| training history | exact | exact | exact |
最终 BPC:
| seed | Round 06 | Round 05 |
|---|---|---|
| 2026073001 | 1.7123525940760473 | exact |
| 2026073002 | 1.7093240655856785 | exact |
| 2026073003 | 1.7030966812870931 | exact |
因此新增 capture / diagnostics 没有改变 optimizer trajectory。Round 06 不是一组“看起来 相近”的新模型,而是同一冻结训练的独立数值重放。
6. 峰在训练中形成,不是初始化常数
最终主指标是 post-MLP element-RMS:
spike_contrast =
mean(layers 21–25) / mean(other 27 layers)
时间轨迹:
| step | seed-1 | seed-2 | seed-3 |
|---|---|---|---|
| 0 | 0.782 | 0.691 | 0.797 |
| 100 | 0.560 | 0.556 | 0.575 |
| 500 | 0.522 | 0.573 | 0.478 |
| 2,000 | 2.497 | 2.740 | 1.461 |
| 4,000 | 2.851 | 3.157 | 1.773 |
| 8,000 | 3.046 | 3.333 | 1.881 |
step 500 时三个 seed 的目标层都低于其他层均值;到 step 2,000,seed-1/2 已形成明显峰, seed-3 仍略低于预注册 1.5 阈值;seed-3 到 step 4,000 才跨过。
所以允许说:
尖峰在这个训练过程中发展出来,且 onset 有 seed 差异。
不允许说:
aggregation boundary 本身在初始化就必然产生 layer 21 峰。
7. 六个位置:处处可见,不等于找到 origin
最终 element-RMS spike contrast:
| 位置 | seed-1 | seed-2 | seed-3 | 三 seed mean | 3/3 ≥1.5 |
|---|---|---|---|---|---|
| pre-attention input | 3.724 | 3.189 | 2.040 | 2.984 | 是 |
| attention branch output | 3.200 | 3.662 | 2.005 | 2.955 | 是 |
| post-attention state | 3.200 | 3.662 | 2.005 | 2.955 | 是 |
| pre-MLP input | 3.829 | 4.527 | 2.978 | 3.778 | 是 |
| MLP branch output | 3.046 | 3.333 | 1.881 | 2.754 | 是 |
| post-MLP state | 3.046 | 3.333 | 1.881 | 2.754 | 是 |
协议顺序中的第一个可见 tensor 是 pre_attention_input。但 activation gradient
本来就汇总全部下游路径,所以这只说明:
在进入该层 attention 之前,固定深度模式已经能在损失对该 tensor 的敏感性中看到。
它不说明峰在 pre-attention mixer “生成”。六个位置全部可见,反而证明单靠位置 trace 无法定位唯一 origin。
值得注意的是,pre_mlp_input 的平均 contrast 最高,但这仍是读数,不是“MLP 是唯一
原因”的消融证据。
8. reduction robustness:12 / 12 过闸
主 family:
- element RMS;
- mean token RMS;
- median token RMS;
- p95 token RMS。
每个 seed / reduction 必须同时满足:
- contrast ≥1.5;
- top-5 与固定集合至少重合 3;
- 与 element-RMS 32-layer Spearman ≥0.8。
结果:
| reduction | seed contrasts | 最低 top-5 overlap | 最低 Spearman | verdict |
|---|---|---|---|---|
| element RMS | 3.046 / 3.333 / 1.881 | 3 | 1.000 | pass |
| token RMS mean | 2.869 / 3.182 / 1.808 | 3 | 0.958 | pass |
| token RMS median | 2.646 / 2.905 / 1.666 | 3 | 0.895 | pass |
| token RMS p95 | 3.143 / 3.532 / 2.012 | 3 | 0.993 | pass |
总判定:
12 / 12 cells pass
robust within the preregistered reduction family
global_l2 与 element RMS 的固定 shape 代数控制也通过。batch-mean / token-mean
reduction 同样保存,但它们允许正负梯度先抵消,按协议只作探索性读数,不进入 robustness
判定。
这个结果支持:
layer 21–25 峰不是只由“先平方再平均”的单一 reduction 选择制造的。
它不支持:
论文所有可能的 gradient magnitude 定义都会给出同一曲线。
9. same-forward interventions 到底改了什么
三模式:
learned
原计算图:
w = softmax(qᵀ RMSNorm(sources))
y = Σ w_i source_i
detached learned
forward 的 w、y、logits、loss 完全相同;backward 对 sources 保留 learned
value coefficients,但切断 softmax / query / key 的 source-gradient path。
uniform value backward
forward 仍逐字节返回 learned y;backward 对每个 source 返回 grad_y/N,不向
softmax / query / key 回传。
作用域是全部 64 个 depth mixers 加 output mixer。它不是只改 layer 21 附近,也不是一次 训练消融。
三个 seed 的最终 forward identity 均满足:
logits hash exact
loss exact
六位置 activation hashes exact
65 mixer summary hash exact
所以三模式的梯度差不能归因于不同 forward activation 或不同预测。
10. softmax / key path:没有降低峰
learned → detached learned:
| seed | contrast | detached | relative drop | peak relative drop |
|---|---|---|---|---|
| 2026073001 | 3.046 | 3.093 | −1.54% | −0.67% |
| 2026073002 | 3.333 | 3.397 | −1.93% | −0.38% |
| 2026073003 | 1.881 | 1.929 | −2.53% | −1.47% |
| mean | — | — | −2.00% | −0.84% |
“relative drop”为负表示 detaching 后峰略高。预注册规则要求 contrast 与 peak 都下降至少 20%、3 / 3 seed 同向;实际是两项在 3 / 3 seed 都朝相反方向。
结论:
全局移除 softmax / query / key 的 source-gradient derivative path,没有在本阈值下 降低固定峰;它在三个 seed 中都使峰略增。
这不证明该路径处处为零,也不证明它对训练没有作用。它只否定本轮预注册的 “material peak reduction”方向。
11. learned value coefficients:3 / 3 过 material 闸门
detached learned → uniform value backward:
| seed | detached contrast | uniform contrast | contrast drop | peak drop |
|---|---|---|---|---|
| 2026073001 | 3.093 | 0.780 | 74.8% | 39.3% |
| 2026073002 | 3.397 | 0.786 | 76.9% | 43.2% |
| 2026073003 | 1.929 | 0.792 | 58.9% | 28.6% |
| mean | — | — | 70.2% | 37.0% |
六个相对下降全部超过预注册 20%。uniform value backward 下:
- 固定 target-layer contrast 都低于 0.8;
- peak layer 从 learned / detached 的 layer 21 移到 layer 2;
- forward logits、loss 与 activation 完全不变。
预注册判定:
material sensitivity at the preregistered threshold
3 / 3 seeds
允许说:
在最终已训练计算图上,learned source value-backward coefficients 是该局部梯度形状的 material carrier / amplifier。
禁止说:
- “把训练改成 uniform backward 一定更好”;
- “learned mixer 导致 BPC 下降或上升”;
- “峰完全由同层 MLP latest weight造成”;
- “70.2% 是因果贡献率”。
相对下降是对一个全局反向规则干预的指标变化,不是可加的路径归因百分比。
12. mixer association 与 intervention 如何一起读
最终 observational association:
| scope | metric | Pearson | Spearman |
|---|---|---|---|
| 96 seed×layer | MLP latest mass | 0.651 | 0.692 |
| 96 seed×layer | MLP normalized entropy | −0.274 | −0.417 |
| layer 19–28 | MLP latest mass | 0.690 | 0.693 |
| layer 19–28 | MLP max mass | 0.702 | 0.705 |
| layer 19–28 | MLP normalized entropy | −0.636 | −0.640 |
| layer 19–28 | attention latest mass | 0.158 | 0.339 |
Round 06 的 intervention 让“value coefficients 值得关注”从单纯相关线索升级为 same-forward backward sensitivity。但它仍然是全部 mixers 同时改写,所以不能把 全局结果定向归因给表中同层 MLP latest mass。
更窄的下一步需要:
- 逐 group / 逐 mixer intervention;
- output mixer 与 64 个 depth mixers 分开;
- current partial、completed group、embedding source 分开;
- 保持 forward exact 的局部 backward path ablation。
这些没有在本轮结果后追加,以免事后挑选 layer。
13. replay 与完整复现
seed-1 replay 从初始化完整训练 8,000 steps,不加载 formal checkpoint。
exact 字段:
architecture / depth / seed / steps / batch / target bytes
manifest / model / optimizer contracts
model and optimizer state hashes
six validation evaluations
all training-history checkpoints
six diagnostic steps
six positions
seven reductions
three intervention modes at step 0 / 8,000
65 mixer summaries with quantiles
forward identity / negative control / loss-scale gates
environment / artifact identities
Round 05 equivalence record
冻结 compare SHA-256:
05396eaf56429ca8d87815ecf00a5f78be5a9b2ec7cc96014856c09dcedcbb87
排除计时、run kind 和输出路径。replay verdict:exact。
14. 成本数字的正确解释
formal 三个进程的 mean step time 都约 224 ms;peak allocated 约 12.84 GB, reserved 约 13.92 GB。
它们与 Round 05 单进程约 109 ms 不可直接比较,因为本轮两进程并行竞争同一 RTX 5090, GPU 利用率 100%。训练 step 本身走父 runner exact 路径,新增诊断只发生在冻结时点。
因此:
- 计时证明实验真实执行;
- 计时不用于评价新诊断 overhead;
- 更不能外推到 K3 训练系统。
15. 工件与哈希
核心源码:
| 工件 | SHA-256 |
|---|---|
| manifest | d5302a249249a07d362819134763d14e7d32307f22cff416c665ed9606142fef |
| protocol | 6cb101b8760d9f1c81caeb2f16880b16152da103867224a06761a75a12984a16 |
| scoping | 590166bd62580bb8238293823cfcc39bc0a465fec4c697025343f3f1138abd27 |
| runner | 77298081d3c491d2e88e4705995174b9879ef377f520eb5fe5ea107e7a1da084 |
| analyzer | b9dd7f723e8c5765ecffd9ae3050ff7a95643f95853adaeeaa2c2c323d0ca057 |
raw physical hashes:
| 文件 | SHA-256 |
|---|---|
| formal seed-1 | e39e93b7a7fce3c56f5f14f95cfdc04afdce53628affee1202fe62bd1bdb7f71 |
| formal seed-2 | 1c6f6c731030ec0adb2a8e7a4d586e0c4005cc3319568a7ac83c08c2a4b8eaf8 |
| formal seed-3 | 115f8245577ece6dfaaa8ada68445c186e6523a7f3b26efcc3eb4c0c4ce82406 |
| replay seed-1 | 4f91c7a2698662ea69af9aa3425e144107834fd9b6b717fb82b84f153b867dc5 |
聚合工件:
| 工件 | physical SHA-256 | canonical SHA-256 |
|---|---|---|
| full aggregate | 75058f9e…c1e90 |
1d0faef2…fc8b4 |
| compact | 7b3a3749…8ef6c |
a430dd26…26cd |
| reproduction | 86ac20ee…879a |
7c522314…3515 |
完整值保存在文件自身和 reproduction.json,缩写只用于阅读。
16. 允许与禁止的最终表述
允许
固定 layer 21–25 峰在四种预注册 Token-gradient reductions 中 12 / 12 过闸, 所以它在本轮 reduction family 内稳健。
在同一个 learned forward 上,全局 value-backward coefficient uniformization 使 contrast / peak 在 3 / 3 seed 超过 20% 下降阈值。
全局移除 softmax/key source-gradient path 没有降低峰,反而在 3 / 3 seed 略增。
峰从训练中发展,且 seed-3 的形成更晚、更弱。
禁止
- “找到了梯度尖峰的唯一来源”;
- “pre-attention 是尖峰生成点”;
- “论文 Figure 5(c) 已复现”;
- “Kimi K3 checkpoint 有 layer 21 尖峰”;
- “uniform backward 会提高训练质量”;
- “learned mixer 的 70.2% 梯度是坏的”;
- “softmax/key path 没有任何作用”;
- 从 3 seeds 推断总体显著性;
- 从 width 192 / depth 32 外推到 2.8T 参数。
17. 下一轮最有价值的实验
- 把全局 intervention 拆成 output mixer、group 6、group 7 和其他 mixers 四组;
- 对 completed-group value path 与 current-partial value path 分开做 same-forward backward ablation;
- 预先固定 local intervention grid,不根据本轮最大的单层事后选择;
- 比较“只改诊断 backward”与“从初始化按替代 backward 训练”的身份差异;
- 若 Attention Residuals 官方发布 Figure 5 telemetry,再开独立 protocol 对齐其 tensor、 norm、reduction、batch 与 AMP 时点。
真实 K3 forward 仍受 A_log [128]→[96] 官方转换合同缺失阻断;本轮不绕过该边界。