擴散模型原理 B31 · Mean Flow 與第 11 章結語
The Principles of Diffusion Models · 第 11 章 §11.5–11.6

Mean Flow 與第 11 章結語:平均速度、微分形式,以及同一個 flow map 的三種看法

CTM 直接學「從 \(s\) 跳到哪裡」,訓練時得解 ODE。Mean Flow 改學區間上的平均速度 \(\mathbf h^*\),再對起點時間微分,得到一個只需要瞬時速度和一次 Jacobian–向量乘積的目標:不用解 ODE,也不用老師。這一頁先講 MF 的訓練與取樣,再證明 CTM 和 MF 的 oracle 誤差只差一個時間權重,最後照書的第 11 章結語,用半群、Lagrangian、Eulerian 三種古典觀點,把 KD、PD、CM、CTM、MF 收進同一個框架。

書的範圍:第 11 章 §11.5(Mean Flow)、§11.6(結語) 閱讀時間:約 45 分鐘

讀完這頁你應該能夠

  1. 寫出 Mean Flow 的平均速度 \(\mathbf h^*\)、它的 oracle 損失,以及 \(s\to t\) 時它化成 flow matching。
  2. 從 \((t-s)\mathbf h^*=\int_s^t\mathbf v^*\,du\) 推出 MF 恆等式,說明訓練目標裡的 JVP 是什麼、切向量為什麼是 \([\mathbf v^*,1,0]\)。
  3. 證明 CTM 和 MF 的平方 oracle 誤差只差權重 \(1/s^2\),並說明兩者的實際目標為什麼仍然不同(積分形式 vs 微分形式)。
  4. 用半群、Lagrangian、Eulerian 三種觀點描述同一個 ODE flow,從半群恆等式推出另外兩個微分恆等式,並把本章各方法放進這三種觀點。

前置知識

  • B29:統一的 flow map 目標、半群性質、CTM 與 MF 的概觀(MF 目標的推導在 B29 第 4 節已經展開過一次)。
  • B30:連續時間 CM 的切向量與 JVP、CTM 的參數化 \(\mathbf g\) 與 γ 取樣。
  • B12:flow matching 與 conditional flow matching 損失;B16:diffusion model 的各種等價參數化(§6.3)。
記號。和 B29、B30 一樣:\(s\) 是出發時間(雜訊較多),\(t\le s\) 是到達時間。MF 用 flow matching 的時程 \(\alpha_t=1-t\)、\(\sigma_t=t\),\(t\in[0,1]\),\(t=1\) 是純雜訊。MF 原論文的記號不同:論文用 \(t\) 表示出發、\(r\) 表示到達,平均速度寫成 \(u(z,r,t)\);這裡照書寫成 \(\mathbf h(\mathbf x_s,s,t)\)。

「書 §」標出原文位置。灰框「轉述者補充」是書裡沒有的內容;藍框「推導」展開書中省略的步驟。

01Mean Flow 的建模與訓練書 §11.5、§11.5.1

就像 diffusion model 有許多等價的參數化和訓練目標,一般的 flow map \(\bm\Psi_{s\to t}\) 也可以用好幾種合理的方式學。這一節介紹 Mean Flow(MF,Geng et al. 2025),它是一般 flow map 家族中較晚出現的代表,展示另一種有原則、能有效學到這種映射的觀點。

CM 和 CTM 建立在 EDM 的框架上,MF 則建立在 flow matching 的表述上(\(\alpha_t=1-t\)、\(\sigma_t=t\),\(t\in[0,1]\))。MF 不直接參數化 flow map,而是學區間 \([t,s]\)(\(t\lt s\))上的平均漂移:

$$\mathbf h_{\bm\theta}(\mathbf x_s,s,t)\approx\mathbf h^*(\mathbf x_s,s,t):=\frac{1}{t-s}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du.$$

對應的 oracle 損失是

$$\mathbb E_{t\lt s}\,\mathbb E_{\mathbf x_s\sim p_s}\Big[w(s)\,\big\|\mathbf h_{\bm\theta}(\mathbf x_s,s,t)-\mathbf h^*(\mathbf x_s,s,t)\big\|_2^2\Big].$$

特別是當 \(s\to t\),損失函數化成 flow matching 損失,學的是瞬時速度:

$$\mathbb E_t\,\mathbb E_{\mathbf x_t\sim p_t}\Big[w(t)\,\big\|\mathbf h_{\bm\theta}(\mathbf x_t,t,t)-\mathbf v^*(\mathbf x_t,t)\big\|_2^2\Big].$$
為什麼 \(s\to t\) 時平均速度變成瞬時速度

\(\frac{1}{t-s}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du\) 是 \(\mathbf v^*\) 在區間上的平均。區間縮成一點時,平均值趨近那一點的值:\(\mathbf h^*(\mathbf x_s,s,s)=\mathbf v^*(\mathbf x_s,s)\)。這和 B30 第 8 節 CTM 的 \(\mathbf g^*(\mathbf x_s,s,s)=\mathbf x_s-s\mathbf v^*\) 是同一件事:兩種參數化在對角線上都還原 diffusion model。

第 3 節會看到 MF 仍然和 B29 的一般目標 \(\mathcal L_{\text{oracle}}\) 一致,只是從另一個(等價的)角度接近它。因為 oracle 的回歸目標 \(\mathbf h^*(\mathbf x_s,s,t)\) 一般沒有閉式,MF 利用一個恆等式構造替代目標:把

$$(t-s)\,\mathbf h^*(\mathbf x_s,s,t)=\int_s^t\mathbf v^*(\mathbf x_u,u)\,du$$

對 \(s\) 微分,得到 MF 恆等式:

$$\begin{aligned}\mathbf h^*(\mathbf x_s,s,t)&=\mathbf v^*(\mathbf x_s,s)-(s-t)\,\frac{d}{ds}\mathbf h^*(\mathbf x_s,s,t)\\&=\mathbf v^*(\mathbf x_s,s)-(s-t)\Big[(\partial_{\mathbf x}\mathbf h^*)(\mathbf x_s,s,t)\,\mathbf v^*(\mathbf x_s,s)+\partial_s\mathbf h^*(\mathbf x_s,s,t)\Big],\end{aligned}$$

第二行用了連鎖律,以及 \(\frac{d}{ds}\mathbf x_s=\mathbf v^*(\mathbf x_s,s)\)。

MF 恆等式的推導

