进度
进行中训练机每 30 分钟自动更新(读取中…)。
进展与结论
| 阶段 | 改了什么 | 结果(EMA;对比度、偏离教师越接近 1 / 0 越好) |
|---|---|---|
| 正式训练 | ODE-init 500 → TDM 3000 步,fake : 学生 1 : 1 | 结构干净,但越训越偏离教师(偏离 0.126 → 0.173)、对比度越来越高(1.15 → 1.21),复杂画面被简化;最接近教师的是 500 步 |
| 消融 ① | 教师 cfg 4 → 3 | ✗ 1000 步对比度 1.19(正式 1.14)、偏离 0.150(0.144);不采用 |
| 消融 ② | Huber c 1e-3 → 0.1 | ✗ 1000 步对比度 1.16、偏离 0.154,看图与正式训练几乎一样;不采用 |
| 正式重训练 | fake : 学生 4 : 1 + 第 1 步锚点(λ 0.6,1000 步后余弦降到 0.3);计划 2500 步,按用户要求训到 2000 步停 | 训练中 |
| DP-DMD | 方法探索阶段最接近教师的配方 2 原样换到新教师:学生从教师起步,第 1 步只学教师锚点(detach),DMD 只管第 2–4 步,fake : 学生 5 : 1,1000 步 | 排队 |
训练设置与数据
| 教师 | 主线 74000 EMA + CFG 蒸馏 LoRA(秩 128)第 10000 步 EMA,合并成完整权重;cfg 嵌入 4(推荐推理口径:40 步、shift 3,CFG 区间与 global renorm 已在 LoRA 的训练目标里)。学生、fake 从同一权重起步,不接 cfg 嵌入,推理时没有 CFG 旋钮 |
| 学生 | 4 步,时间表 1 → 0.9 → 0.75 → 0.5 → 0(shift 3) |
| ODE-init | 500 iter,lr 2e-6;学生在 4 个时间点上回归教师 40 步的终点 |
| TDM | 学生 lr 4e-6、fake lr 2e-5,β (0, 0.95),学习率余弦降到 0,pseudo-Huber c 1e-3,fake 权重 f = 1;8 × H200,每 iter 32 条,每 500 iter 存一档 |
| 数据 | CFG 蒸馏数据 sel600k v3(8 格均衡:t2i / i2i × SFW / NSFW × 动漫 / 真人,另加用户真实请求)的子集:包样本 71,053、用户请求 5,208,i2i 占一半。原 tar 已删,按清单回源重建,元数据全部与清单 sha256 一致;蒸馏从纯噪声展开,只用 prompt 和参考图 |
损失曲线
ODE-init 回归损失
对数纵轴;k0–k3 是学生 4 个时间点各自的 MSE。
TDM 损失
损失不直接反映出图好坏;训练是否健康主要看训练内预览(在 W&B,含训练数据,不放本页)。
评测
heldout15 × 3 个种子,4 步;图只放 8 条非成人用例,指标按全部 15 条算。除锐度外都以「教师 40 步同条同种子」为 1;偏离教师 = 缩到 128×128 后与教师同种子出图的像素 L1(0 = 同图)。
读取中…
记录
| 训练 run(= W&B 分组) | 内容 | W&B | 进度 | 结论 |
|---|
代码与文档:GitHub BoltzMamba/Kokoro-FastGen-DMD 分支 dpdmd_tdm_pdd,方法文档 §3.9–3.11、实验文档 §1 与结论 15–17。W&B 项目 lovashi514-nus/bagel_step_distill。