任务矩阵¶
任务矩阵是 sweep 批次的杀手视图:把 model × dataset 拍成网格,每个 格子是一个 job。整体走的是「克制」路线 —— 默认 状态是白底配细灰边,强调留给整张矩阵里仅有的两个格子。
布局¶
dataset₁ dataset₂ dataset₃ dataset₄
┌─────────┬─────────┬─────────┬─────────┐
model₁ │ 0.382 │ 0.412 │ 0.470 │ 0.521 │
├─────────┼─────────┼─────────┼─────────┤
model₂ │ 0.354 │ 0.394 │ 🏆 0.341│ 0.488 │ ← 全局最佳(绿边 + 奖杯)
├─────────┼─────────┼─────────┼─────────┤
model₃ │ 0.415 │ 0.510 │ 0.499 │ ⚠ 0.612 │ ← 全局最差(红边 + 警告)
└─────────┴─────────┴─────────┴─────────┘
强调对象是 整张矩阵,不是按行或按列。每个主指标最多有一个全局 最佳和一个全局最差。
单元格装饰¶
每个格子带:
- 白底 + 细灰边:默认状态,方便阅读。
- 右上角的小色点:使用统一的 5 色调色板(与卡片、徽标共用)。
但是 干净
done且未被空闲检测器标记的格子 不画色点,因为 「这次跑完了」不需要装饰。 - 最佳格子(全局唯一):粗绿边 + 奖杯图标。
- 最差格子(全局唯一):粗红边 + 警告图标。
最佳 / 最差的资格¶
只有同时满足以下条件的格子才参与计算:
status === 'done'(running / failed / stalled 一律不参与)。is_idle_flagged === false(途中卡死的 run 没资格做最优解)。- 主指标值是有限的(
Number.isFinite)。
每个指标的优化方向(越低越好 / 越高越好)按指标各自配置。可参与 格子 ≤1 时不画高亮。多个格子同时取得最佳值(或最差值)时也跳过 —— 任意挑一个赢家会误导。
主指标¶
主指标就是计算全局最佳 / 最差所基于的指标。默认是项目里 job 第一个 报上来的那个;可以在 Project settings → Primary metric 里显式 指定。
超参数 / 指标列¶
工具栏的 Columns 按钮选择哪些指标和超参列要显示。值过长会截断, 鼠标悬停看完整字符串。选择按用户 + 批次 持久化。
CSV 导出¶
Export CSV 按钮按可见列、当前排序导出 CSV。pandas / Excel 直接 打开 —— 这是从「我跑了一次 sweep」到「我有了一张论文表」的最短路径。
另见¶
- 任务详情 —— 进入单个格子。
- 实现见
frontend/src/components/JobMatrix.vue,文件头注释解释了 重设计的动机。