SparkLM 31M → 192M 规模化验证深度报告
SparkLM 31M → 192M 规模化验证深度报告
生成时间:2026-07-09
训练规模:31M(2000 steps × 35 configs)→ 192M(5000 steps × 12 configs)
实际参数量:31M 级(27-49M)→ 192M 级(110-362M)
数据集:TinyStories 中英文合并(1.6GB,vocab_size=6400)
设备:Apple Silicon MPS
1. 执行摘要
本次规模化验证的核心目标是:验证 31M 消融实验的相对排序结论能否推广至更大规模。
关键结论
| 指标 | 值 | 判定 |
|---|---|---|
| 完成配置 | 12/12 | ✅ 全部成功 |
| Spearman 等级相关系数 ρ | 0.4266 | ❌ 排序不一致 |
| 31M 最优配置 | attn_mla_qk_norm (1.4956) |
— |
| 192M 最优配置 | mtp_off (1.4736) |
⚠️ 最优配置变化 |
| 192M Attention 最优 | attn_gqa (1.7517) |
⚠️ 与 31M 不同 |
| 唯一负 Δ(规模化改善) | mtp_off (-3.1%) |
唯一受益于规模 |
核心发现:31M 消融实验的排序不能直接推广至 192M 规模。这主要由两个结构性因素导致:
- 超参数不统一:MTP 配置在 192M 使用了安全模式(fp32, lr=1e-4, bs=4),导致 MTP 维度的排序完全不可比
- MoE 参数量不匹配:192M 的 MoE 配置膨胀至 362M(vs Attention 配置 110-134M),参数量差异达 3×,导致 MoE 配置在 192M 表现极差
2. 完整结果总览
2.1 192M 排行榜(按 eval_loss 升序)
| # | 配置 | 维度 | 参数量 | 192M Loss | 192M PPL | 31M Loss | 31M PPL | Δ Loss | Δ % | 排序变化 |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | mtp_off |
MTP | 134.24M | 1.4736 | 4.36 | 1.5203 | 4.57 | -0.047 | -3.1% | ↑2 |
| 2 | train_adamw |
Optimizer | 142.28M | 1.6042 | 4.97 | 1.5277 | 4.61 | +0.077 | +5.0% | ↑2 |
| 3 | mtp_share_head |
MTP | 146.64M | 1.6159 | 5.03 | 1.5489 | 4.70 | +0.067 | +4.3% | ↑4 |
| 4 | mtp_on |
MTP | 142.28M | 1.6244 | 5.08 | 1.5401 | 4.66 | +0.084 | +5.5% | ↑2 |
| 5 | attn_gqa |
Attention | 109.89M | 1.7517 | 5.76 | 1.5772 | 4.84 | +0.175 | +11.1% | ↑4 |
| 6 | attn_mla_qk_norm |
Attention | 134.25M | 1.7618 | 5.82 | 1.4956 | 4.46 | +0.266 | +17.8% | ↓5 |
| 7 | attn_mla |
Attention | 134.24M | 1.7715 | 5.88 | 1.5543 | 4.73 | +0.217 | +14.0% | ↑1 |
| 8 | attn_saha |
Attention | 114.31M | 1.7809 | 5.93 | 1.5301 | 4.62 | +0.251 | +16.4% | ↓3 |
| 9 | moe_crs |
MoE | 362.01M | 2.0143 | 7.50 | 1.5955 | 4.93 | +0.419 | +26.2% | ↑2 |
| 10 | moe_eckvc |
MoE | 362.01M | 2.0155 | 7.50 | 1.5870 | 4.89 | +0.429 | +27.0% | → |
| 11 | moe_dense |
MoE | 142.28M | 2.0250 | 7.58 | 1.5203 | 4.57 | +0.505 | +33.2% | ↓9 |
| 12 | moe_routed |
MoE | 362.01M | 2.5175 | 12.40 | 1.6011 | 4.96 | +0.916 | +57.2% | → |

