Pushforward Measure and Probability Transport
Repository (private)
在先前的文章中, 我們探討了 VAE decoder 所誘導的 pullback Riemannian metric,說明其在生成模型中如何建立語意幾何結構。 本文則聚焦於完全相反的生成式理論,進一步分析 Flow Models(特別是 Continuous Normalizing Flow (CNF))實現的 pushforward 測度傳輸, 然後比較兩者在理論與實務上的差異與互補性。
為了簡化討論且避免迷失在技術細節中,本文中所提到的 Flow Models 主要使用 Continuous Normalizing Flow (CNF) 來作為研究對象。
0. 為何關心測度與度量的區別?
生成模型常見兩條路徑:
- 使用 VAE 可變分 encoder–decoder 結構將資料空間的度量拉回(pullback)到低維 latent space 上以建立語意度量(semantic metric)。
- 使用 Flow Model (例如 Normalizing Flow, Flow Matching, Score-based Models 或是 Diffusion Model)以(可逆)變換直接把資料測度推(pushforward)到先驗。
許多實務工程會混淆「測度守恆(measure-preserving)」與「語意幾何(semantic metric)」, 導致錯誤期待:認為 flow 的 latent space 天然有語意鄰近性(可變分)。 事實上, pullback metric 與 pushforward measure 在數學上雖然是對偶操作,但在生成模型中扮演截然不同的角色。 本文將從數學定義、概念層次與實務影響三個面向來比較 pullback metric 與 pushforward measure 之間的差異。
1. 基本定義與數學背景
Pullback Riemannian Metric
給定一個映射 \(f: \mathcal{Z} \to \mathcal{X}\)(例如 VAE 中的 decoder),若 \(\mathcal{X}\) 配有歐式度量, 則在每一點 \(z \in \mathcal{Z}\) 上,拉回度量定義為:
其中 \(J_f(z)\) 為 \(f\) 在 \(z\) 的 Jacobian(形狀為 \(\dim(\mathcal{X})\times\dim(\mathcal{Z})\))。 在此 metric 下,切向量 \(u \in T_z\mathcal{Z}\) 的長度為 \(\|u\|_{G(z)}=\|J_f(z)u\|_2\)。 Pullback 直接使用 data space 對語意改變的敏感度來定義 latent 的局部幾何, 因此 geodesic 或最短路徑會隨語意變化速率自動調整,產生在輸出空間語意平滑的插值。
Pushforward Measure
給定可逆光滑映射 \(f: \mathcal{X} \to \mathcal{Z}\)(flow model 將資料空間推到潛空間), 推前測度 \(f_\# p_X\) 在 \(\mathcal{Z}\) 上定義為:
CNF 使用時間參數向量場 \(v_\theta(x,t)\) 透過 ODE 產生 \(f\),同時由瞬時變換公式追蹤密度:
在此處,我們關心的是如何將資料空間的測度 \(p_X\) 推送到潛空間 \(\mathcal{Z}\) 上,而沒有要在 \(\mathcal{Z}\) 上給定任何語意度量。
2. Flow Models 中的測度守恆
在繼續討論前,我們先沿著 CNF 的發展脈絡, 說明它的問題設定與測度守恆機制。
從物理動態系統開始
面對一個動態系統,在物理或數學上,我們通常使用一組微分方程來描述系統的演化:
這裡 \(v(x,t)\) 是時間與狀態的函數我們把它稱作向量場(vector field),描述系統在每個時間點的變化速率。 故,向量場定義了系統的動態行為; 而在給定一初始狀態 \(x_0\) 後,系統的狀態 \(x(t)\) 隨時間演化,形成一條軌跡(trajectory)。
Neural ODE
Neural ODE 則使用一個神經網路 \(v_\theta(x,t)\) 來將上述的向量場參數化,並透過數值積分求解 ODE:
這使得我們能夠學習複雜的動態系統,並且能夠在不同時間點評估系統的狀態 \(x(t)\):
Flow Model
在動態系統中,給定一個初始狀態 \(x_0\) 以及向量場 \(v(x,t)\) 的規範, 我們可以得到一個特定的動態系統隨時間演化的軌跡 \(x(t)\)。 而給定一堆初始狀態通過相同的向量場 \(v(x,t)\) 演化所成的軌跡集合, 我們則稱之為 flow。
在 Flow Model 中,我們使用神經網路 \(v_\theta(x,t)\) 來參數化向量場, 並期待透過學習 \(v_\theta\) 來使得 flow 將資料分佈 \(p_X\) 推送到一個我們想要的先驗分佈 \(p_Z\)(例如標準常態分佈)。
測度守恆機制
在一個泛化的生成式問題設定中,我們通常將事件或資料的存在視為來自某機率分佈 \(p_X\) 的樣本。 在 Flow Model 中,我們希望找到一個可逆映射 \(f: \mathcal{X} \to \mathcal{Z}\), 使得資料分佈 \(p_X\) 經由 \(f\) 推送後,能夠匹配一個目標先驗分佈 \(p_Z\):
而根據機率統計基本假設,機率分佈在演化過程中應該保持總和為 1, 因此我們需要尋找一個動態系統,使得在整個 flow 過程中,機率質量守恆(Conservation of Probability Mass)得以維持。 需注意的是,這裡指的守恆是「機率總和為 1」,而非指幾何體積不變(Volume Preserving)。事實上 Flow 模型正是透過壓縮或拉伸體積來改變機率密度。
因此,在 CNF 中,我們通常使用劉為爾定理(Liouville's theorem)或是連續方程(continuity equation)來確保測度守恆。
3. Pullback Metric 與 Pushforward Measure 的比較
在本文開頭處,我們提到 pullback metric 與 pushforward measure 在數學上是對偶操作, 但在生成模型中這兩個操作其實關注完全不同的面向。
對象不同
- 在 VAE 的 decoder 中, pullback 關注「如何把資料空間的度量拉回潛空間」,所以生成模型天然內含一個局部的度量張量 \(G(z)\)。 這個度量會影響潛空間中的插值、最近鄰、以及局部流形結構。
- 在 flow model 中, pushforward 關注「如何把整批資料從資料分佈中演化到服從先驗分佈」,其核心是密度守恆與 log-determinant(Jacobian determinant)的控制,並不直接提供潛空間上的內積或距離解釋。
語意連續性的保證與缺失
- 在 VAE 的潛空間中,由於維護了變分特性, decoder 的映射使得在 \(G(z)\) 控制下,小的潛空間變動 \(d z\) 對應為小的輸出變化 \(d x\)。 若 encoder/decoder 訓練良好,則潛空間的鄰近性通常與語意相近性對應。
- 在 flow model 中,無任何保證。 flow 的映射 \(f\) 只要在測度層面達成目標,任意形式的拉伸/壓縮皆可接受。 結果是潛空間的鄰近性可能完全與語意無關。
4. 有沒有可能兩者兼得?
理論上,若我們能設計一個 flow 模型,其映射同時滿足:
- 測度守恆:\(f_\# p_X = p_Z\)。
- 度量拉回:在潛空間上誘導一個良好的 pullback metric \(G(z)\)。
則有可能同時擁有測度與度量的雙重優勢。 然而,實務上這樣的設計非常困難,因為兩者的目標往往是互相衝突的。 例如,為了達成測度守恆,flow 可能需要在某些區域進行劇烈的拉伸或壓縮, 這會導致 pullback metric 在那些區域退化或失去語意解釋力。
在實務上
為了在 flow 模型中獲得某種形式的語意度量,我們可以考慮以下幾種策略:
先訓練一個 VAE/AE,然後在其語意空間上訓練 flow 模型
先訓練一個 VAE/AE 得到一個有語意結構的 latent space,此時,此 latent space 已經有一個 pullback metric。 接著,在這個 latent space 上訓練 flow 模型以達成測度守恆,同時保留語意結構。 但這個 flow model 的逆映射 \(f^{-1}\) 並不保證會維持語意鄰近性,進而可能將語意空間上的概念隨意組裝, 或是逆向映射時產生微小的失真使得 decoder 的輸出在語意上有較大破壞。
在 flow 模型的訓練過程中加入正則化項,鼓勵 Jacobian 的奇異值分佈保持在合理範圍內,以避免極端拉伸/壓縮
加入 Jacobian 正則化項,例如 Frobenius 範數 \(R_J=\mathbb{E}_{x,t}\|J_f(x)\|_F^2\) 或 kinetic penalty \(R_K=\mathbb{E}\|v\|^2\), 這樣的正則化可以幫助維持某種程度的局部語意結構,但無法保證完整的 pullback metric 性質, 只是使 pullback metric 數值上不那麼病態。
使用 OT pairing 或 flow matching 技術,使得 flow 的微觀路徑更接近 Wasserstein-geodesics
這類的作法是向 metric-consistent transport 靠攏的路徑,但需要額外配對或 OT 計算。 並且, flow matching 本質上仍然是密度匹配,只是由設計者定義的路徑更有可能保留某種語意結構 (當然,也可能毫無意義,端看設計者有多了解資料),無法直接保證潛空間的語意結構。
混合目標(likelihood + metric loss)
在 flow 損失中同時加入對比學習或 supervised constraint(強制語意相近樣本在 latent 上靠近), 可直接把語意 metric 壓入 flow 映射,但會犧牲 pure likelihood 的理論嚴謹性。
結論
Pushforward 與 Pullback 在數學上是對偶操作(積分與拉回函數的對偶),但這件事跟生成模型中的語意結構建立沒什麼關聯, 即,擁有良好的測度推前並不意味著能獲得良好的度量拉回。 實務中若需兩者兼得,必須在模型或訓練目標上明確引入 metric 資訊。

