jysdqhxxdybdygjszyglddff/docs/EVALUATION.md

6.8 KiB
Raw Permalink Blame History

评测与结果 (Evaluation & Results)

本文件随自动化实验更新。最新机器可读结果见 swarm/scoreboard.json 与各 results/*/summary.json

⚠️ P0 修复声明2026-07-13:本文件 §3 及之后的数字基于旧 buggy 评测协议 Policy.assign() 返回字典后由 compute_makespan()dag.topo_order() 重算, 训练/评测/HEFT 三处顺序不一致。Phase 2 P0 已修复——引入 Schedule 对象, 各策略使用自身实际 order新增插入式 HEFT 作为更强基线。 修复后同一 ws5_x42 ckptval mean_ratio 1.0085 → 1.0450win_rate 46.5% → 28.0%。 本文件 §3+ 的所有具体数字(含"复杂场景已超越 HEFT"等结论)仅作历史参考 P1 阶段会用新协议重跑后整篇重写。读请优先参考 iterations/PROJECT_SUMMARY.md

1. 指标定义

指标 定义 说明
mean_ratio mean_{场景}(RL_makespan / HEFT_makespan) 主指标逐实例取比值再平均越低越好HEFT=1.0
win_rate P(ratio < 1.0) RL 优于 HEFT 的场景占比
std_ratio 跨场景 ratio 标准差 稳定性
median_ratio / geo_mean_ratio 中位数 / 几何均值 抗离群值

2. 公平性保证

  • RL 与 HEFT 的 makespan 由同一 compute_makespan(非插入式单机串行模型)计算;
  • 固定独立验证集200 场景,与训练集 600 场景种子区间不重叠);
  • 固定随机种子(set_global_seed);逐实例比值。

3. 当前结果

3.1 最新结果best trial ws5_x42warm start 链式微调)

val 集200 场景,训练监控)

策略 mean_ratio median geo_mean std win_rate mean_makespan
随机 4.143 4.086 4.012 1.065 0.000 36.46
HEFT 1.0000 1.0000 1.0000 0.000 9.111
RL (ws5_x42) 1.0085 1.0115 0.9996 0.134 0.465 9.050

test 集200 场景,泛化验证)

策略 mean_ratio median geo_mean std win_rate mean_makespan
随机 4.000 0.000 34.16
HEFT 1.0000 1.0000 1.0000 0.000 8.535
RL (ws5_x42) 1.0364 1.0229 1.0283 0.129 0.370 8.763

诚实评估

  • val 距 HEFT 差 0.008546.5% val 场景 RL 严格优于 HEFT
  • test 距 HEFT 差 0.036437.0% test 场景 RL 优于 HEFT
  • val→test 差距 0.028 主要源于 test 集分布偏移test num_tasks low 子集占 78/200 vs val 67/200且 test 大任务图 RL 反而劣化),并非单纯过拟合(详见 docs/GENERALIZATION_TEST.md
  • 不声称"RL 已全面超越 HEFT",准确表述为:验证集上接近 HEFT 并在近半场景严格优于 HEFT复杂异构场景优势显著简单场景仍落后

3.2 多 seed 稳定性warm start 链式微调后)

seed 链 最佳 trial val mean_ratio
42 (主力) ws4_s7x42 → ws5_x42 1.0184 → 1.0085
7 (跨种子续训) ws3_s7b → ws4_s7a 1.0222 → 1.0210
7 (低 lr) ws4_s7c 1.0239
attention attn_ws_s7 → ws5_attn2 1.0232 → 1.0182

5 个不同 seed/路径的 trial val_ratio 全部在 1.0085~1.0239 区间,std≈0.0055(远<0.03 稳定阈值。warm start 链抹平了原本 seed=1/123 的发散问题。

3.3 历史进展h128_l3 era → ws5_x42

阶段 关键 trial val mean_ratio 累计降幅
接手 baseline h128_l3 1.0875
长训练 + 大 ckpt h128l3_80 1.0863 -0.001
warm start + lr1e-4 ws_s42_lr1e4 1.0528 -0.035
链式低 lr ws2_lr5e5 1.0474 -0.040
跨种子续训 ws3_s7b 1.0222 -0.065
跨种子混合 ws4_s7x42 1.0184 -0.069
再续训精调 ws5_x42 1.0085 -0.079

累计降幅 7.3%1.0875 → 1.008539 个 trial5 轮结构化分析(见 swarm/ITERATION_LOG.md)。

3.4 创新方向:泛化与鲁棒性深度分析

围绕"在哪些场景 RL 有效/失败"与"扰动下谁更鲁棒"两个核心问题,提供独立分析报告:

  • 泛化分析 docs/GENERALIZATION.mdvaldocs/GENERALIZATION_TEST.mdtest
    • 按任务规模/通信强度/资源异构度/DAG密度/云-端速度差 5 特征三分位分组
    • 关键发现:RL 在大规模/高通信/稀疏 DAG 子集上 mean_ratio=0.985-0.99 已超越 HEFT;小任务/低通信子集劣化1.03-1.05),是均值的主要拖累项
  • 鲁棒性扰动 docs/ROBUSTNESS.md
    • 4 类扰动节点算力下降、带宽下降、端侧节点失效、workload 估计误差
    • 关键发现:带宽扰动下 RL degradation=1.050 显著低于 HEFT 1.060更鲁棒workload 误差下 RL 也略优;算力下降/节点失效两者持平
  • 自动化闭环 docs/AUTOMATION.md
    • 假设驱动实验闭环scoreboard + warm start + 文件锁并行 + early-stop + attention α 门控热启动

多 seed 稳定性h128_l360 iter

seed val mean_ratio
42 1.0875
2 1.1137
1 2.1138(训练发散)

有效种子42、2mean ≈ 1.100 ± 0.013稳定seed=1 触发 PPO 发散(已知种子敏感性)。 改进方向early-stopping监控 val发散即停并换种子、多种子选优、增加并行环境降方差、更长训练。自动化流程可在服务器持续探索稳定化方案。

自动化超参搜索(第一轮 ablation6080 iterval 200 场景)

变体 mean_ratio 结论
h128_l3hidden128 + 3层GNN 1.0875 ★ 最佳:大网 + 深网
hidden128 1.0917 大隐藏维有效
epochs5少 epoch 1.1113 略好,减过拟合
layers3 1.1247 略好
base默认配置 1.1309 基准
clip03 / ent0005 / gamma995 1.1491.187 略差
lr1e-3 / vf10 / ent02 1.2881.524
lr1e-4 / nsteps4096 1.911.98 欠训练
cp_lb奖励模式 2.3129 崩——reward 须对齐评测指标

关键发现

  1. 网络容量是最有效杠杆hidden128 / h128_l3 把 ratio 从 1.131 压到 1.087
  2. reward 对齐评测指标是关键1makespan/HEFT 远优于 cp_lb2.31),验证归一化奖励设计;
  3. PPO 默认超参基本最优lr=3e-4, clip=0.2, γ=0.99, ent=0.01),偏离均变差。

第二轮正基于 h128_l3 深挖(+少 epoch / +更大网络)。最新结果见 swarm/scoreboard.json

4. 收敛诊断(对比参考工作 GrapheonRL

  • 本方案 critic_loss 从训练初期即稳定在 0.010.2 量级reward 归一化生效);
  • 参考 GrapheonRL 报告其 value-loss 起步 3.89e4、explained_variance≈0value 函数失效)。本方案通过 1 makespan/HEFT 归一化避免了该问题。