固定終點 \(t\),讓起點 \(s\) 沿同一條 PF-ODE 軌跡移動。

右邊:積分路徑不變,只有下限在動,\(\frac{d}{ds}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du=-\mathbf v^*(\mathbf x_s,s)\)。

左邊:乘積法則,\(\frac{d}{ds}\big[(t-s)\mathbf h^*\big]=-\mathbf h^*+(t-s)\frac{d}{ds}\mathbf h^*\)。

兩邊相等:\(-\mathbf h^*+(t-s)\frac{d\mathbf h^*}{ds}=-\mathbf v^*\),所以 \(\mathbf h^*=\mathbf v^*+(t-s)\frac{d\mathbf h^*}{ds}=\mathbf v^*-(s-t)\frac{d\mathbf h^*}{ds}\)。全導數 \(\frac{d\mathbf h^*}{ds}\) 再用連鎖律拆成 \((\partial_{\mathbf x}\mathbf h^*)\frac{d\mathbf x_s}{ds}+\partial_s\mathbf h^*\),其中 \(\frac{d\mathbf x_s}{ds}=\mathbf v^*\)。

讀法:長區間的平均速度 = 起點的瞬時速度 − 一個修正項,修正項描述「起點沿軌跡滑動時,平均速度怎麼變」。區間越長(\(s-t\) 越大),修正越重要。第 6 節會看到這正是 Eulerian 恆等式換個參數化。

受這個恆等式啟發,MF 把拿不到的 oracle 換成一個 stop-gradient 的替代,得到實用的訓練目標:

$$\mathcal L_{\text{MF}}(\bm\theta):=\mathbb E_{t\lt s}\,\mathbb E_{\mathbf x_s\sim p_s}\Big[w(s)\,\big\|\mathbf h_{\bm\theta}(\mathbf x_s,s,t)-\mathbf h^{\text{tgt}}_{\bm\theta^-}(\mathbf x_s,s,t)\big\|_2^2\Big],$$

其中回歸目標是

$$\mathbf h^{\text{tgt}}_{\bm\theta^-}(\mathbf x_s,s,t):=\mathbf v^*(\mathbf x_s,s)-(s-t)\Big[\underbrace{(\partial_{\mathbf x}\mathbf h_{\bm\theta^-})(\mathbf x_s,s,t)\,\mathbf v^*(\mathbf x_s,s)+\partial_s\mathbf h_{\bm\theta^-}(\mathbf x_s,s,t)}_{\text{JVP}}\Big].$$

實務上 oracle 速度 \(\mathbf v^*\) 沒有閉式,必須近似。有兩種常見策略:依賴預訓練的 diffusion model(蒸餾),或直接從資料構造估計量(從頭訓練)。不管選哪一個,最後都要算目標網路 \(\mathbf h_{\bm\theta^-}\) 的 Jacobian–向量乘積(JVP):

$$\big[\partial_{\mathbf x}\mathbf h_{\bm\theta^-},\ \partial_s\mathbf h_{\bm\theta^-},\ \partial_t\mathbf h_{\bm\theta^-}\big]^\top\cdot\big[\mathbf v^*,\,1,\,0\big].$$

(切向量裡 \(\mathbf x\) 的分量是 \(\mathbf v^*\)、\(s\) 的分量是 1、\(t\) 的分量是 0:起點沿軌跡走,終點不動。)

  • 蒸餾:用以 flow matching 為骨幹的預訓練 diffusion model,\(\mathbf v_{\bm\phi^\times}\approx\mathbf v^*\)。
  • 從頭訓練:用一點條件速度 \(\alpha'_s\mathbf x_0+\sigma'_s\bm\epsilon\),它來自正向加噪 \(\mathbf x_s=\alpha_s\mathbf x_0+\sigma_s\bm\epsilon\)(\(\bm\epsilon\sim\mathcal N(\mathbf 0,\mathbf I)\))。在配對的 \((\mathbf x_0,\bm\epsilon)\) 上取值時,它是 \(s\) 這個等級上瞬時漂移的無偏單樣本估計。(flow matching 時程下就是 \(\bm\epsilon-\mathbf x_0\)。)
從頭訓練時,一點速度放進了 JVP 的切向量裡(轉述者補充)

MF 從頭訓練時,一點速度出現在兩個地方:目標的第一項 \(\mathbf v^*\),以及 JVP 的切向量。後者讓目標對速度不再是線性的嗎?其實還是線性的:JVP \((\partial_{\mathbf x}\mathbf h)\mathbf v+\partial_s\mathbf h\) 對 \(\mathbf v\) 是線性的,所以整個 \(\mathbf h^{\text{tgt}}\) 對 \(\mathbf v\) 是仿射的。給定 \(\mathbf x_s\) 取條件期望,一點速度換成 \(\mathbf v^*\),期望目標和用精確速度時一樣。這和 B30 第 4 節「連續時間 CT 和 CD 期望相同」是同一個道理;差別只在變異數。

不過「期望相同」不代表「學到的結果相同」:平方損失對一個有雜訊的目標回歸,最小解是目標的條件平均,這部分沒問題;但訓練時間有限、網路有限,雜訊會影響最佳化。Demo A 可以比較一點速度、精確速度和 oracle 三種目標。

MF 論文的實際做法(Geng et al. 2025)
  • 演算法:抽 \((r,t)\)、\(\bm\epsilon\),\(z=(1-t)x+t\bm\epsilon\),\(v=\bm\epsilon-x\);用 jvp(fn, (z, r, t), (v, 0, 1)) 同時得到 \(u\) 和 \(\frac{du}{dt}\);目標 \(u_{\text{tgt}}=v-(t-r)\frac{du}{dt}\) 加上 stopgrad。因為 \(\frac{du}{dt}\) 在 stopgrad 裡,不需要高階梯度,JVP 只多一次反向傳遞的成本。(論文記號裡 \(t\) 是出發、\(r\) 是到達,所以切向量寫成 \((v,0,1)\),和書的 \([\mathbf v^*,1,0]\) 是同一件事。)
  • \(r\ne t\) 的比例(ImageNet 256、B/4、80 epoch 的消融,1-NFE FID):0%(就是 flow matching)328.91;25% 61.06;50% 63.14;100% 67.32。預設 25%。
  • JVP 的切向量:正確的 \((v,0,1)\) 是 61.06;換成 \((v,0,0)\)、\((v,1,0)\)、\((v,1,1)\) 分別是 268.06、329.22、137.96。
  • 調適的損失權重:\(w=1/(\|\Delta\|_2^2+c)^p\)(\(\Delta\) 是誤差、\(c\) 例如 \(10^{-3}\),對 \(w\) 取 stopgrad);\(p\) = 0、0.5、1、1.5、2 的 FID 是 79.75、63.98、61.06、66.57、69.19,預設 \(p=1\)。
  • 時間抽樣:logit-normal,預設 \(\text{lognorm}(-0.4,1.0)\),抽兩個值後大的當出發時間。
  • 結果:ImageNet 256×256 從頭訓練,1-NFE FID 3.43,不需要預訓練、蒸餾或課程學習。

