搜尋課程與筆記

搜尋筆記

輸入主題、關鍵字或單元編號,例如 Flow Matching、U4。

    按 Esc 關閉 · ⌘ / Ctrl K 開啟搜尋

    U6.0 7 分鐘閱讀 2026年10月

    U6.0 能不能沿同一條路,直接跳到指定的中途?

    本篇重用2 篇

    只會報總站,還不會報中途的位置

    U5.5 已檢查 CM 的多步程序:先回資料端,再加新 noise,另選一條 trajectory 出發。它在精確模型下可以保留正確 marginal,卻沒有提供「沿目前這條路停在中途」的直接回答。

    想像導航除了目的地,也能回答「沿現在這條路再走到指定時間,會在哪裡」。我們要多給模型的資訊不是更多 noise,而是目的時間。如此才有可能由同一個起點,選擇一步到底或在中途停留。

    先把現在、目的地與方向固定下來

    本單元回到 U2 的生成時間:t=0t=0 是噪聲、t=1t=1 是資料。令 X0∼p0X_0\sim p_0、X1∼p1X_1\sim p_1,reference process 是 It=(1−t)X0+tX1I_t=(1-t)X_0+tX_1,marginal velocity 為

    vt(x)=E[X1−X0∣It=x].v_t(x)=\mathbb E[X_1-X_0\mid I_t=x].

    X1−X0X_1-X_0 是可由端點配對算出的 reference velocity;真正的 ODE trajectory 滿足 x˙t=vt(xt)\dot x_t=v_t(x_t)。除非另外說明,下面的 xtx_t 都指這條 ODE 上的位置。這與 U5 的 00 為資料方向相反;不是把 U5 的 VE noise 標準差直接代成這裡的時間。

    對初始位置 xx 與起始時間 tt,定義

    ψt→s(x)=x+∫tsvτ(xτ) dτ,xt=x.\psi_{t\to s}(x)=x+\int_t^s v_\tau(x_\tau)\,\mathrm d\tau, \qquad x_t=x.

    它回傳同一條 ODE trajectory 在 ss 的位置,稱為 flow map。生成方向是 t≤st\le s,反向也可在 ODE 存在且唯一的範圍定義。U5 的 consistency function 是把目的時間固定在資料端;換成本單元方向,便是 ψt→1\psi_{t\to1}。

    中途停一下,為什麼應該不影響結果?

    給定同一個起點,先沿 ODE 到中途 uu,再從那個位置接著走到 ss。ODE 解唯一,就不能在接續時換成另一條路。因此

    ψt→s(x)=ψu→s(ψt→u(x)),t≤u≤s.\psi_{t\to s}(x) =\psi_{u\to s}\big(\psi_{t\to u}(x)\big), \qquad t\le u\le s.

    這叫合成或 semigroup property。另有恆等條件 ψt→t(x)=x\psi_{t\to t}(x)=x:不經過時間就不移動。這兩條都很自然,但還沒有指定「我們要走哪一條 ODE」。

    課堂提問Q1

    如果一個網路對所有時間都回傳輸入 G(x,t,s)=xG(x,t,s)=x,它滿足恆等與合成。為什麼仍不一定是我們要的 flow map?

    先想一想,再展開看整理後的答案

    因為它對應零速度的 ODE。若資料與噪聲不同,原地不動通常不會完成 transport。我們還需要局部速度相容:

    ∂sψt→s(x)∣s=t=vt(x).\left.\partial_s\psi_{t\to s}(x)\right|_{s=t}=v_t(x).

    這條條件把資料所決定的動力學放進來。反過來,只有合成也不能推出恆等:令所有 maps 都是同一個 projection PP,只要 P2=PP^2=P 就有合成,卻可能 P(x)≠xP(x)\ne x。每個條件的角色必須分開檢查。

    沒有中途真值,能不能把一段交給 teacher?

    Kim 等人的 Consistency Trajectory Models(CTM) [1] 將目的時間也交給網路,訓練 Gθ(xt,t→s)≈ψt→s(xt)G_\theta(x_t,t\to s)\approx\psi_{t\to s}(x_t)。最直接的監督是讓 teacher 解完整 t→st\to s,但遠距離 target 仍然很貴。

    合成規則提供另一個構造。選 u∈(t,s]u\in(t,s],先用固定 teacher 的 solver 計算 x~u\tilde x_u,再請 target map 從那裡跳到 ss:

    x~u=Solver⁡t→u(xt;ϕ),y−=Gθ−(x~u,u→s),L=E[∥Gθ(xt,t→s)−sg⁡(y−)∥2].\begin{aligned} \tilde x_u&=\operatorname{Solver}_{t\to u}(x_t;\phi),\\ y^-&=G_{\theta^-}(\tilde x_u,u\to s),\\ \mathcal L&=\mathbb E\left[ \|G_\theta(x_t,t\to s)-\operatorname{sg}(y^-)\|^2\right]. \end{aligned}

    期望平均 reference 配對造出的輸入與時間三元組 (t,u,s)(t,u,s)。左邊直接跳,右邊先走一段再跳;這是 soft consistency 的核心。uu 靠近 tt 時 teacher 段短;u=su=s 時 target 的最後一跳是恆等,就回到完整 teacher 落點監督。

    原始 CTM 還會將兩個中途結果送到乾淨端,在 feature discrepancy 下比較,並加入 diffusion 與可選的 adversarial loss。這裡的平方距離先呈現合成機制,不能將它當成完整重現原論文的 loss。

    模型怎麼同時保留局部速度?

    一個便於理解的恆等參數化是 Gθ(x,t→s)=x+(s−t)uθ(x,s,t)G_\theta(x,t\to s)=x+(s-t)u_\theta(x,s,t)。在對角線 s=ts=t,map 自動等於輸入,而平均速度的連續極限應等於 vt(x)v_t(x)。所以我們可用資料給出的條件速度,在對角線上作 flow-matching 監督。

    原文對照CTM 在 VE 座標的 residual 為什麼像 denoiser?

    CTM 常以 U5 的 VE 座標說明。這個框暫用 τ\tau 為起始 noise level、ρ≤τ\rho\le\tau 為目的 noise level,原文形式是

    Gθ(x,τ→ρ)=ρτx+(1−ρτ)gθ(x,τ,ρ).G_\theta(x,\tau\to\rho) =\frac{\rho}{\tau}x+ \left(1-\frac{\rho}{\tau}\right)g_\theta(x,\tau,\rho).

    由精確 map 的短步展開,g(x,τ,τ)=x−τvτ(x)g(x,\tau,\tau)=x-\tau v_\tau(x);在 VE PF-ODE 中,右邊正是 denoiser E[x0∣xτ=x]\mathbb E[x_0\mid x_\tau=x]。因此這個對角線可直接用資料去噪 loss 監督。不要把有限距離的 g(x,τ,ρ)g(x,\tau,\rho) 也全部稱為 posterior mean。

    對角線若已有可用的局部 velocity,就能用模型自己的停止梯度版本短暫解 ODE,取代外部 teacher 產生 x~u\tilde x_u。這就是書 §11.4 的 self-induced teacher。它不是只要求模型和自己相等:資料的局部監督用來選定動力學,self-consistency 才把它延伸到長跳。對角線與短段 solver 不準時,監督也會跟著偏。

    互動 demo:解析 Gaussian 檢查。 調整起始時間、區間與位置,直接計算本篇的關係;偏差控制是明示的 surrogate,沒有使用預設的品質曲線。

    消化一下

    想一想

    Semigroup property 保證精確 flow 的哪件事?

    想一想

    CTM target 在 u=su=s 時退成什麼?

    想一想

    Self-induced teacher 為何還需要資料的局部監督?

    參考文獻

    主要理論參考:The Principles of Diffusion Models,§11.4 的參數化、soft consistency、自誘導動力學與 auxiliary diffusion loss;合成規則見 §11.2。正文的符號沿用本課程;方法實作細節再對照下列原始論文。

    1. Kim et al., Consistency Trajectory Models (ICLR 2024)。
    2. Boffi, Albergo & Vanden-Eijnden, Flow Map Matching (2024)。
    3. Song, Dhariwal, Chen & Sutskever, Consistency Models (ICML 2023)。