2.2 训练时间统计
| 配置 | 训练时间 | 参数量 | 吞吐量估计 |
|---|---|---|---|
mtp_off |
56.1 min | 134M | ~4.8K tok/s |
train_adamw |
45.1 min | 142M | ~6.0K tok/s |
mtp_share_head |
29.4 min | 147M | ~9.2K tok/s |
mtp_on |
29.6 min | 142M | ~9.1K tok/s |
attn_gqa |
72.1 min | 110M | ~3.8K tok/s |
attn_mla_qk_norm |
94.5 min | 134M | ~2.9K tok/s |
attn_mla |
104.0 min | 134M | ~2.6K tok/s |
attn_saha |
60.4 min | 114M | ~4.5K tok/s |
moe_crs |
131.2 min | 362M | ~2.0K tok/s |
moe_eckvc |
135.7 min | 362M | ~1.9K tok/s |
moe_dense |
70.4 min | 142M | ~3.9K tok/s |
moe_routed |
229.0 min | 362M | ~1.2K tok/s |
3. 训练曲线分析

3.1 曲线特征
- MTP 配置组(
mtp_off,mtp_on,mtp_share_head):起步 loss 最高(~2.9),但下降最快,5000 步后达到全局最优(1.47-1.62) - Attention 配置组:起步 loss 中等(~2.8-3.0),下降平稳但最终收敛在 1.75-1.78 区间,未能突破 1.7
- MoE 配置组:起步 loss 最高(~3.5-4.1),下降缓慢,
moe_routed最终 loss 仍高达 2.52
3.2 关键观察
- MTP-off 意外领先:在 192M 规模下,关闭 MTP 的配置反而获得全局最低 loss(1.4736),且是唯一一个 192M < 31M 的配置
- Attention 配置集体退化:所有 4 个 Attention 变体在 192M 规模下 loss 均显著高于 31M(+11% ~ +18%),其中 31M 冠军
attn_mla_qk_norm退化最严重(+17.8%) - MoE 配置严重退化:
moe_dense退化 33.2%,moe_routed退化 57.2%,主要原因是参数量从 31M 膨胀到 362M 而训练步数不足
4. 规模一致性深度分析
4.1 Spearman 等级相关分析

Spearman ρ = 0.4266 — 统计上属于"中等不一致"。
排序变化详情
| 配置 | 31M 排名 | 192M 排名 | 变化 | 原因分析 |
|---|---|---|---|---|
attn_mla_qk_norm |
#1 | #6 | ↓5 | 31M 最优在 192M 严重退化 |
moe_dense |
#2 | #11 | ↓9 | 参数膨胀 31M→142M 但效果反降 |
mtp_off |
#3 | #1 | ↑2 | 唯一从规模化获益的配置 |
train_adamw |
#4 | #2 | ↑2 | 超参数适配好(lr=3e-4, bs=8, AMP) |
attn_saha |
#5 | #8 | ↓3 | 参数效率高但绝对效果退化 |
mtp_on |
#6 | #4 | ↑2 | 安全模式超参数拖累(lr=1e-4, bs=4) |
mtp_share_head |
#7 | #3 | ↑4 | 同上,但参数更少 |
attn_mla |
#8 | #7 | ↑1 | 相对稳定 |
attn_gqa |
#9 | #5 | ↑4 | 参数最少(110M),规模化后反超 MLA |
moe_eckvc |
#10 | #10 | → | 排序不变 |
moe_crs |
#11 | #9 | ↑2 | 略微改善 |
moe_routed |
#12 | #12 | → | 始终最差 |
4.2 排序不一致的根因分析
根因 1:超参数非公平对比
192M 实验中,不同维度配置使用了不同超参数:
| 维度 | lr | batch_size | AMP | warmup | mtp_loss_weight |
|---|---|---|---|---|---|
| Attention | 3e-4 | 8 | bf16 | 300 | — |
| MoE Dense | 3e-4 | 8 | bf16 | 300 | — |
| MoE Routed/ECKVC/CRS | 2e-4 | 4 | fp32 | 300 | — |
| MTP off/on/share | 1e-4 | 4 | fp32 | 500 | 0.01 |
| Optimizer (AdamW) | 3e-4 | 8 | bf16 | 300 | — |
影响:
- MTP 配置的 lr 仅为 Attention 的 1/3,batch_size 减半 → 有效学习率极低 → 收敛不充分
- MoE 配置(362M 参数)用 bs=4 + fp32 → 单步吞吐量极低 + 5000 步可能不足以收敛
mtp_off之所以成为 192M 最优,部分原因是它使用了 MTP 安全模式(lr=1e-4, bs=4, fp32),而其他 Attention 配置用了不同超参数
根因 2:参数量分布不均匀
| 配置类型 | 31M 参数量 | 192M 参数量 | 倍数 |
|---|---|---|---|
| Attention (GQA) | 27.4M | 109.9M | 4.0× |
| Attention (MLA/SAHA) | 28.5-31M | 114-134M | 3.7-4.3× |
| MoE Dense | 31M | 142M | 4.6× |
| MoE Routed | 49.2M | 362M | 7.4× |
| MoE ECKVC/CRS | 49.3-49.5M | 362M | 7.3× |
MoE 配置的参数膨胀远超 Attention(7.4× vs 4.0×),在相同 5000 步训练下,MoE 配置有效训练量严重不足。
根因 3:训练步数 vs 模型容量
根据 Chinchilla 缩放律,最优 token/parameter 比约为 20:1。
| 配置 | 参数量 | 最优 token 数 | 实际 token 数 | 比率 |
|---|---|---|---|---|
mtp_off |
134M | 2.68B | 10.2M | 3.8% |
attn_gqa |
110M | 2.20B | 10.2M | 4.6% |
moe_routed |
362M | 7.24B | 10.2M | 1.4% |
所有配置都远未达到 Chinchilla 最优,但 MoE 配置尤其严重。这解释了为什么 MoE 在 192M 规模下表现极差。
5. 各维度对比