02Mean Flow 的取樣書 §11.5.2

訓練好 MF \(\mathbf h_{\bm\theta^\times}\) 之後,它自然地還原 flow map 的一個替身。對任何起點 \(\mathbf x_s\),從 \(s\) 到 \(t\) 的映射(近似)是

$$\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf x_s+(t-s)\,\mathbf h^*(\mathbf x_s,s,t)\approx\mathbf x_s+(t-s)\,\mathbf h_{\bm\theta^\times}(\mathbf x_s,s,t).$$

這讓一步和多步取樣都可行。例如抽 \(\mathbf x_T\sim p_{\text{prior}}\),一步生成乾淨樣本是

$$\mathbf x_0\leftarrow\mathbf x_T-T\,\mathbf h_{\bm\theta^\times}(\mathbf x_T,T,0).$$

(flow matching 時程下 \(T=1\),就是「雜訊減去平均速度」。)另外,也可以準備一組時間格點、依序套用這個映射做多步生成,就像 CTM 的逐步推進。因為 MF 學的是一般的 flow map,它也支援 CTM 的 γ 取樣(B30 第 11 節),用一個可控的超參數 \(\gamma\) 在取樣過程中注入隨機性。

Demo A從頭訓練 Mean Flow轉述者補充

一維資料(權重 0.6 / 0.4、中心 −1.2 / 1.3、標準差 0.25 / 0.35),flow matching 時程 \(x_s=(1-s)x_0+s\epsilon\)。網路 \(h_{\bm\theta}(x,s,t)\) 是 3→32→32→1 的 tanh MLP,輸入就是 \((x,s,t)\)。每個樣本:\((s,t)\) 從 logit-normal(−0.4, 1) 抽兩次、大的當 \(s\);以「\(s\ne t\) 的比例」決定要不要令 \(t=s\)(那時就是 flow matching)。目標用 MF 恆等式(stop-gradient),JVP 用前向模式自動微分。6,000 次更新、批次 64、Adam \(10^{-3}\)(最後 30% 乘 0.3),評估用參數的滑動平均(0.995);起點是 \(p_1=\mathcal N(0,1)\) 的 2,000 個分層分位數,一步生成 \(x_0=x_1-h(x_1,1,0)\)。

資料密度一步樣本

「oracle h*」那一項不用恆等式,目標是用 RK4 精確解 PF-ODE 算出的 \((\bm\Psi_{s\to t}(x_s)-x_s)/(t-s)\),作為「替代目標本身造成多少損失」的對照。瀏覽器實測(固定種子,同一個瀏覽器重跑結果一樣)。\(p=0\) 的各組和 Node 原型逐位相同;\(p=1\) 的權重 \(1/(|\Delta|^2+10^{-3})\) 在誤差很小時可以放大到上千倍,浮點末位的差別會被放大,所以和 Node 差在小數第 2 位(例如論文預設那一組 Node 是 0.234):

設定一步兩步對角線 16 步
一點速度、25%、(v,1,0)、p = 1(論文預設)0.2490.2670.199
一點速度、25%、p = 00.1710.1810.106
一點速度、100%、p = 10.1980.1950.150
一點速度、100%、p = 00.1180.1180.123
一點速度、0%(純 FM)、p = 10.4200.2870.183
一點速度、25%、(v,0,0)、p = 10.6690.2310.176
精確速度、25%、p = 10.2120.1660.095
oracle h*、25%、p = 00.1530.0850.085
  • 兩種失敗和論文一致。沒有 \(s\ne t\) 的配對(純 flow matching)時,\(h(x_1,1,0)\) 從來沒被訓練到,一步生成失敗(0.420)。JVP 漏掉 \(\partial_s h\) 那一項時,目標根本不是 MF 恆等式,一步更糟(0.669)。用另外兩個種子(7、13,Node)重跑,這兩組分別是 0.810、1.112 和 0.792、0.954,失敗很穩定。
  • 兩個論文預設在一維不是最好的。這個小例子裡,100% 的 \(s\ne t\) 比 25% 好,\(p=0\) 比 \(p=1\) 好。調適權重 \(1/(|\Delta|^2+c)\) 在一維幾乎把誤差正規化成正負號,和 B30 Demo B 的切向量正規化是同一個現象。論文的消融是 ImageNet 上的結果,這裡只說明「預設值不一定能搬到別的問題」。
  • 種子的影響不小。論文預設那一組,種子 1 在瀏覽器是 0.249,另外兩個種子(7、13,Node)是 0.274、0.426;「100%、p = 0」是 0.118、0.141、0.157。所以只有上面「失敗」的兩組差距遠大於種子的影響;其他排序要謹慎看。
  • 替代目標有代價,但不大。直接回歸 oracle \(h^*\) 是 0.153(兩步 0.085),一點速度加恆等式的最好設定是 0.118;兩者在同一個量級,種子變異內難分高下。
  • 對角線就是 flow matching 模型。只用 \(h(x,s,s)\) 當速度跑 16 步 Euler,也能生成(上表大多在 0.09–0.2)。

03CTM 和 MF 的關係書 §11.5.3

乍看之下 CTM 和 MF 似乎無關。其實兩者是同一個 oracle flow map \(\bm\Psi_{s\to t}\) 的不同參數化,它們對應的平方 oracle 回歸誤差只差一個隨時間變化的權重(Hu et al. 2025)。

參數化的關係

兩個方法在同一個一般框架下運作,只是用不同方式表示要學的函數。flow map 可以等價地寫成

