ICLR 2025 Spotlight | 慕尼黑工業大學&北京大學:邁向無衝突訓練的ConFIG方法

机器之心發表於2025-03-16

圖片

本文由慕尼黑工業大學與北京大學聯合團隊撰寫。第一作者劉強為慕尼黑工業大學博士生。第二作者楚夢渝為北京大學助理教授,專注於物理增強的深度學習演算法,以提升數值模擬的靈活性及模型的準確性和泛化性。通訊作者 Nils Thuerey 教授(慕尼黑工業大學)長期研究深度學習與物理模擬,尤其是流體動力學模擬的結合,並曾因高效流動特效模擬技術獲奧斯卡技術獎。目前,其團隊重點關注可微物理模擬及物理應用中的先進生成式模型。

在深度學習的多個應用場景中,聯合最佳化多個損失項是一個普遍的問題。典型的例子包括物理資訊神經網路(Physics-Informed Neural Networks, PINNs)、多工學習(Multi-Task Learning, MTL)和連續學習(Continual Learning, CL)。然而,不同損失項的梯度方向往往相互衝突,導致最佳化過程陷入區域性最優甚至訓練失敗。

目前,主流的方法通常透過調整損失權重來緩解衝突。例如在物理資訊神經網路中,許多研究從數值剛度、損失的收斂速度差異和神經網路的初始化角度提出了許多權重方法。然而,儘管這些方法聲稱具有更高的解的精度,但目前對於最優的加權策略尚無共識。

針對這一問題,來自慕尼黑工業大學和北京大學的聯合研究團隊提出了 ConFIG(Conflict-Free Inverse Gradients,無衝突逆梯度)方法,為多損失項最佳化提供了一種穩定、高效的最佳化策略。ConFIG 提供了一種最佳化梯度圖片,能夠防止由於衝突導致最佳化陷入某個特定損失項的區域性最小值。ConFIG 方法可以在數學上證明其收斂特性並具有以下特點:
  • 最終更新梯度圖片與所有損失項的最佳化梯度均不衝突

  • 圖片在每個特定損失梯度上的投影長度是均勻的,可以確保所有損失項以相同速率進行最佳化。

  • 圖片長度可以根據損失項之間的衝突程度自適應調整。

此外,ConFIG 方法還引入了一種基於動量的變種。透過計算並快取每個損失項梯度的動量,可以避免在每次訓練迭代中計算所有損失項的梯度。結果表明,基於動量的 ConFIG 方法在顯著降低訓練成本的同時保證了最佳化的精度。
圖片
想深入瞭解 ConFIG 的技術細節?我們已經為你準備好了完整的論文、專案主頁和程式碼倉庫!
  • 論文地址:https://arxiv.org/abs/2408.11104

  • 專案主頁:https://tum-pbs.github.io/ConFIG/

  • GitHub: https://github.com/tum-pbs/ConFIG

ConFIG: 無衝突逆梯度方法

目標:給定圖片個損失函式圖片,其對應梯度為圖片。我們希望找到一個最佳化方向圖片,使其滿足:圖片 。即所有損失項在該方向上都能減少,從而避免梯度衝突。

無衝突最佳化區間

假設存在一個無衝突更新梯度,我們可以引入一個新的向量圖片。由於圖片是一個無衝突梯度,圖片 應為一個正向分量向量。同樣地,我們也可以預先定義一個正向分量向量圖片,然後直接透過矩陣的逆運算求得無衝突更新梯度圖片,即圖片。透過給定不同的正向分量向量圖片,我們得到由一系列不同圖片組成的無衝突最佳化區間。

確定唯一最佳化梯度

儘管透過簡單求逆可以獲得一個無衝突更新區間,我們需要進一步確定唯一的無衝突梯度用於最佳化。在 ConFIG 方法中,我們從方向和幅度兩個方面進一步限定了最終用於最佳化更新的梯度:

  • 具體最佳化方向:相比於直接求解梯度矩陣的逆,ConFIG 方法求解了歸一化梯度矩陣的逆,即圖片,其中圖片表示第圖片個梯度向量的單位向量。可以證明,變換後圖片向量的每個分量代表了每個梯度圖片與最終更新梯度圖片之間的餘弦相似度。因此,透過設定圖片分量的不同值可以直接控制最終更新梯度對於每個損失梯度的最佳化速率。在 ConFIG 中,圖片被設定為單位向量以確保每個損失具有相同的最佳化強度從而避免某些損失項的最佳化被忽略。

  • 最佳化梯度大小:此外,ConFIG 方法還根據梯度衝突程度調整步長。當梯度方向較一致時,加快更新;當梯度衝突嚴重時,減小更新幅度:圖片, 其中圖片為每個梯度與最終更新方向之間的餘弦相似度。

ConFIG 方法獲得最終無衝突最佳化方向的計算過程可以總結為:
圖片
原論文中給出了上述 ConFIG 更新收斂性的嚴格證明。同時,我們還可以證明只要引數空間的維度大於損失項的個數,ConFIG 運算中的逆運算總是可行的。

