Equivariance in DL:從平移不變到 E(3) 等變

· 4 min read

什麼是 Equivariance?

Equivariance(等變性)是深度學習中一個優雅的概念。一個函式 f 對群 G 等變,意味著:

對輸入施加群作用 g,等價於對輸出施加相同的群作用。即 f(g·x) = g·f(x)

最直覺的例子是 CNN:卷積操作對平移具有等變性——把圖片往右移 5 pixel,feature map 也跟著往右移 5 pixel。這不是巧合,而是卷積的數學結構保證的。

為什麼 Equivariance 重要?

在處理 3D 分子、蛋白質結構、粒子物理等問題時,資料天然具有幾何對稱性。一個分子旋轉後還是同一個分子,物理規律不會因為你選的座標系而改變。

如果模型不具備對應的等變性,它需要從資料中「學習」這些對稱——這意味著需要更多資料和更大的模型。等變網路則是把對稱性直接 bake into 模型架構中。

歷史脈絡:四個里程碑

1. CNN → 平移等變(1989-)

LeCun 的 CNN 是最早利用等變性的深度學習模型。卷積操作的 weight sharing 自然保證了平移等變性。Pooling 則提供了近似的平移不變性(注意等變和不變的區別)。

2. Spherical CNN → 旋轉等變(2018)

Cohen et al. 的 Spherical CNN 將等變性從平面上的平移推廣到球面上的旋轉。核心想法是用球諧函數(Spherical Harmonics)作為基底,在頻譜域上做卷積。

這對天文學(天球影像)和氣候科學(地球表面資料)特別有用——這些資料天然定義在球面上。

3. SE(3)-Transformer(2020)

Fuchs et al. 提出的 SE(3)-Transformer 將等變性帶入 Transformer 架構。SE(3) 是三維空間中的剛體運動群(旋轉 + 平移),這對分子和蛋白質建模至關重要。

關鍵創新是設計了等變的 attention 機制——attention weights 只依賴於原子間的相對位置和方向,不依賴絕對座標。

4. EGNN(2021)

Satorras et al. 的 E(n) Equivariant Graph Neural Network 提供了一個更簡潔的方案。不需要球諧函數或不可約表示,只用簡單的向量運算就能保證等變性。

EGNN 的核心洞察是:如果你只用相對位移向量距離來更新節點特徵,等變性就自動成立。這大幅降低了實作複雜度。

實作工具:e3nn

e3nn 是一個 PyTorch 套件,提供了構建等變神經網路所需的基礎組件:

  • 不可約表示(Irreducible Representations)的張量積運算
  • 等變的線性層、非線性層、正規化層
  • 球諧函數的高效計算
  • 與 PyTorch Geometric 的整合

展望

等變神經網路正在從一個學術研究方向走向實際應用。AlphaFold2 中的 Invariant Point Attention、分子動力學模擬中的力場預測、材料科學中的性質預測——這些都受益於等變架構。

核心啟示是:好的歸納偏置(inductive bias)能讓模型用更少的資料學到更好的表示。等變性就是一種特別強大的歸納偏置。

Related Posts