$$\begin{aligned}\bm\Psi_{s\to t}(\mathbf x_s)&=\mathbf x_s+\int_s^t\mathbf v^*(\mathbf x_u,u)\,du\\&=\frac ts\,\mathbf x_s+\frac{s-t}{s}\underbrace{\Big[\mathbf x_s+\frac{s}{s-t}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du\Big]}_{\approx\ \mathbf g_{\bm\theta}}\\&=\mathbf x_s+(t-s)\underbrace{\Big[\frac{1}{t-s}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du\Big]}_{\approx\ \mathbf h_{\bm\theta}}.\end{aligned}$$

第一行是 flow map 的定義,第二行強調 CTM 透過 \(\mathbf g_{\bm\theta}\) 的參數化(B30 第 8 節),最後一行強調 MF 透過 \(\mathbf h_{\bm\theta}\) 的參數化。

訓練損失的關係

把 oracle flow map 用 CTM 參數化 \(\mathbf g_{\bm\theta}\approx\mathbf g^*:=\mathbf x_s+\frac{s}{s-t}\int_s^t\mathbf v^*\,du\) 和 MF 參數化 \(\mathbf h_{\bm\theta}\approx\mathbf h^*:=\frac{1}{t-s}\int_s^t\mathbf v^*\,du\) 重新解讀之後,可以證明兩者的訓練損失其實等價。考慮關係

$$\mathbf g_{\bm\theta}(\mathbf x_s,s,t):=\mathbf x_s-s\,\mathbf h_{\bm\theta}(\mathbf x_s,s,t),$$

並以 \(d(\mathbf x,\mathbf y):=\|\mathbf x-\mathbf y\|^2\) 為例。代進 B29 的一般目標,把 \(\mathbf G_{\bm\theta}\) 看成 CTM 的 flow map 參數化,得到

$$\begin{aligned}d\big(\mathbf G_{\bm\theta}(\mathbf x_s,s,t),\bm\Psi_{s\to t}(\mathbf x_s)\big)&=\Big(\frac{s-t}{s}\Big)^2\Big\|\mathbf g_{\bm\theta}(\mathbf x_s,s,t)-\Big(\mathbf x_s+\frac{s}{s-t}\int_s^t\mathbf v^*\,du\Big)\Big\|^2\\&=(s-t)^2\Big\|\mathbf h_{\bm\theta}(\mathbf x_s,s,t)-\frac{1}{t-s}\int_s^t\mathbf v^*\,du\Big\|^2.\end{aligned}$$
逐行展開

第一個等號。\(\mathbf G_{\bm\theta}=\frac ts\mathbf x_s+\frac{s-t}{s}\mathbf g_{\bm\theta}\),而 \(\bm\Psi_{s\to t}=\frac ts\mathbf x_s+\frac{s-t}{s}\mathbf g^*\)。相減時 \(\frac ts\mathbf x_s\) 抵消,剩 \(\frac{s-t}{s}(\mathbf g_{\bm\theta}-\mathbf g^*)\),平方範數提出 \((\frac{s-t}{s})^2\)。

第二個等號。代入 \(\mathbf g_{\bm\theta}=\mathbf x_s-s\mathbf h_{\bm\theta}\):

$$\mathbf g_{\bm\theta}-\mathbf g^*=-s\,\mathbf h_{\bm\theta}-\frac{s}{s-t}\int_s^t\mathbf v^*\,du=-s\Big(\mathbf h_{\bm\theta}-\frac{1}{t-s}\int_s^t\mathbf v^*\,du\Big)=-s\,(\mathbf h_{\bm\theta}-\mathbf h^*),$$

(用了 \(-\frac{1}{s-t}=\frac{1}{t-s}\)。)所以 \((\frac{s-t}{s})^2\cdot s^2\|\mathbf h_{\bm\theta}-\mathbf h^*\|^2=(s-t)^2\|\mathbf h_{\bm\theta}-\mathbf h^*\|^2\)。

(轉述者註:書的這段推導有一行原樣重複了兩次,是排版上的小疏失,不影響結果。)

因此

$$\frac{1}{s^2}\big\|\mathbf g_{\bm\theta}(\mathbf x_s,s,t)-\mathbf g^*(\mathbf x_s,s,t)\big\|^2=\big\|\mathbf h_{\bm\theta}(\mathbf x_s,s,t)-\mathbf h^*(\mathbf x_s,s,t)\big\|^2.$$

撇開學 flow map 的具體演算法不談,CTM 和 MF 的損失有相同的數學形式,只差一個權重函數。此外,兩者取 \(t=0\) 都還原 CM 的設定(\(\bm\Psi_{s\to0}\)),每個狀態直接送到乾淨資料。

實務上的輔助損失

CTM 用 B30 第 9 節的一致性損失,加上它自己定義的 diffusion model 損失一起訓練。MF 採用類似的策略:如第 1 節,\(s\to t\) 時 MF 損失化成標準的 flow matching 目標。實務上 MF 控制 \(s\ne t\) 和 \(s=t\) 兩種配對的比例,所以整體最佳化是 MF 目標和 flow matching 目標的混合。

兩種參數化都能從 diffusion model 的訓練(以固定的回歸目標學瞬時速度)平滑地過渡到 flow map 的學習(用 stop-gradient 的偽回歸目標)。

兩種參數化都能彈性推論

CTM 的 \(\mathbf G_{\bm\theta}(\mathbf x_s,s,t)\) 和 MF 的 \(\mathbf h_{\bm\theta}(\mathbf x_s,s,t)\) 都要近似底層的 flow map:

$$\mathbf G_{\bm\theta}(\mathbf x_s,s,t)\approx\bm\Psi_{s\to t},\qquad\mathbf x_s+(t-s)\,\mathbf h_{\bm\theta}(\mathbf x_s,s,t)\approx\bm\Psi_{s\to t}.$$

因為兩者都學任意兩個時間之間的明確映射,它們自然支援 CTM 的 γ 取樣,也和原本為 diffusion model 發展的推論技巧相容,例如 guidance(第 8 章)、精確 likelihood 計算(§4.3)、高階解法加速取樣(第 9 章)。這種相容性來自:在無窮小極限 \(t\to s\),它們的參數化還原瞬時的 diffusion 漂移:

$$\mathbf g^*(\mathbf x_s,s,s)=\mathbf x_s-s\,\mathbf v^*(\mathbf x_s,s),\qquad\mathbf h^*(\mathbf x_s,s,s)=\mathbf v^*(\mathbf x_s,s).$$

CM 家族這種特殊的 flow map \(\bm\Psi_{s\to0}\) 沒有這個性質。所以 CTM 和 MF 都可以看成有彈性、一般的 flow map 表述,把以 diffusion 為基礎的推論推廣到直接的時間到時間映射。