M-ConFIG: 結合動量加速訓練

ConFIG 方法引入了矩陣的逆運算,這將帶來額外的計算成本。然而與計算每個損失的梯度帶來的計算成本,其並不顯著。在包括 ConFIG 在內的基於梯度的方法中,總是需要額外的反向傳播步驟獲得每個梯度相對於訓練引數的梯度。這使得基於梯度的方法的計算成本顯著高於標準最佳化過程和基於權重的方法。為此,我們引入了 M-ConFIG 方法,使用動量加速最佳化:

  • 使用梯度的動量(指數移動平均)代替梯度進行 ConFIG 運算。

  • 在每次最佳化迭代中,僅對一個或部分損失進行反向傳播以更新動量。其它損失項的動量採用之前迭代步的歷史值。


在實際應用中,M-ConFIG 的計算成本往往低於標準更新過程或基於權重的方法。這是由於反向傳播一個子損失圖片往往要比反向傳播總損失圖片更快。這在物理資訊神經網路中尤為明顯,因為邊界上的取樣點通常遠少於計算域內的取樣點。在我們的實際測試中,M-ConFIG 的平均計算成本為基於權重方法的 0.56 倍。

結果:更快的收斂,更優的預測

物理資訊神經網路

在物理資訊神經網路中,用神經網路的自動微分來近似偏微分方程的時空間導數。偏微分方程的殘差項與邊界條件和初始條件被視作不同的損失項在訓練過程中進行聯合最佳化。我們在多個經典的物理神經資訊網路中測試了 ConFIG 方法的表現。

結果顯示,在相同訓練迭代次數下,ConFIG 方法是唯一一個相比於標準 Adam 方法始終獲得正向提升的方法。對每個損失項變化的單獨分析表明,ConFIG 方法在略微提高 PDE 訓練殘差圖片的同時大幅降低了邊界和初始條件損失圖片,實現了 PDE 訓練精度的整體提升
圖片
相同迭代步數下不同方法在 PINNs 測試中相比於 Adam 最佳化器的相對效能提升
圖片
不同損失項隨著訓練週期的變化情況

在實際應用中,相同訓練時間下的模型準確性可能更為重要。M-ConFIG 方法透過使用動量近似梯度帶來的運算速度提升可以使其充分發揮潛力。在相同訓練時間內,M-ConFIG 方法的測試結果優於其他所有方法,甚至高於常規的 ConFIG 方法。

此外,我們還在最具有挑戰性的三維 Beltrami 流動中進一步延長訓練時間來更加深入地瞭解 M-ConFIG 方法的效能。結果表明,M-ConFIG 方法並非僅在最佳化初始階段帶來顯著的效能改善,而是在整個最佳化過程中都持續改善最佳化的過程。
圖片
相同訓練時間下不同方法在 PINNs 測試中相比於 Adam 最佳化器的相對效能提升
圖片
三維 Beltrami 流動案例中預測誤差隨著訓練時間的變化

多工學習

我們還測試了 ConFIG 方法在多工學習(MTL)方面的表現。我們採用經典的 CelebA 資料集,其包含 20 萬張人臉影像並標註了 40 種不同的面部二元屬性。對每張人像面部屬性的學習是一個非常有挑戰的 40 項損失的多工學習。

實驗結果表明,ConFIG 方法或 M-ConFIG 方法在平均 F1 分數圖片、平均排名圖片中均表現最佳。其中,對於 M-ConFIG 方法,我們在一次迭代中更新 30 個動量而不僅更新一個動量。這是因為當任務數量增加時,單個動量更新時間的間隔較長,歷史動量資訊難以準確捕捉梯度的變化。動量資訊的滯後會逐漸抵消 M-ConFIG 方法更高訓練效率帶來的效能提升。

在我們的測試中,當任務數量等於 10 時,M-ConFIG 方法在相同訓練時間下的效能就已經弱於 ConFIG 方法。增加單次迭代過程中的動量更新次數可以顯著緩解這種效能下降。在標準的 40 任務 CelebA 訓練中將動量更新次數提升到 20 時,M-ConFIG 方法的效能已經接近 ConFIG 方法,而訓練時間僅為 ConFIG 方法的 56%。當更新步數達到 30 時,其效能甚至可以優於 ConFIG 方法。
圖片
ConFIG 方法在 CelebA 人臉屬性資料集中的表現

結論

在本研究中,我們提出了 ConFIG 方法來解決不同損失項之間的訓練衝突。ConFIG 方法透過確保最終更新梯度與每個子梯度之間的正點積來確保無衝突學習。此外,我們還發展了一種基於動量的方法,用交替更新的動量代替梯度,顯著提升了訓練效率。ConFIG 方法有望為眾多包含多個損失項的深度學習任務帶來巨大的效能提升。

相關文章