G2.1 5 分鐘閱讀 2026年10月

G2.1 有了方向之後,下一層要怎麼共享規則?

本篇重用1 篇

下一層該看哪個方向的鄰居?

在一個路口看見向東的道路時,我們可能想同時看「左轉九十度的道路」是不是也存在。把整張地圖轉過去,向東變向北,但「左轉九十度」這個相對關係沒有改變。

因此下一層應該共享的,不是「方向零永遠用某組權重」,而是:相對於目前方向,偏轉多少,使用哪個權重。

先暫時忽略位置,只看四個方向的數值 h(r)h(r)。讓輸出方向 rr 參考所有方向 ss,並讓權重只依賴 s−rs-r:

F(h)(r)=∑s=03ψ(s−r)h(s).F(h)(r)=\sum_{s=0}^3 \psi(s-r)h(s).

索引都 modulo 44。輸入 cyclic-shift qq 後,h′(s)=h(s−q)h'(s)=h(s-q);令 w=s−qw=s-q,

F(h′)(r)=∑wψ(w+q−r)h(w)=F(h)(r−q).F(h')(r)=\sum_w\psi(w+q-r)h(w)=F(h)(r-q).

所以這層的輸出仍按同一個方式 shift。這是最小的 group convolution 例子。

位置與方向,可以一起寫嗎?

把「移到哪裡、轉到哪裡」合成一個 group element gg。在正方格點上的整數平移加九十度旋轉,形成常用的 p4p4 group;它的組合規則就是 G1.1 算過的旋轉與平移組合。

Feature h(g)h(g) 現在附在每個 pose 上。gg 是想產生輸出的位置與方向,aa 是我們參考的輸入 pose。兩者的相對關係是 g−1ag^{-1}a。

用這個相對關係決定權重:

F(h)(g)=∑a∈Gψ(g−1a)h(a).F(h)(g)=\sum_{a\in G}\psi(g^{-1}a)h(a).

這裡採 correlation 的慣例,與 CNN 一樣常被合稱 group convolution。有限 C4C_4 可以直接對全部四個元素求和;無限格點的 p4p4 實作則通常只使用有限支撐的局部 kernel。

Cohen 與 Welling [1] 用這種 G-correlation 建立 G-CNN。它不是把普通 channel 任意混合,而是依據 feature 所在的 group 座標共享。

為什麼同時平移、旋轉仍成立?

令整體變換為 qq,group feature 的 left action 是

[T(q)h](a)=h(q−1a).[T(q)h](a)=h(q^{-1}a).

這是在新 pose aa 讀取搬動前的 pose q−1aq^{-1}a。將它代入,

F(T(q)h)(g)=∑aψ(g−1a)h(q−1a).F(T(q)h)(g)=\sum_a\psi(g^{-1}a)h(q^{-1}a).

令 b=q−1ab=q^{-1}a,得到 a=qba=qb。Group 的乘法讓

g−1qb=(q−1g)−1b.g^{-1}qb=(q^{-1}g)^{-1}b.

因此

F(T(q)h)(g)=∑bψ((q−1g)−1b)h(b)=F(h)(q−1g)=[T(q)F(h)](g).\begin{aligned} F(T(q)h)(g) &=\sum_b\psi((q^{-1}g)^{-1}b)h(b)\\ &=F(h)(q^{-1}g)\\ &=[T(q)F(h)](g). \end{aligned}

我們用到的是操作可組合、可取 inverse,以及 action 讓索引一一對應。這也解釋為什麼前面要先建立 group,而不是隻列一串 augmentation。

通道、bias 與 activation 怎麼接?

如果每個 group element 上有多個 scalar channels,可以對 input channels 加總、產生多個 output channels;同一套 kernel 仍在所有 gg 重用。Bias 也要在 gg 上共享。

Group action 只重排這些 gg 的索引,所以同樣的 pointwise ReLU 仍可交換。用 G1.3 的組合證明,整個網路就能保留這個 action。

但四個方向 channel 和二維向量的兩個分量不同。前者的旋轉是重排,後者是矩陣混合。接下來我們要把 feature 的型態講清楚,才能知道哪些操作真的可以沿用。

Group correlation 在每個輸出 pose g,按照相對 pose g⁻¹a 讀取鄰居;整體變換不改變相對關係。
Group correlation 在每個輸出 pose g,按照相對 pose g⁻¹a 讀取鄰居;整體變換不改變相對關係。

課堂提問

只要把四個方向當成四個一般 channels,任意使用 dense channel mixing,還會保證 cyclic-shift equivariance 嗎?

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

不一定。方向 mixing 的權重也必須只依賴相對方向,或滿足同一個交換條件。任意矩陣可能讓特定絕對方向有不同待遇。

動手看一次

選擇方向 group correlation,再切換旋轉。下一層使用相對方向共享權重,因此仍能按相同規則搬動四個 channels。

快速回顧一下

想一想g⁻¹a 代表什麼?

想一想證明中為什麼可以令 a=qb?

想一想G-correlation 需要 group 可交換嗎?

參考文獻

  1. Cohen 與 Welling(2016),Group Equivariant Convolutional Networks