04積分形式與微分形式書 §11.5.3

CTM 和 MF 的關係,類似 diffusion model 不同參數化之間的關係(§6.3,B16):在 oracle 層級,它們編碼同一個底層的 flow map。在平方誤差回歸和上面的參數化關係下,它們的 oracle 回歸誤差只差一個已知的、隨時間變化的縮放。但它們的實際訓練目標仍然不同,因為用的替代目標和最佳化程序不同。

雖然 CTM 和 MF 有這樣的關係,它們在怎麼學目標上,概念和演算法都不同:

  • CTM 的目標是「積分」形式:直接作用在 flow map 上。積分形式的目標不能直接計算,所以 CTM 訓練時必須解 ODE(老師或自己誘導的老師)。
  • MF 的目標是「微分」形式:依賴 flow map 的有限差分。MF 用 MF 恆等式構造一個可計算的微分形式目標,不需要解 ODE。

這個關係類似 energy-based 和 score-based 方法之間的關係:前者學機率密度本身(積分形式),後者匹配密度的梯度(微分形式)。實務上,CTM 和 MF 可能因為損失權重、網路架構、最佳化動態等因素而表現不同,在某些條件下其中一個會比另一個好。

這個觀點也提示:CTM 和 MF 不是唯一可行的表述。其他 flow map 的參數化也可能做到有效率又穩定的訓練,帶來新的獨立生成模型。探索這些替代方案,可能會進一步豐富 diffusion model 和它們的 flow map 延伸,推進少步生成的邊界。

energy 與 score 的類比,具體在說什麼(轉述者補充)

B05 的 EBM 學 \(E_{\bm\theta}(\mathbf x)\),密度 \(\propto e^{-E}\) 要靠一個積分(配分函數)才確定;score-based 方法只學 \(\nabla\log p\),是局部的導數,訓練目標可以直接算。這裡的對應是:CTM 的 \(\mathbf G\) 是「位移的積分」,要知道目標就得把速度積起來;MF 的恆等式只牽涉到起點的瞬時速度和 \(\mathbf h\) 的局部導數。代價是 MF 需要網路對輸入可微、要算 JVP,而且誤差只靠局部的條件傳播(像 B29 Demo C 裡「資訊一格一格往上傳」)。

05第 11 章結語:同一個 flow map書 §11.6

這最後一章讓我們的探索繞了一圈:從慢的反覆 diffusion 取樣器,到(從頭學的)快速少步生成器。本章各方法背後的共同物件,是 B29 介紹的 oracle flow map:

$$\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf x_s+\int_s^t\mathbf v^*(\mathbf x_\tau,\tau)\,d\tau.$$

學這個映射,就是用一次或少數幾次學到的跳躍,取代許多小的數值更新。

這時值得從個別演算法退一步看。Knowledge Distillation(B28)、Progressive Distillation(B28)、CM(B29)、CTM(B30)、MF(本頁)是透過不同的訓練構造介紹的,但它們都明確或隱含地利用同一個 ODE 解映射的結構。

flow map 本身是微分方程與動力系統裡的古典物件,在連續介質與流體力學裡有密切相關的「以粒子為主」和「以場為主」的描述(B09 的歷史說明)。這裡用同一個 ODE flow 的三種古典描述:半群、Lagrangian、Eulerian,作為整理上面這些現代學習方法的透鏡。

書的註腳:在現代生成模型裡,Boffi et al. (2024) 把 PD、CM、CTM、MF 裡已經出現的結構想法整合起來,用共同的語言描述 diffusion PF-ODE flow map 的學習;主要的成分大多來自這些既有的研究線。本節的呈現和圖也參考了 Dieleman (2026) 的說明(部落格〈Learning the integral of a diffusion model〉)。

半群觀點:把旅程切段

如 B29 第 6 節,有限步的恆等式是

$$\bm\Psi_{u\to t}\big(\bm\Psi_{s\to u}(\mathbf x_s)\big)=\bm\Psi_{s\to t}(\mathbf x_s).$$

直覺和沿一條固定路線旅行一樣:從 \(s\) 到 \(u\)、再從 \(u\) 到 \(t\),和直接從 \(s\) 到 \(t\) 落在同一點。在這個觀點下:

  • KD 學完整的轉移 \(\bm\Psi_{T\to0}\);
  • PD 把相鄰的兩個老師步壓成一個學生步;
  • CM 學特殊的「任意時間到乾淨資料」映射 \(\bm\Psi_{s\to0}\);
  • CTM 把同樣的複合原則延伸到一般的映射 \(\bm\Psi_{s\to t}\)。

06Lagrangian 與 Eulerian 觀點書 §11.6

Lagrangian 觀點:移動終點

固定起點的狀態與時間 \((\mathbf x_s,s)\),改變終點時間 \(t\)。終點就沿同一條軌跡移動:

$$\partial_t\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf v^*\big(\bm\Psi_{s\to t}(\mathbf x_s),t\big).$$

「Lagrangian」這個名字來自古典的粒子觀點:終點時間改變時,追蹤沿軌跡移動的終點。在無窮小尺度下,終點以那一點的局部 ODE 速度移動。

