test: 轮次37(补)——解析高斯场给目标写法做不动点判决:sq 权重只线性收敛(结构性少修一半),lin/mid 二次收敛
This commit is contained in:
@@ -791,6 +791,12 @@
|
||||
- **E1-b(`docs/experiment_round36_kmf_e1b.json`,512 样本,比的是"离老师多远",归一化动作块 L2)**:一步 **4.326**;同模型 2 段 **0.434**、4 段 0.429、32 段 0.601;流图(r=t,128 段)0.665。**一步比多步差 10 倍**,而 2 段就基本到位(再多段反而偏离老师——那是模型自身场的偏差,不是采样误差)。
|
||||
- **这一条比 K-MF 本身更要命**:57.4% 的到达是在"线上一步输出偏离自己场 10 倍"的前提下拿到的,安全层/反馈/DAgger 都在替这个角点擦屁股。所以先把 `--steps` 打通,量它对闭环到达的影响,再决定要不要为"把一步训好"付一次训练。
|
||||
|
||||
- **不动点判决补一个解析实验**(`tests/test_meanflow_targets.py`,3 项,CPU/float64,与已训模型无关):1-D 高斯数据 `x~N(0,σ²)` 时 PF-ODE 是线性的,流图 `z_r = z_t·sqrt(s²(r)/s²(t))` 有闭式 ⇒ 平均速度真值有闭式。把**精确场**代进四种写法:
|
||||
- 仪表自证:Eq.4 代精确场逐位还原真值(绝对偏差 <1e−12,σ=0.5/1/2 三档、(r,t) 三组都过)⇒ 后面的数可信。
|
||||
- **收敛阶分开"有偏"与"无偏"**(区间长度 0.2→0.1→0.05,σ=2 的相对偏差):`sq`(按方案抄的 (1−λ)²/λ²)0.426→0.133→0.057,比值 ≈0.4 ⇒ **只有线性收敛 = 结构性少修一半**;`lin`(换成系数和为 1 的线性权重)0.042→0.015→0.004、`mid`(整条修正移到中点)0.147→0.042→0.010,比值 ≈0.25 ⇒ 二次收敛,只剩积分误差。
|
||||
- 跨整段 (0,1) 时**所有**单点导数写法都不可信(σ=2:sq 1.92、lin 1.84、mid 4.15 倍偏差),跨半段就降到 0.44–0.85 ⇒ 与 E1-b 的实测同向:**一步跨完本身难,两段就便宜一个量级**。这不是训练的毛病,是写法本身的量级。
|
||||
- 测试 35→38 项(缩步档 3 项)+ 新文件 `tests/test_meanflow_targets.py` 3 项 ⇒ 共 41 项。
|
||||
|
||||
## 分支清理(2026-10-20)
|
||||
|
||||
- `feat/fb-mix`(8e5431c):反馈混合方案的中间分支,**已验证是 `exp/dagger-deploy` 的祖先**(所有提交都在后者历史里),本地/远端分支删除,内容保留在 exp/dagger-deploy。
|
||||
|
||||
Reference in New Issue
Block a user