U6.3 不算導數,能不能用兩個小跳教一個大跳?
長跳的答案,能不能由短跳湊出來?
U6.2 用導數關係學整段平均速度。但計算 JVP 需要自動微分支援,也要處理 tangent 的數值尺度。若我們只想用網路求值,最自然的動作就是:先走兩小段,把兩段位移加起來,教模型一次跳到同一個地方。
這延續 U5.1 的兩步合一。不過這次我們不另外訓一輪輪新模型,而是把「想跳多長」直接交給同一個網路。Frans 等人的 Shortcut model [1] 就使用這種步長條件化的輸出。
先加位移,再除以總時間
沿用 噪聲、 資料。令 輸出從 往前 的平均速度,落點是 。這裡 是 Shortcut 的函數名,不是 score;本篇的 是時間間隔。
先走兩段相同長度 ,精確 maps 的第一段落點記成 。總位移應滿足
左邊是一次長跳,右邊是兩段位移相加。當 ,兩邊除以 :
來自兩段時間相同。若兩段時間不同,就要按各自時間比例加權,不能仍直接取算術平均。
訓練時沒有精確短跳,改用停止梯度的模型算出 與右側,監督線上的長跳:
抽取時間時須確保 。兩次短跳的輸入位置不同,第二次必須用 ,不能只把時間改成 、位置仍留在 。
若短跳還沒學好,長跳在跟誰學?
這個 self-target 仍需要資料的方向。令步長縮到零,平均速度應回到 instantaneous velocity,因此以 訓練
它就是 ordinary flow matching。 時 sampling 位移為零,但輸出的極限 velocity 不為零;這個 local label 指定我們要學的動力學。訓練混合 local 與有限 的合成樣本,讓同一網路把小尺度規則延伸到較大的跳躍。
課堂提問Q1
如果只用長跳 self-consistency,資料不用進來,是否也能把 loss 訓到很小?
先想一想,再展開看整理後的答案
可以。令所有 都輸出零,兩個小跳與一個大跳都原地不動,長跳 loss 就是零。但它沒有把 noise 送向資料。局部 FM supervision 的作用是排除這種與資料動力學無關的解,不只是「幫訓練加速」。
另一方面,使用 local label 也不保證長跳一定精確。短跳的位置偏差會進入第二次求值,target network 本身又在更新;這些都需要訓練與評估來檢查。
互動 demo:解析 Gaussian 檢查。 調整起始時間、區間與位置,直接計算本篇的關係;偏差控制是明示的 surrogate,沒有使用預設的品質曲線。
與 MeanFlow 比較的,是訓練訊號
兩者都能用平均速度表示 flow map,也都可以從資料提供局部動力學。但 MeanFlow 用導數 identity 建立自我 target;Shortcut 用兩個短段的實際模型輸出建立 target。
| 問題 | MeanFlow | Shortcut |
|---|---|---|
| 長段 target 怎麼來? | 當下 velocity 與平均速度的導數 | 模型的兩個短跳合成 |
| 額外操作 | JVP 與 stopped-gradient tangent | 短跳網路求值與位置合成 |
| 資料從哪裡進來? | Target 的條件 velocity,另可混合對角線 FM | 的 FM supervision |
| 要檢查什麼? | derivative target 的穩定性與近似 | 短跳誤差、self-target 與步長泛化 |
兩者都有 bootstrapping,不能說 MeanFlow 已經完全換掉自我目標。Shortcut 常選二進位步長訓練;實際取樣要檢查所用步長是否在訓練範圍。也不能僅由有多少級,就宣稱總誤差一定按 倍率放大;那還需要各級近似與 map 穩定性的假設。
若有 teacher,還能直接約束兩種時間變化
書 §11.6 把精確 flow 的 Lagrangian、Eulerian 與合成三種關係並排。若有固定 velocity teacher,就能在輸入點與模型輸出點都查方向,建立連續時間的 flow-map distillation。Sabour 等人的 Align Your Flow(AYF) [2] 是這條路的代表,討論 Eulerian 與 Lagrangian matching。
它與從頭訓練的主要差別在訊號來源:teacher 可以在模型移動到的位置提供 velocity,不需要把原輸入的 reference label 誤用到輸出位置。實際訓練仍要安排參數化、梯度停止與 tangent 尺度;這裡不把單一 residual 當成完整重現 AYF 的 recipe。
展開細節CTM、PD 與 Shortcut,哪些地方相似?
三者都會用較短 transition 監督較長 transition。PD 的 teacher 是前一輪模型,對指定網格逐輪減半;CTM 把起訖時間放進模型,用短 solver 段加上 target map;Shortcut 在同一網路裡以步長條件化短跳與長跳。它們共享合成的想法,但 training distribution、target 來源與參數更新不同,不是同一個演算法換名字。
圖:方法的輸出形式與監督來源要分開比較;圖中「不需 teacher」指相應的從頭訓練構造。
消化一下
參考文獻
主要理論參考:The Principles of Diffusion Models,§10.3、§11.4 與 §11.6 的合成觀點;Shortcut 與 AYF 的方法細節參照原始論文。正文的符號沿用本課程;方法實作細節再對照下列原始論文。
- Frans, Hafner, Levine & Abbeel, One Step Diffusion via Shortcut Models (ICLR 2025)。
- Sabour, Fidler & Kreis, Align Your Flow: Scaling Continuous-Time Flow Map Distillation (2025)。
- Kim et al., Consistency Trajectory Models (ICLR 2024)。
- Geng, Deng, Bai, Kolter & He, Mean Flows for One-step Generative Modeling (2025)。
- Boffi, Albergo & Vanden-Eijnden, Flow Map Matching (2024)。