書中的圖:Lagrangian 一致性,終點時間 t 時的 flow map 書中的圖:Lagrangian 一致性,把終點時間移到 t′
書中的圖:flow map 的 Lagrangian 一致性。左:終點時間 \(t\);右:終點時間移到 \(t'\)。起點 \((\mathbf x_s,s)\) 固定,flow map 的輸出沿同一條 PF-ODE 軌跡移動,它的無窮小變化等於 ODE 速度:\(\partial_t\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf v^*(\bm\Psi_{s\to t}(\mathbf x_s),t)\)(藍色箭頭)。小圖是各時間點的影像,越往右越接近雜訊。(圖:改編自 Dieleman 2026)

Eulerian 觀點:移動起點

固定終點時間 \(t\),讓起點沿同一條軌跡滑動。時間 \(t\) 的終點保持不動:

$$\frac{d}{ds}\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf 0.$$

因為 \(\frac{d}{ds}\mathbf x_s=\mathbf v^*(\mathbf x_s,s)\),連鎖律給出

$$\partial_s\bm\Psi_{s\to t}(\mathbf x_s)+\big(\partial_{\mathbf x}\bm\Psi_{s\to t}\big)(\mathbf x_s)\,\mathbf v^*(\mathbf x_s,s)=\mathbf 0.$$

「Eulerian」這個詞借用古典的以場為主的觀點:這裡終點時間 \(t\) 固定,起點的狀態與時間 \((\mathbf x_s,s)\) 沿同一條 ODE 軌跡移動,所以時間 \(t\) 的終點不變。對 CM,終點時間固定在 \(t=0\),終點就是乾淨樣本:

$$\mathbf f^*(\mathbf x_s,s)=\bm\Psi_{s\to0}(\mathbf x_s).$$

所以 B30 第 2 節的連續時間條件,正是 B29、B30 研究的這個特殊 flow map 的「起點時間一致性」條件。

書中的圖:Eulerian 一致性,起點時間 s 時的 flow map 書中的圖:Eulerian 一致性,把起點時間移到 s′,終點不變
書中的圖:flow map 的 Eulerian 一致性。左:起點時間 \(s\);右:起點時間移到 \(s'\)。終點時間 \(t\) 固定;因為兩個起點在同一條 PF-ODE 軌跡上,終點不變:\(\bm\Psi_{s\to t}(\mathbf x_s)=\bm\Psi_{s'\to t}(\mathbf x_{s'})\)。無窮小地,這給出 \(\frac{d}{ds}\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf 0\),也就是 \(\partial_s\bm\Psi_{s\to t}(\mathbf x_s)+(\partial_{\mathbf x}\bm\Psi_{s\to t})(\mathbf x_s)\mathbf v^*(\mathbf x_s,s)=\mathbf 0\)。(圖:改編自 Dieleman 2026)

用 Eulerian 觀點回顧 CTM 與 MF

這個觀點也總結了第 3 節 CTM 和 MF 的關係。兩者近似同一個路徑積分 \(\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf x_s+\int_s^t\mathbf v^*(\mathbf x_\tau,\tau)\,d\tau\),但提供不同的可訓練替代量。CTM 用位移式的參數化表示終點,MF 用平均漂移 \(\mathbf h^*(\mathbf x_s,s,t)=\frac{1}{t-s}\int_s^t\mathbf v^*\,d\tau\) 表示同一個終點。把

$$\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf x_s+(t-s)\,\mathbf h^*(\mathbf x_s,s,t)$$

代進 Eulerian 的起點時間恆等式,得到

$$\mathbf h^*(\mathbf x_s,s,t)=\mathbf v^*(\mathbf x_s,s)-(s-t)\Big[\partial_s\mathbf h^*(\mathbf x_s,s,t)+(\partial_{\mathbf x}\mathbf h^*)(\mathbf x_s,s,t)\,\mathbf v^*(\mathbf x_s,s)\Big].$$

這就是基本的 Mean Flow 恆等式:長區間上的平均漂移,等於起點的瞬時漂移,再修正「起點沿同一條軌跡滑動時,平均漂移怎麼變」。

代進去的那一步

\(\frac{d}{ds}\big[\mathbf x_s+(t-s)\mathbf h^*\big]=\mathbf v^*-\mathbf h^*+(t-s)\frac{d\mathbf h^*}{ds}=\mathbf 0\)(第一項來自 \(\frac{d\mathbf x_s}{ds}=\mathbf v^*\),第二項來自 \(\frac{d}{ds}(t-s)=-1\))。移項得 \(\mathbf h^*=\mathbf v^*+(t-s)\frac{d\mathbf h^*}{ds}\),再展開全導數。結果和第 1 節「對積分式微分」完全一樣,只是出發點換成 Eulerian 恆等式。

07三種觀點的等價書 §11.6

對精確的 ODE flow,半群、Lagrangian、Eulerian 三個恆等式表達的是同一個簡單原則:在標準的存在性、唯一性和光滑性假設下,ODE 通過每一個「狀態–時間」點只決定一條軌跡。也就是說,一旦固定某個時間的狀態,只有一條路可走。半群觀點把這條路切成相連的幾段;Lagrangian 觀點在終點時間改變時追蹤終點;Eulerian 觀點讓起點沿同一條路移動、保持終點不變。所以三個恆等式是同一個 ODE flow 的等價描述(Arnold 1988;Chorin & Marsden 1993)。把半群恆等式看成有限區間的敘述,Lagrangian 和 Eulerian 恆等式看成它的兩種無窮小形式(分別在終點附近或起點附近把一小段區間縮小),它們的關聯就特別清楚。

半群恆等式是這個原則的有限區間形式:

$$\bm\Psi_{u\to t}\big(\bm\Psi_{s\to u}(\mathbf x_s)\big)=\bm\Psi_{s\to t}(\mathbf x_s),\qquad\bm\Psi_{s\to s}=\mathbf I.$$

兩種微分觀點,就是把其中一段區間縮小。

終點時間的極限:Lagrangian 恆等式

固定起點 \((\mathbf x_s,s)\),縮小旅程的最後一段。對 \(\Delta t>0\),

$$\bm\Psi_{t\to t-\Delta t}\big(\bm\Psi_{s\to t}(\mathbf x_s)\big)=\bm\Psi_{s\to t-\Delta t}(\mathbf x_s).$$

令 \(\mathbf x_t:=\bm\Psi_{s\to t}(\mathbf x_s)\)。短程 flow 的一階展開是

$$\bm\Psi_{t\to t-\Delta t}(\mathbf x_t)=\mathbf x_t-\Delta t\,\mathbf v^*(\mathbf x_t,t)+\mathcal O\big((\Delta t)^2\big).$$

因此

$$\frac{\bm\Psi_{s\to t-\Delta t}(\mathbf x_s)-\bm\Psi_{s\to t}(\mathbf x_s)}{-\Delta t}=\mathbf v^*(\mathbf x_t,t)+\mathcal O(\Delta t).$$

令 \(\Delta t\to0\),得到 Lagrangian 恆等式 \(\partial_t\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf v^*(\bm\Psi_{s\to t}(\mathbf x_s),t)\)。起點固定、終點時間改變時,終點以那一點的 ODE 速度移動。

起點時間的極限:Eulerian 恆等式

固定終點時間 \(t\),把起點沿同一條軌跡往回移一小段 \(\Delta s>0\):

$$\mathbf x_{s-\Delta s}:=\bm\Psi_{s\to s-\Delta s}(\mathbf x_s)=\mathbf x_s-\Delta s\,\mathbf v^*(\mathbf x_s,s)+\mathcal O\big((\Delta s)^2\big).$$

半群恆等式給出 \(\bm\Psi_{s-\Delta s\to t}(\mathbf x_{s-\Delta s})=\bm\Psi_{s\to t}(\mathbf x_s)\)。把左邊對起點的狀態和時間都展開:

$$\bm\Psi_{s-\Delta s\to t}(\mathbf x_{s-\Delta s})=\bm\Psi_{s\to t}(\mathbf x_s)-\Delta s\,\big(\partial_{\mathbf x}\bm\Psi_{s\to t}\big)(\mathbf x_s)\,\mathbf v^*(\mathbf x_s,s)-\Delta s\,\partial_s\bm\Psi_{s\to t}(\mathbf x_s)+\mathcal O\big((\Delta s)^2\big).$$

和半群恆等式比較、除以 \(-\Delta s\):

$$\partial_s\bm\Psi_{s\to t}(\mathbf x_s)+\big(\partial_{\mathbf x}\bm\Psi_{s\to t}\big)(\mathbf x_s)\,\mathbf v^*(\mathbf x_s,s)=\mathcal O(\Delta s).$$

令 \(\Delta s\to0\),得到 Eulerian 恆等式。終點時間固定、起點沿同一條軌跡移動,所以終點不變。

從任一個微分恆等式還原 flow map

反過來,任一個微分恆等式加上邊界條件 \(\bm\Psi_{s\to s}=\mathbf I\),都還原同一個 flow map:

  • Lagrangian 恆等式從 \(\bm\Psi_{s\to s}(\mathbf x_s)=\mathbf x_s\) 出發,把終點往前推(它本身就是一條以終點為未知數的 ODE)。
  • Eulerian 恆等式說 \(\bm\Psi_{\tau\to t}(\mathbf x_\tau)\) 沿特徵線 \(\mathbf x_\tau=\bm\Psi_{s\to\tau}(\mathbf x_s)\) 是常數,所以 \(\bm\Psi_{s\to t}(\mathbf x_s)=\bm\Psi_{t\to t}(\mathbf x_t)=\mathbf x_t\)。

雖然這些觀點在 oracle 層級等價,一旦引入近似,它們會導出不同的實際演算法:必須選擇要強制哪一個恆等式、stop-gradient 目標放在哪裡、怎麼抽時間對、怎麼參數化映射。

本章各方法各自強制的是哪個恆等式(轉述者整理)
方法學的映射強制的恆等式目標從哪來
KD(B28)\(\bm\Psi_{T\to0}\)直接回歸(積分形式)老師解完整個 ODE
PD(B28)每輪的 \(\bm\Psi_{t_k\to t_{k+2}}\)半群(相鄰兩步合一)老師的兩步
離散 CM(B29)\(\bm\Psi_{s\to0}\)半群(\(u=s-\Delta s\)、\(t=0\))老師一步 DDIM 或一點估計
連續 CM/sCM(B30)\(\bm\Psi_{s\to0}\)Eulerian(\(t=0\))切向量(JVP)
CTM(B30)\(\bm\Psi_{s\to t}\)半群(\(u\in[t,s)\))老師或自己誘導的 ODE 解法
MF(本頁)\(\bm\Psi_{s\to t}\)(經由 \(\mathbf h\))EulerianMF 恆等式(JVP)

書在本章正文沒有介紹以 Lagrangian 恆等式訓練的方法;這張表只整理本章出現過的那些。

Demo B一條軌跡上的三個恆等式轉述者補充

同一個一維資料、flow matching 時程,PF-ODE 速度 \(v^*(x,s)=(x-\mathbb E[x_0\mid x_s])/s\) 精確計算,flow map 用 400 步 RK4 解。橫軸是 \(s\)(左邊 0 是資料,右邊 1 是雜訊),灰線是幾條精確軌跡,黑線是選定的那條(用它在 \(s=10^{-4}\) 的位置來選)。在 \(x_s\)(黑點)畫出瞬時速度(藍色短線,斜率 \(v^*\))和平均速度(橙色虛線,從 \(x_s\) 連到 \(\bm\Psi_{s\to t}(x_s)\) 的弦,斜率 \(h^*\))。讀數用中央差分(步長 \(10^{-3}\))檢查三個恆等式。

選定的軌跡瞬時速度 v*平均速度 h*(弦)

讀數(瀏覽器實測,和 Node 原型逐位相同):

  • 瞬時速度和平均速度可以差很多。預設(軌跡 1、\(s=0.8\)、\(t=0.2\)):\(v^*=0.4752\),\(h^*=-0.6627\),連正負號都不同。軌跡在這一段是彎的:在 \(s=0.8\) 附近往 \(s\) 大的方向是上升的,但從 0.8 走回 0.2,整體是往上走 0.397。所以一步用瞬時速度(Euler)會走錯方向,MF 要學的是弦的斜率。
  • MF 恆等式成立。\(v^*-(s-t)\frac{dh^*}{ds}=-0.6627\),和 \(h^*\) 差 \(1.5\times10^{-6}\)(差分誤差的大小)。其他兩組:(軌跡 −1.2、\(s=0.5\)、\(t=0\))差 \(2.8\times10^{-6}\);(軌跡 0.9、\(s=1\)、\(t=0\))差 \(6.1\times10^{-7}\)。
  • Lagrangian 與 Eulerian。預設下 \(\partial\Psi/\partial t=-1.5540\),和終點的 \(v^*(\Psi,t)=-1.5540\) 相同;起點沿軌跡滑動時 \(d\Psi/ds=1.1\times10^{-10}\),也就是終點不動。
  • \(t=0\) 時就是 CM。把 \(t\) 拉到 0,\(\Psi\) 回到選定的端點(例如 1.0000),CTM 的 \(g^*=x_s-s\,h^*\) 也幾乎等於它(差在小數第 4 位,因為數值上終點取 \(t=10^{-4}\)):在 \(t=0\),\(\mathbf G(\mathbf x_s,s,0)=\mathbf g\),三種參數化都在描述 consistency function。

08結語書 §11.6

本章探索的核心轉變,是從學一個局部的速度場,轉向學它的 ODE 解映射的有限片段。傳統的 diffusion 取樣器反覆計算局部場、做數值積分;flow map 模型則在訓練時把一部分積分「攤銷」掉,讓一個長區間可以用一次或少數幾次網路計算走完。

這開出一條通往快速生成的直接路線,但把困難從取樣搬到了學習。模型必須近似一個更全域的物件,它的成敗取決於映射的參數化、可計算目標的構造、時間對的抽樣和權重,以及最佳化的穩定。

這樣看來,flow map 學習不是一個新的動力學概念,而是建立在古典概念上的現代學習策略。它保留了 diffusion model 以軌跡為基礎的根本,同時擴大了高效生成的設計空間。目標不再只是在推論時更有效率地積分生成 ODE,而是直接學到它的解映射中有用的有限時間轉移。

轉述者註:B29、B30 和這一頁的 demo 一路量到這個「困難搬家」:CT 的有限格點偏差、大 \(N\) 收斂慢(B29)、sCM 的切向量爆炸(B30)、MF 漏掉 \(\partial_s\) 或缺少 \(s\ne t\) 配對就失敗(本頁)。取樣端都只要一兩次網路計算,麻煩全在訓練端。

與 CS236 的對照

本頁CS236 複習頁
flow matching、PF-ODE、少步取樣第 17 講 第 2–3 節
energy-based model 與 score 的對比(積分 vs 微分)第 11 講、第 13 講
連續方程、粒子觀點與場觀點補充課 C(連續方程)
ODE 解的唯一性、連鎖律、Euler 法補充課 B(微分方程入門)

常見誤解

誤解:「Mean Flow 的 \(\mathbf h\) 就是速度」。只有在對角線 \(t=s\) 才是瞬時速度;一般的 \(\mathbf h(\mathbf x_s,s,t)\) 是區間上的平均,可以和起點速度差很多,連符號都可能相反(Demo B)。
誤解:「JVP 的 \(s\) 分量可以不管」。MF 恆等式需要沿軌跡的全導數 \((\partial_{\mathbf x}\mathbf h)\mathbf v+\partial_s\mathbf h\);少了 \(\partial_s\mathbf h\),目標就不是 MF 恆等式,訓練會失敗(論文消融、Demo A)。
誤解:「只要 \(s\ne t\) 的配對就好,\(s=t\) 是多餘的」。\(s=t\) 的配對就是 flow matching,它用固定的回歸目標把對角線學好,而 MF 恆等式的目標需要對角線(瞬時速度);反過來,完全沒有 \(s\ne t\) 時,一步生成那個 \(\mathbf h(\cdot,1,0)\) 根本沒被訓練到。比例要調(第 3 節、Demo A)。
誤解:「CTM 和 MF 的 oracle 誤差只差權重,所以兩者訓練起來一樣」。oracle 層級等價,但實際目標一個是積分形式(要解 ODE)、一個是微分形式(MF 恆等式),替代目標和最佳化都不同(第 4 節)。
誤解:「半群、Lagrangian、Eulerian 是三種不同的動態」。它們描述同一個 ODE flow;Lagrangian 和 Eulerian 只是半群恆等式在終點或起點附近的無窮小形式(第 7 節)。差別只在近似之後各自導出的演算法。

自我測驗

1. 寫出 MF 的平均速度 \(\mathbf h^*\),並說明 \(s\to t\) 時 MF 損失變成什麼。
\(\mathbf h^*(\mathbf x_s,s,t)=\frac{1}{t-s}\int_s^t\mathbf v^*(\mathbf x_u,u)\,du\)。\(s\to t\) 時 \(\mathbf h^*\to\mathbf v^*(\mathbf x_t,t)\),損失變成 flow matching 損失。
2. 推導 MF 恆等式。
對 \((t-s)\mathbf h^*=\int_s^t\mathbf v^*\,du\) 沿軌跡對 \(s\) 微分:左邊 \(-\mathbf h^*+(t-s)\frac{d\mathbf h^*}{ds}\),右邊 \(-\mathbf v^*(\mathbf x_s,s)\)。所以 \(\mathbf h^*=\mathbf v^*-(s-t)[(\partial_{\mathbf x}\mathbf h^*)\mathbf v^*+\partial_s\mathbf h^*]\)。
3. MF 的 JVP 切向量是什麼?為什麼 \(t\) 的分量是 0?
\([\mathbf v^*,1,0]\):沿軌跡移動起點(狀態以 \(\mathbf v^*\) 變、\(s\) 以速率 1 變),終點時間 \(t\) 固定,所以是 0。
4. 證明 \(\frac{1}{s^2}\|\mathbf g_{\bm\theta}-\mathbf g^*\|^2=\|\mathbf h_{\bm\theta}-\mathbf h^*\|^2\)。
用 \(\mathbf g=\mathbf x_s-s\mathbf h\)(對 \(\bm\theta\) 版本和 oracle 版本都成立),\(\mathbf g_{\bm\theta}-\mathbf g^*=-s(\mathbf h_{\bm\theta}-\mathbf h^*)\),兩邊取平方範數再除以 \(s^2\)。
5. MF 一步生成怎麼做?
\(\mathbf x_0\leftarrow\mathbf x_T-T\,\mathbf h_{\bm\theta^\times}(\mathbf x_T,T,0)\);flow matching 時程下 \(T=1\):雜訊減去從 1 到 0 的平均速度。
6. 為什麼說 CTM 的目標是積分形式、MF 是微分形式?這和 EBM/score 有什麼類比?
CTM 直接回歸 flow map(速度的積分),目標要解 ODE 才能得到;MF 用恆等式,只需要起點的瞬時速度和 \(\mathbf h\) 的局部導數。類似 EBM 學密度本身(要積分歸一化)、score 方法只匹配密度的梯度。
7. 寫出 Lagrangian 和 Eulerian 恆等式,並說明它們怎麼從半群恆等式得到。
Lagrangian:\(\partial_t\bm\Psi_{s\to t}(\mathbf x_s)=\mathbf v^*(\bm\Psi_{s\to t}(\mathbf x_s),t)\),在半群恆等式裡把最後一段 \(t\to t-\Delta t\) 縮小。Eulerian:\(\partial_s\bm\Psi_{s\to t}+(\partial_{\mathbf x}\bm\Psi_{s\to t})\mathbf v^*=\mathbf 0\),把第一段 \(s\to s-\Delta s\) 縮小。
8. 連續時間 CM 和 MF 各對應哪個觀點?
都是 Eulerian:連續時間 CM 是 \(t=0\) 的 Eulerian 條件 \(\frac{d}{ds}\mathbf f^*=\mathbf 0\);MF 恆等式是把 \(\bm\Psi=\mathbf x_s+(t-s)\mathbf h^*\) 代進 Eulerian 恆等式。