5.1 Attention 维度
| 配置 | 31M Loss (rank) | 192M Loss (rank) | 变化 |
|---|---|---|---|
attn_gqa |
1.5772 (#9) | 1.7517 (#5) | ↑4 |
attn_mla |
1.5543 (#8) | 1.7715 (#7) | ↑1 |
attn_mla_qk_norm |
1.4956 (#1) | 1.7618 (#6) | ↓5 |
attn_saha |
1.5301 (#5) | 1.7809 (#8) | ↓3 |
192M Attention 排序:GQA > MLA+QKN > MLA > SAHA
与 31M 对比:31M 排序为 MLA+QKN > SAHA > MLA > GQA,完全反转。
分析:
- GQA 参数最少(110M vs MLA 134M),在训练不充分的条件下收敛更快
- MLA 的低秩压缩在 31M 时通过 QK-Norm 稳定训练获得优势,但在 192M 规模下压缩比率过高导致信息瓶颈
- SAHA 虽然参数效率高(114M),但其混合注意力机制可能需要更多训练步数来找到最优路由策略
5.2 MoE 维度
| 配置 | 31M Loss (rank) | 192M Loss (rank) | 变化 |
|---|---|---|---|
moe_dense |
1.5203 (#2) | 2.0250 (#11) | ↓9 |
moe_routed |
1.6011 (#12) | 2.5175 (#12) | → |
moe_eckvc |
1.5870 (#10) | 2.0155 (#10) | → |
moe_crs |
1.5955 (#11) | 2.0143 (#9) | ↑2 |
192M MoE 排序:CRS ≈ ECKVC > Dense >> Routed
关键发现:
- 创新模块 CRS 和 ECKVC 在 192M 规模下超越了 Dense baseline(Δ Loss = -0.0107)
- 但 MoE 整体效果远差于 Attention(2.01 vs 1.75),主要因参数膨胀至 362M
moe_routedPPL=12.40,几乎未收敛
5.3 MTP 维度
| 配置 | 31M Loss (rank) | 192M Loss (rank) | 变化 |
|---|---|---|---|
mtp_off |
1.5203 (#3) | 1.4736 (#1) | ↑2 |
mtp_on |
1.5401 (#6) | 1.6244 (#4) | ↑2 |
mtp_share_head |
1.5489 (#7) | 1.6159 (#3) | ↑4 |
192M MTP 排序:off < share_head < on
注意:此维度排序不可靠,因为 MTP on/share_head 使用了完全不同的超参数(lr=1e-4, bs=4, fp32, warmup=500),与 mtp_off 的对比不公平。mtp_off 在 192M 取得全局最优,部分得益于其使用了安全模式(虽然 lr 更低,但 fp32 精度 + 更长 warmup 可能帮助了收敛)。
5.4 Optimizer 维度
| 配置 | 31M Loss (rank) | 192M Loss (rank) | 变化 |
|---|---|---|---|
train_adamw |
1.5277 (#4) | 1.6042 (#2) | ↑2 |
AdamW 在 192M 规模下排名第 2,表现稳定。注意 mtp_off 和 train_adamw 底层配置完全一致(Dense FFN + GQA + 无 MTP),差异仅在优化器超参数上。
6. 规模化效应分析

6.1 规模化增益/退化排序
| 配置 | Δ Loss | Δ % | 分类 |
|---|---|---|---|
mtp_off |
-0.047 | -3.1% | ✅ 唯一改善 |
train_adamw |
+0.077 | +5.0% | 轻微退化 |
mtp_share_head |
+0.067 | +4.3% | 轻微退化 |
mtp_on |
+0.084 | +5.5% | 轻微退化 |
attn_gqa |
+0.175 | +11.1% | 中度退化 |
attn_mla |
+0.217 | +14.0% | 中度退化 |
attn_saha |
+0.251 | +16.4% | 中度退化 |
attn_mla_qk_norm |
+0.266 | +17.8% | 中度退化 |
moe_crs |
+0.419 | +26.2% | 严重退化 |
moe_eckvc |
+0.429 | +27.0% | 严重退化 |
moe_dense |
+0.505 | +33.2% | 严重退化 |
moe_routed |
+0.916 | +57.2% | 极端退化 |
6.2 退化模式分析
退化程度与参数量呈强正相关(r ≈ 0.85):
- 110-147M 区间(Attention + MTP + AdamW):退化 +5% ~ +18%
- 142M 区间(MoE Dense):退化 +33%
- 362M 区间(MoE Routed/ECKVC/CRS):退化 +26% ~ +57%
这表明在固定 5000 步训练预算下,更大的模型需要更多步数才能达到等效收敛。
7. 创新模块规模化验证
7.1 SAHA(Scale-Aware Hybrid Attention)
| 指标 | 31M | 192M | 评估 |
|---|---|---|---|
| Eval Loss | 1.5301 (#5) | 1.7809 (#8) | 排名下降 |
| 参数量 | 28.5M | 114.3M | 参数效率最高 |
| 参数效率 (loss/param) | 0.0537 | 0.0156 | 192M 效率最高 |
| Δ % | — | +16.4% | 中度退化 |
结论:SAHA 的参数效率优势在 192M 规模下保持(114M vs MLA 134M,loss 仅差 0.01),但绝对效果退化,需要更多训练步数验证。
7.2 ECKVC(Expert-Conditioned KV Compression)
| 指标 | 31M | 192M | 评估 |
|---|---|---|---|
| Eval Loss | 1.5870 (#10) | 2.0155 (#10) | 排序不变 |
| vs Dense (31M) | +0.067 | -0.010 | 192M 反超 Dense |
| Δ % | — | +27.0% | 严重退化 |
结论:ECKVC 在 192M 规模下首次超越 Dense FFN,但整体 MoE 效果差,需在更大 token 预算下验证。
7.3 CRS(Causal Routing Smoothing)
| 指标 | 31M | 192M | 评估 |
|---|---|---|---|
| Eval Loss | 1.5955 (#11) | 2.0143 (#9) | 排名上升 |
| vs Dense (31M) | +0.075 | -0.011 | 192M 反超 Dense |
| vs ECKVC (31M) | +0.009 | -0.001 | 192M 略优 |
| Δ % | — | +26.2% | 严重退化 |
结论:CRS 是 192M MoE 维度最优配置,且在两个规模下均优于或等于 ECKVC。但 MoE 整体退化严重。
7.4 MLA + QK-Norm
| 指标 | 31M | 192M | 评估 |
|---|---|---|---|
| Eval Loss | 1.4956 (#1) | 1.7618 (#6) | 大幅下降 |
| vs GQA (31M) | -0.082 | +0.010 | 优势消失 |
| Δ % | — | +17.8% | 中度退化 |
结论:31M 全局冠军在 192M 规模下失去全部优势。QK-Norm 的稳定性增益在更大规模下可能被 MLA 的低秩压缩瓶颈抵消。
8. 结论与建议
8.1 核心结论
- 31M 消融排序不能直接推广到 192M(Spearman ρ=0.4266)
- 超参数不统一是排序不一致的首要原因:MTP/MoE 配置被迫使用不同超参数(lr, bs, AMP, warmup),导致跨维度比较不公平
- 训练步数不足是第二原因:所有配置(尤其 MoE 362M)远未达到 Chinchilla 最优 token/param 比
- GQA 在 192M 反超 MLA:参数量优势(110M vs 134M)在训练不充分时更重要
- MoE 创新模块(CRS, ECKVC)在 192M 超越 Dense:但 MoE 整体远差于 Attention
- SAHA 参数效率优势保持:192M 最少参数 Attention 配置,效果仅差最优 0.03
8.2 公平性修正建议
| 问题 | 修正方案 | 优先级 |
|---|---|---|
| 超参数不统一 | 统一所有配置使用 lr=3e-4, bs=8, AMP=bf16, warmup=300 | P0 |
| MTP NaN 风险 | 统一使用 mtp_loss_weight=0.01 + grad_clip=0.5 + NaN skip | P0 |
| MoE 参数膨胀 | 将 MoE expert 数从 8 减至 4,控制参数量在 ~150M | P1 |
| 训练步数不足 | 增加至 20000-50000 步(或达到 Chinchilla 比率) | P1 |
| 单 seed 随机性 | 每配置跑 3-5 个 seed 取均值±标准差 | P2 |
8.3 后续实验路线
Phase 2a(公平重跑)
├── 统一超参数:所有配置 lr=3e-4, bs=8, bf16, warmup=300
├── 统一步数:10000 steps(平衡时间与收敛)
├── MoE 参数控制:4 experts × 2 active,参数量 ~150M
└── 输出:12 configs × 1 seed → 公平排序
Phase 2b(统计显著性)
├── 取 Phase 2a 排名前 6 的配置
├── 每配置跑 3 个 seed(42, 123, 2024)
└── 输出:6 configs × 3 seeds → 均值±std 排名
Phase 2c(创新模块定向验证)
├── SAHA vs GQA:同参数量对比(控制 dim/head)
├── CRS vs Dense MoE:同 expert 数对比
└── 输出:创新模块的纯净增益
8.4 方法学反思
本次 192M 验证暴露了消融实验设计中的一个关键陷阱:为了解决工程问题(NaN, MPS 卡顿)而调整超参数,无意中引入了实验偏差。MTP 安全模式(lr=1e-4, bs=4, fp32)和 MoE 适配(lr=2e-4, bs=4, fp32)虽然解决了训练稳定性问题,但也使不同维度的配置处于不同的"起跑线"上。
这并不意味着 192M 实验没有价值——它揭示了一个重要事实:在训练不充分的条件下,参数效率比架构创新更重要。GQA 以最少参数(110M)取得 Attention 最优,SAHA 以 114M 取得第二好的参数效率,这些都是有价值的发现。
但要得出"哪种注意力/MoE/MTP 架构在规模化后最优"的可靠结论,必须在统一超参数 + 充分训练的条件下重新验证。
附录:文件索引
| 文件 | 描述 |
|---|---|
sparklm_192m_scale_report.html |
192M HTML 交互式报告(含 Chart.js 图表) |
sparklm_192m_scale_report.md |
192M Markdown 分析报告 |
sparklm_192m_deep_analysis.md |
本报告(深度分析版) |
charts_192m/chart1_31m_vs_192m_bar.png |
31M vs 192M 柱状对比图 |
charts_192m/chart2_training_curves.png |
192M 训练曲线(12 configs) |
charts_192m/chart3_scatter_rank.png |
31M vs 192M 散点图 |
charts_192m/chart4_dimension_comparison.png |
维度分组对比图 |
charts_192m/chart5_scaling_delta.png |
规模化 Delta 排序图 |
outputs/tinystories_192m_ablation/results_192m.json |
原始训练结果数据 |
outputs/tinystories_192m_ablation/192m_*/ |
12 个配置的训练日志与 checkpoint |
报告自动生成 | SparkLM Scale Verification Project | 2026-07-09

浙公网安备 33010602011771号