13 対称性 ── 変換で変わらないもの、ともに変わるもの
前章の第2節で、我々は「許される変換のあつまり」というものを扱った。摂氏を華氏に直しても同じ測定である。原色の選び方を変えても同じ色空間である。そして最後に、そのあつまりには構造がある—恒等変換を含み、合成について閉じ、逆変換を持つ—と書いた。
その構造には名前がある。群である。
本章はその名前を正しく与えるところから始める。だが目的は用語の整備ではない。群という概念を手に入れると、本書がここまで何度も使ってきた道具の一つに、まったく別の顔が見えてくる。畳み込みである。
第4章で我々は畳み込みを、視覚受容野を記述する便利な数学として導入した。第8章では、それが畳み込みニューラルネットの重み共有として再登場した。二度とも「そういうものだ」として使ってきた。本章の第7節で、その正体を明かす—線形かつ平行移動同変な作用素は、畳み込みしかありえない。畳み込みは便利だから使われているのではない。対称性から必然的に導かれるものだったのである。
本書でもっとも息の長い伏線が、ここで回収される。
第2〜3節が群と表現の最小限の導入である。群論を学んだことがあれば飛ばしてよい。学んだことがなくても心配は要らない—本章で使うのは定義と初歩の例だけで、シローの定理も可解群も出てこない。
第4〜6節が概念の整理(不変・同変・共変・反変・準同型)、第7〜10節が深層学習への応用である。
第7節が本章の山場である。第4章から引いてきた畳み込みの伏線が回収される。急ぐならここだけでもよい。
第5節(共変と反変)は、第11章第4節のヤコビアンの話と直結している。あそこで \delta と J^\top J が何をしていたのかが、この節で腑に落ちるはずだ。
必要な数学は第2〜3節で導入する。群論の予備知識は要らない。
1. なぜ対称性か
猫の写真を右に10ピクセルずらす。まだ猫である。
当たり前のことを言っているようだが、この当たり前を機械に教えるのは簡単ではない。画像を1万次元のベクトルとして扱うなら、10ピクセルずらした画像は元の画像とまったく違うベクトルである。ユークリッド距離で測れば遠く離れている。「これも猫だ」と学ばせるには、ずらした画像を全部見せるしかない—素朴にはそうなる。
だが我々は、これを学習で獲得させる必要があるのだろうか。「ずらしても猫」は、データから学ぶべき事実ではなく、世界について我々が最初から知っていることである。ならば、それをアーキテクチャに埋め込んでしまえばよい。
これが本章の発想である。整理すると三つの利得がある。
第一に、サンプル効率。平行移動しても同じだと分かっているなら、平行移動したデータを見る必要がない。学習すべき関数の空間が小さくなる。第9章で扱った汎化の議論で言えば、仮説空間を対称性で絞ることになる。
第二に、保証。学習で「だいたい平行移動に強くなった」のと、構造として「厳密に平行移動と可換である」のとでは、性質がまったく違う。後者は入力が訓練分布の外にあっても壊れない。
第三に、統一的な見方。これがいちばん深い利得である。CNN・グラフニューラルネット・Transformer は、それぞれ別々に発明されたアーキテクチャに見える。だが「どんな対称性を仮定しているか」という観点から見ると、同じ設計原理の異なる実装として整理できる。第9節で扱う幾何学的深層学習の主張である。
そして脳の側にも同じ話がある。視覚系は階層を上がるにつれて位置や大きさの変化に頑健になっていく。第4章で扱った複雑細胞の位相不変性が、その最初の一歩だった。「不変性の獲得」は視覚神経科学の中心的な主題であり、それを数学的に語る言葉が対称性である。
2. 必要な数学:群
定義
集合 G と、その上の二項演算 \ast: G \times G \to G の組が群(group)であるとは、次の三つを満たすことである。
- 結合律 — 任意の g, h, k \in G について (g \ast h) \ast k = g \ast (h \ast k)
- 単位元 — ある e \in G が存在して、任意の g について e \ast g = g \ast e = g
- 逆元 — 任意の g に対し、g \ast g^{-1} = g^{-1} \ast g = e となる g^{-1} が存在する
これだけである。可換性(g \ast h = h \ast g)は要求されない。要求される群を可換群(アーベル群)と呼ぶ。
抽象的に見えるが、正体は単純である。群とは「操作のあつまり」であって、続けてできること・何もしないこと・元に戻せることを要求しているだけである。
例
本書で使うものを挙げる。
平行移動群 \mathbb{R}^2(または \mathbb{Z}^2)。画像を (u,v) だけずらす操作。二回ずらせば足し算になるから、演算は +、単位元は (0,0)、逆元は (-u,-v)。可換群である。本章の主役。
回転群 SO(2)。平面の回転。角度 \theta の回転を続けて角度 \varphi の回転をすれば \theta + \varphi の回転だから、これも可換。行列で書けば
R(\theta) = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}
三次元回転群 SO(3)。こちらは可換でない。x 軸まわりに90度回してから y 軸まわりに90度回すのと、順序を逆にするのとでは、結果が違う。手元にあるもの(本でもスマホでも)で試してみてほしい。
置換群 S_n。n 個のものを並べ替える操作。グラフニューラルネットの「ノードの番号の付け方によらない」という要求が、この群に対応する。
スケール変換群。正の実数の掛け算 x \mapsto ax(a > 0)。前章で見た比率尺度の許容変換群がまさにこれである。
作用・軌道・不変
群それ自体より、群が何かに作用するときのほうが大事である。
群 G が集合 X に作用するとは、各 g \in G に対して写像 x \mapsto g\cdot x が定まり、
e \cdot x = x, \qquad g \cdot (h \cdot x) = (g \ast h)\cdot x
を満たすことをいう。平行移動群が画像の集合に作用する、というのが典型例である。
作用が定まると、集合が自然に分割される。x \in X に対し、
\mathcal{O}(x) = \{\, g\cdot x \;:\; g \in G \,\}
を x の軌道(orbit)と呼ぶ。「x を群で動かして到達できる点の全体」である。
軌道は本章を通じて重要な役割を果たす。というのも—「平行移動しても猫」という主張は、「猫の画像の軌道の上で、出力が一定である」という主張だからである。分類器に求めているのは、軌道を潰す写像なのだ。
一方で、軌道を潰しすぎてもいけない。位置を読み出したいなら、平行移動の情報は残さねばならない。何を潰し、何を残すか。これが次節以降の主題である。
ここがポイント
群とは操作のあつまり、軌道とは「群で動かして到達できる点の全体」。不変性とは軌道を潰すことであり、対称性を設計するとは「どの軌道を潰し、どれを残すか」を決めることである。
3. 必要な数学:表現
群は抽象的な操作のあつまりだが、我々が扱うのはベクトルである。両者を橋渡しするのが表現である。
定義
群 G の線形表現とは、群準同型
\rho: G \to GL(V)
のことである。ここで GL(V) はベクトル空間 V の可逆線形写像のなす群(行列で言えば正則行列全体)。群準同型とは、演算を保つ写像
\rho(g \ast h) = \rho(g)\,\rho(h)
のことである。
読み方を言葉にしておこう。表現とは、抽象的な群の操作を、具体的な行列として実現したものである。「\theta 回転する」という操作に 2\times2 の回転行列を割り当てる—これが SO(2) の表現の一例だ。
同じ群にも表現はいくつもある。SO(2) を例に取ろう。
- 自明表現 \rho(\theta) = 1(1\times1 行列)。回転しても何も変わらない
- 標準表現 \rho(\theta) = R(\theta)。平面の回転そのもの
- k 次のフーリエ表現 \rho_k(\theta) = R(k\theta)。k 倍の速さで回る
最後のものが、本書の文脈では面白い。方位選択性の細胞集団を考えてほしい。方位 \theta の刺激を与えたとき、好み方位が \theta_i の細胞が強く応じる。刺激を \Delta だけ回すと、応答パターン全体が \Delta だけ「ずれる」。細胞集団の応答は、SO(2) の表現の上に乗っているわけである。しかも方位は180度で一周するので k=2 のフーリエ表現が効いている—第11章第5節の「手を動かす」でフォン・ミーゼス型のチューニングに \cos(2(\theta-\theta_i)) と書いた、あの 2 である。
既約表現
表現 V が、より小さい表現に分解できることがある。V = V_1 \oplus V_2 と分けて、\rho がそれぞれの成分の中で完結するなら、二つに分けて考えればよい。これ以上分解できない表現を既約表現(irreducible representation)と呼ぶ。
有限群やコンパクト群では、任意の表現が既約表現の直和に分解できる。SO(2) の既約表現は上に挙げたフーリエ表現 \rho_k(k = 0, 1, 2, \dots)で尽きており、一般の表現をこれらに分解することが、まさにフーリエ級数展開である。
つまり—第4章で導入したフーリエ変換は、平行移動群の表現論だったのである。周波数成分とは既約表現のラベルであり、畳み込み定理は表現論の言葉で自然に説明される。本書では深入りしないが、頭の隅に置いておくと見通しがよくなる。
本章で必要な表現論はここまでである。
4. 不変・同変・共変の区別
三つの言葉を整理する。混同されやすいので、一つの式で並べて見るのがよい。
写像 f: X \to Y を考える。群 G が X にも Y にも作用しているとしよう。X 上の作用を g\cdot x、Y 上の作用を \rho(g)\, y と書く。このとき、
f(g \cdot x) = \rho(g)\, f(x) \qquad (\forall g \in G, \forall x \in X)
が成り立つとき、f は G に対して同変(equivariant)であるという。
この一本の式で、三つが尽きる。違いは \rho が何かだけである。
| \rho(g) | 呼び名 | 式 | 意味 |
|---|---|---|---|
| 恒等写像 | 不変(invariant) | f(g\cdot x) = f(x) | 入力を動かしても出力は変わらない |
| 作用そのもの | 共変(covariant) | f(g\cdot x) = g \cdot f(x) | 入力と同じように出力も動く |
| 一般の表現 | 同変(equivariant) | f(g\cdot x) = \rho(g)\, f(x) | 出力も動くが、動き方は \rho で決まる |
不変と共変は同変の特別な場合である。用語としては、同変が上位概念だと覚えておけばよい。
三つの関係を一枚にまとめたのが 図 1 である。
図の四角形には名前がある。可換図式(commutative diagram)である。四隅を結ぶ二つの道すじ—「動かしてから写す」と「写してから動かす」—が同じ結果に着くとき、その四角形は可換であるという。同変性とは、この四角形が可換であることに他ならない。
この四角形を覚えておいてほしい。 いまは一つの系の内部の話である。f は入力空間から出力空間への写像で、群がその両側に作用していた。だが第17章第10節では、同じ四角形が「脳」と「AI」という二つの系のあいだで問われる。 写像の役を務めるのは、第15章第10節で見た翻訳器になる。
具体例で掴む
画像で考えよう。G は平行移動群である。
不変の例—画像分類器。猫の画像を右にずらしても、出力は「猫」のまま変わらない。f(g\cdot x) = f(x)。
共変の例—セグメンテーション(領域分割)。猫の画像を右にずらしたら、出力のマスクも右にずれてほしい。f(g\cdot x) = g\cdot f(x)。
同変の例—畳み込み層。入力をずらせば特徴マップもずれる。これは共変の一種である。より一般に、回転群に対する等変ネットワークでは、入力を回すと出力の特徴が「表現 \rho に従って混ざる」。単純にずれるのではなく、成分どうしが混ざり合う—これが一般の同変である。
設計原理としての含意
ここから一つ、実用上の原則が出る。同変を積み重ね、最後に不変にする。
分類器がほしいなら最終出力は不変であるべきだ。だが最初から不変にしてしまうと、途中の層で位置情報が使えなくなる。「目と鼻と口が、この位置関係で並んでいるから顔だ」という判断ができなくなってしまう。
だから中間層は同変(位置情報を保ったまま変換)にしておき、最後に不変化する。CNN が畳み込み層を重ねてから大域プーリングをするのは、まさにこの構造である。第4章で見た単純細胞(位相に依存する)から複雑細胞(位相に不変)への流れも、同じ形をしている。
ここがポイント
f(g\cdot x) = \rho(g)f(x) の一本で、不変(\rho=\mathrm{id})・共変(\rho=g)・同変(一般の \rho)が尽きる。設計の原則は「同変を積み、最後に不変化する」—情報を早く捨てすぎないためである。
5. 共変と反変 ── 添字の上下
前節の「共変」は群作用の文脈での言葉だった。ところが共変・反変という対には、もう一つ、線形代数・テンソル解析の文脈での用法がある。両者は関係しているが同じではないので、ここで整理しておく。
基底を取り替えると何が起きるか
ベクトル空間 V に基底 \{e_1, \dots, e_n\} を取る。ベクトル v は
v = \sum_i v^i e_i
と展開できる。v^i が成分である(添字を上に書く理由はすぐ分かる)。
ここで基底を取り替える。新しい基底 e'_j を、古い基底の線形結合で書く。
e'_j = \sum_i A^i_{\ j}\, e_i
問題。同じベクトル v の、新しい基底での成分 v'^j はどうなるか。
v 自体は変わらないのだから、
\sum_j v'^j e'_j = \sum_i v^i e_i
左辺に基底の変換則を代入する。
\begin{aligned} \sum_j v'^j \sum_i A^i_{\ j} e_i &= \sum_i v^i e_i \\ \sum_i \Big( \sum_j A^i_{\ j}\, v'^j \Big) e_i &= \sum_i v^i e_i &&\textsf{(和の順序を入れ替えた)} \end{aligned}
基底が一次独立だから、係数を比べて \sum_j A^i_{\ j} v'^j = v^i。つまり
v' = A^{-1} v
基底は A で変わったのに、成分は A^{-1} で変わった。逆向きである。
この「逆向きに変わる」性質を反変(contravariant)と呼ぶ。ベクトルの成分は反変であり、慣習として添字を上に書く(v^i)。
反対に動くもの
では、A と同じ向きに変わる量はないのか。ある。
V 上の線形汎関数(V からスカラーへの線形写像)を考えよう。それらの集まりを双対空間 V^* と呼ぶ。\omega \in V^* の成分を \omega_i = \omega(e_i) と定義する。基底を取り替えると
\omega'_j = \omega(e'_j) = \omega\Big(\sum_i A^i_{\ j} e_i\Big) = \sum_i A^i_{\ j}\, \omega_i
こちらは A そのもので変わる。これを共変(covariant)と呼び、添字を下に書く(\omega_i)。
添字の上下は、単なる装飾ではない。その量が基底変換にどう反応するかを表す標識である。そして上下の添字を組にして和を取ると、
\omega(v) = \sum_i \omega_i v^i
は基底の取り方によらない量(スカラー)になる。A と A^{-1} が打ち消し合うからだ。これが「添字を上下で縮約する」という規則の意味である。
計量が上下をつなぐ
内積が入っている空間では、ベクトルと線形汎関数を同一視できる。v \in V に対して \omega(u) = \langle v, u\rangle という汎関数を対応させればよい。成分で書くと
v_i = \sum_j g_{ij}\, v^j
ここで g_{ij} = \langle e_i, e_j \rangle が計量テンソルである。この操作を「添字を下げる」と言い、逆行列 g^{ij} を使えば「添字を上げる」ことができる。
計量とは、反変な量と共変な量を行き来させる仕掛けである。
第11章の回収
さて、ここで第11章第4節に戻ろう。
あそこで我々は、刺激の微小変化 \delta に対する応答の変化を
\|f(s+\delta) - f(s)\|^2 \approx \delta^\top (J^\top J)\, \delta
と書き、J^\top J を「引き戻し計量」と呼んだ。なぜ「計量」と呼べたのか、いまなら答えられる。
- \delta は刺激空間の接ベクトルである。これは反変な量だ(座標を取り替えれば A^{-1} で変わる)
- 勾配 \nabla_s は共変な量である(A で変わる)
- J^\top J は、反変ベクトルを二つ食べてスカラーを返す。まさに計量テンソル g_{ij} の役割である
そして J^\top J\,\delta という量は、反変ベクトル \delta の添字を下げて共変ベクトルにしたものだ。添字の上下は飾りではなく、第11章の式が何をしていたかの説明になっている。
もう一つ。第11章第5節でフィッシャー情報行列 \mathcal{I} = J^\top \Sigma^{-1} J も同じ形をしていた。これも計量である(統計学では「フィッシャー計量」と呼ばれ、情報幾何という分野の出発点になっている)。
座標変換としての神経科学
この話は、脳の側にも直接の対応物を持つ。
視覚系は網膜座標で情報を受け取る。だが手を伸ばすには、身体座標での位置が必要である。あいだには頭部座標がある。網膜座標 → 頭部座標 → 身体座標という座標変換の連鎖を、脳は実行している。
眼球が回転したとき、網膜上の像の座標は変わる。だが物体の身体座標での位置は変わらない。「座標は変わるが、指しているものは変わらない」—これはまさに本節で扱った構造である。頭頂葉の細胞が眼球位置によって応答を変調される(gain field)ことが知られているが、これは座標変換を実装する回路の候補と考えられている。
ここがポイント
基底を A で変えたとき、成分が A^{-1} で変わるのが反変(添字は上)、A で変わるのが共変(添字は下)。計量が両者を行き来させる。第11章の J^\top J が「計量」だったのは、まさにこの意味においてである。
なお、この語にはもう一つの用法がある。第17章第8節で扱う「反変原理」の反変は、群作用でもテンソルでもなく、課題と機構の対応についての言葉である。同じ語が三通りに使われるので、そのつど何の話かを確かめてほしい。
6. 準同型と構造の保存
第3節で群準同型 \rho(g\ast h) = \rho(g)\rho(h) を定義した。この形を、もう一度よく見てほしい。
f(a \ast b) = f(a) \ast f(b)
前章第3節で、まったく同じ形を見ている。
\phi(a \circ b) = \phi(a) + \phi(b)
測定における準同型である。棒を継ぎ足してから長さを測るのと、それぞれ測ってから足すのとが一致する—それが測定が成立する条件だった。
そして群準同型は、群の演算をしてから写すのと、写してから演算するのが一致することを要求する。同じ発想である。
「構造を保つ写像」という概念は、数学のあちこちで同じ形をしている。線形写像 f(\alpha x + \beta y) = \alpha f(x) + \beta f(y) もそうだ。対象が変わるだけで、要求していることは一つ—演算と写像が可換であること。
第一準同型定理
群準同型 f: G \to H に対して、二つの部分集合が定まる。
\ker f = \{\, g \in G \;:\; f(g) = e_H \,\}, \qquad \mathrm{Im}\, f = \{\, f(g) \;:\; g \in G \,\}
核(kernel)と像(image)である。核は「写したら単位元になってしまう元の集まり」、つまり f が潰してしまう部分。像は「行き先として実際に到達される部分」である。
第一準同型定理は、この二つを結びつける。
G/\ker f \;\cong\; \mathrm{Im}\, f
左辺は G を \ker f で割った商群—「潰される分を潰してしまった後に残るもの」である。それが像と同型になる、というのが定理の主張である。
表現学習の言葉に翻訳する
この定理には、本書の文脈で読むと味わい深い解釈がある。
核は「捨てた情報」、像は「保った構造」である。
表現学習とは何をしているのか。入力の中には、課題にとってどうでもいい変動がたくさんある。照明の色、カメラの位置、背景のノイズ。それらは捨てたい。一方で、対象の同一性やカテゴリの区別は保ちたい。
\underbrace{G/\ker f}_{\textsf{捨てた後に残るもの}} \;\cong\; \underbrace{\mathrm{Im}\,f}_{\textsf{表現として現れるもの}}
表現とは、核で割った商である。何を捨てたかを決めれば、何が表現されるかが決まる。逆に、表現を見れば何を捨てたかが分かる。
この見方は、第11章第4節で扱ったヤコビアンの階数の話とも響き合う。J の階数が刺激の次元より小さいとき、J の核にあたる方向の刺激変化は表現に現れない。階数落ちとは、核が非自明だということである。
そして前章第10節で「デコーディングは何を測っているか」を論じたとき、読み出し部分空間とヤコビアンの像の関係が問題になった。あれも像の話だった。
7. 畳み込みは平行移動同変性から導かれる
第4章から引いてきた畳み込みの伏線を、ここで回収する。
主張
定理。\mathbb{Z} 上の関数の空間に作用する線形作用素 T が平行移動と可換であるとき、T は畳み込みである。すなわち、ある k が存在して
(Tx)[n] = \sum_{m} k[n-m]\, x[m]
と書ける。
言い換えよう。「線形」と「平行移動同変」の二つだけを要求すると、畳み込み以外の選択肢がなくなる。畳み込みは、便利だから使われているのではない。対称性を課した結果、それしかなくなったのである。
証明
一次元の離散信号で示す。記号を用意しよう。
平行移動作用素 S_a を (S_a x)[n] = x[n - a] で定める(信号を a だけ右にずらす)。単位インパルス \delta を \delta[0] = 1、それ以外は 0 で定める。
仮定は二つ。T は線形であり、T S_a = S_a T(平行移動と可換)である。
第一歩。任意の信号をインパルスの重ね合わせで書く。
x[n] = \sum_m x[m]\, \delta[n-m] = \sum_m x[m]\, (S_m \delta)[n]
これは定義を書き下しただけである。m 番目の項は「位置 m に高さ x[m] のインパルスを置いたもの」で、それを全部足せば元の信号になる。
第二歩。T を作用させ、線形性で和の外に出す。(以下、信号は有限個の点でしか値を持たないとしておく。無限和を外に出すには T の連続性が要るが、本質は変わらない。)
\begin{aligned} Tx &= T\Big(\sum_m x[m]\, S_m \delta\Big) \\ &= \sum_m x[m] \; T(S_m \delta) &&\textsf{(線形性。} x[m] \textsf{ は係数なので外へ)} \end{aligned}
第三歩。ここで平行移動同変性を使う。T S_m = S_m T だから、
T(S_m \delta) = S_m (T\delta)
T が \delta に何をするかさえ分かれば、他のすべてが決まることに注目してほしい。k = T\delta と置こう。これを T のインパルス応答と呼ぶ。
第四歩。代入して整理する。
\begin{aligned} (Tx)[n] &= \sum_m x[m]\, (S_m k)[n] &&\textsf{(第三歩を代入)}\\ &= \sum_m x[m]\, k[n-m] &&\textsf{(} S_m \textsf{ の定義)} \end{aligned}
これは畳み込みの定義そのものである。証明終わり。
何が起きたのか
四行で終わってしまったが、内容は重い。振り返っておこう。
決定的だったのは第三歩である。平行移動同変性のおかげで、T を知るのに必要な情報が、たった一つの信号(インパルス)への応答に還元された。無限にある入力それぞれに対して振る舞いを指定する必要がない。一点での応答が、平行移動によって全体に「複製」される。
そして—これがまさに、CNN の重み共有である。
第8章で畳み込み層を導入したとき、「全結合層と違って、同じ重みを画像の各位置で使い回す」と説明した。パラメータが減って効率がよい、という話をした。だが本当の理由はこちらである。平行移動同変性を要求すれば、重みは共有せざるをえない。位置ごとに違う重みを持つことは、平行移動と可換でないことを意味する。
第4章でガボールフィルタを畳み込みとして書いたときも、我々は暗黙に同じことをしていた。「視覚系の受容野は、網膜上のどこにあっても同じ形をしている」—この経験的事実(近似的にだが成り立つ)が、平行移動同変性そのものである。だから受容野の記述に畳み込みが現れたのは、必然だった。
ここがポイント
線形 + 平行移動同変 ⟹ 畳み込み。畳み込みは便利な道具として選ばれたのではなく、対称性の要求から一意に導かれる。CNN の重み共有も、V1 の受容野が位置によらないことも、同じ一つの定理の現れである。
上の証明を、有限長の信号(周期境界条件、\mathbb{Z}/N\mathbb{Z} 上)で書き直してみよう。コードは コード/13_circulant.py にある。
N=8 とし、巡回シフト行列 S と可換な行列 T の自由度を数える。TS = ST は T の成分についての線形方程式なので、その解空間の次元を測ればよい。
N = 8
S = np.roll(np.eye(N), 1, axis=0) # 巡回シフト行列
def commutant_dim(S):
"""TS = ST を満たす T の空間の次元。"""
A = (np.kron(S.T, np.eye(N)) # vec(TS - ST)
- np.kron(np.eye(N), S)) # = A vec(T)
return N*N - np.linalg.matrix_rank(A, tol=1e-9)
# 可換な T を作ってみると、巡回行列になっている
k = rng.standard_normal(N)
T = np.array([[k[(i-j) % N] for j in range(N)]
for i in range(N)])
print(np.abs(T @ S - S @ T).max()) # ほぼゼロ
# フーリエ基底へ移すと対角化される(畳み込み定理)
F = np.array([[np.exp(-2j*np.pi*i*j/N)
for j in range(N)]
for i in range(N)])/np.sqrt(N)
D = F @ T @ F.conj().T
print(np.abs(D - np.diag(np.diag(D))).max())commutant_dim は証明を線形代数の問題に翻訳している—TS = ST を T の成分についての連立一次方程式と見て、その零空間の次元を測る。
| 自由度 | |
|---|---|
| 任意の 8\times8 行列 | 64 |
| S と可換な行列 | 8 |
N^2 から N へ落ちている。制約は対称性から来ており、残った N 個の自由度がインパルス応答 k に他ならない。実際、k から作った巡回行列 T_{ij} = k_{(i-j) \bmod N} は TS - ST = 0 を厳密に満たし、Tx は k と x の巡回畳み込みに一致する(差は 4\times10^{-16}、丸め誤差の範囲である)。
そして最後の問い。T が S と可換なら、S の固有ベクトルは T の固有ベクトルでもある。S の固有ベクトルは何だろうか。答えは離散フーリエ基底である。実際、フーリエ基底で T を書き直すと非対角成分が 2\times10^{-15}—対角行列になる。
これが畳み込み定理である。「畳み込みはフーリエ領域で積になる」という第4章第2節の定理が、対称性の側から出てきた。
8. 群畳み込みと等変ネットワーク
平行移動でうまくいったなら、他の群でも同じことができるのではないか。できる。Cohen と Welling (2016) の群同変畳み込みネットワーク(G-CNN)である。
群畳み込み
平行移動の畳み込みは \sum_m k[n-m]x[m] だった。n - m という差は、平行移動群における n \ast m^{-1} にあたる。ならば一般の群 G に対して、こう定義すればよい。
(k \star x)(g) = \sum_{h \in G} k(g \ast h^{-1})\, x(h)
これが群畳み込みである。G が平行移動群なら通常の畳み込みに戻る。
前節の証明は、平行移動群に固有の性質をほとんど使っていない。「線形かつ G 同変な作用素は群畳み込みである」という一般化が、同じ筋で示せる。
実装上の要点
回転同変な CNN を作りたいとしよう。G を「平行移動 + 90度単位の回転」の群(p4 群)とする。
第一層。入力は画像(平行移動群の上の関数)だが、出力は G の上の関数になる。実装としては、フィルタを4通りに回転させたものをそれぞれ畳み込み、4枚の特徴マップを得る。
第二層以降。入力も出力も G の上の関数である。上の群畳み込みの式をそのまま実装する。回転成分どうしが混ざり合う—これが第4節で言った「一般の同変」の具体例である。
最後。回転成分について最大値を取る(あるいは平均する)と、回転不変な出力が得られる。
この最後の操作を見て、既視感を覚えてほしい。第4章の複雑細胞である。単純細胞は位相に依存する応答をし、複雑細胞はそれらの二乗和を取って位相不変になった。あれは「位相のずらし」という群に対して、軌道上で足し合わせる操作だった。群同変ネットワークのプーリングと、まったく同じ構造である。
得られるもの
G-CNN の利点は、第1節で述べた通りである。回転したデータで水増し(data augmentation)しなくても回転に強い。しかも「だいたい強い」ではなく、構造として厳密に同変である。
限界も述べておく。扱える群は、あらかじめ決めておかねばならない(この制約は第10節で改めて扱う)。そして現実の画像には厳密な対称性はない(照明があるから、上下反転した顔は不自然に見える)。近似的な対称性をどう扱うかは、いまも研究課題である。
9. 幾何学的深層学習という統一
ここまでの話を、もっと大きな枠組みに置き直そう。
Bronstein、Bruna、Cohen、Veličković (2021) は、深層学習のアーキテクチャを「どんな対称性を仮定しているか」で整理することを提案した。この見方は Erlangen プログラムになぞらえられている。
Erlangen プログラムとは
1872年、Felix Klein は幾何学の分類について画期的な提案をした。当時、ユークリッド幾何・射影幾何・アフィン幾何・双曲幾何などが乱立していた。Klein の主張はこうである—それぞれの幾何学は、「どの変換群のもとで不変な性質を研究するか」で特徴づけられる。
ユークリッド幾何は合同変換群(回転・平行移動・鏡映)のもとで不変な性質を扱う。だから長さや角度が意味を持つ。射影幾何はより大きな射影変換群を許すので、長さも角度も意味を失い、代わりに共線性や複比が残る。
群を指定すれば幾何学が決まる。これが Erlangen プログラムである。
深層学習への翻案
Bronstein らの主張は、深層学習のアーキテクチャにも同じ整理が効くというものである。
| アーキテクチャ | 定義域 | 対称性の群 |
|---|---|---|
| CNN | 格子 | 平行移動群 |
| GNN | グラフ | ノードの置換群 S_n |
| Transformer | 集合 | 置換群(位置符号化で一部破る) |
| RNN | 系列 | 時間方向の平行移動 |
| 球面 CNN | 球面 | 回転群 SO(3) |
| 同変メッシュネット | 多様体 | ゲージ変換 |
こう並べると、これらが別々の発明ではないことが見えてくる。すべて「定義域とその対称性を指定し、同変な層を積み、最後に不変化する」という同じレシピの実装である。
そして本書の文脈で強調したいのは、この枠組みの副産物のほうである。この見方は、新しいアーキテクチャを設計する手順を与える。データがどんな空間に住み、どんな対称性を持つかが分かれば、そこから同変な層を構成できる。分子(SE(3) 対称性)、タンパク質、物理シミュレーション—近年の応用の多くが、この筋道で作られている。
脳への含意
脳の側にも、この見方を持ち込めるだろうか。
視覚系については、対応がかなり明瞭である。網膜部位対応(retinotopy)は「格子」という定義域を、受容野の位置不変性は平行移動群を与える。第4章から本章まで辿ってきたのは、まさにこの構造だった。
嗅覚系はどうか。匂い分子の空間には格子構造も自然な対称性もない。だから嗅球の地図は視覚野のような整然とした構造を持たない—と考えるのは魅力的な仮説だが、確かめられてはいない。
海馬の場所細胞と格子細胞はどうか。格子細胞の六角格子は、平面の並進対称性を離散化したもののように見える。実際、格子細胞を「空間の対称性を符号化する基底」と見る理論的研究がある。だがなぜ六角格子なのかについては、効率的符号化の観点からの説明が提案されている段階で、決着していない。
10. 構成性
対称性の話の締めくくりとして、構成性(compositionality)に触れておきたい。同変性と近い場所にあり、しばしば混同されるが、別の概念である。
定義と例
構成性とは、全体の意味が、部分の意味とその組み合わせ方で決まるという性質である。言語学では Frege の原理として知られる。「赤い車」の意味は「赤い」と「車」から決まる。だから「緑の飛行機」を一度も聞いたことがなくても理解できる。
視覚でも同じことが言える。物体は形・色・材質・位置・大きさといった属性の組み合わせで記述できる。「紫色のキリン」を見たことがなくても認識できるのは、色と形が独立に処理され、組み合わされているからだ、という説明になる。
同変性との関係
構成性と同変性は、どうつながるか。
属性ごとに独立な群作用がある状況を考えよう。色を変える操作の群 G_{\text{color}}、位置を変える群 G_{\text{pos}} があり、表現がそれぞれに対して同変だとする。すると表現空間は、色に対応する部分と位置に対応する部分に分かれる。
このとき、色を変えても位置の成分は動かない。だから訓練で見たことのない色と位置の組み合わせに対しても、正しい表現が構成できる。これが構成的汎化(compositional generalization)である。
つまり—同変な構造があると、構成的な汎化が可能になる。対称性が「見たことのない組み合わせ」への外挿を支えている、という主張である。
構成性がないと何が起きるか ── 出力次元崩壊
構成性の効き目は、それが失われた場合を見ると分かりやすい。脳活動からの画像再構成(第15章第10節)で、この失敗が具体的な形で観察されている。
脳活動から画像特徴へ写す線形の翻訳器を、限られた数の脳画像ペアで学習させるとしよう。訓練刺激が特徴空間の中で固まっていると、翻訳器が出力できる方向が、その固まりの張る部分空間に潰れてしまう。 Shirakawa ら (2025) はこれを出力次元崩壊(output dimension collapse)と呼んだ。
崩壊が起きると何が困るか。訓練で見ていない刺激に対しても、訓練カテゴリのどれかに引き寄せられた出力しか出せない。 それらしい絵は出るが、それは再構成ではなく分類に近い。第9章の内挿と外挿の区別が、ここでは出力側で問題になっている。
構成性は、この崩壊への処方箋になる。 属性が独立な成分として表現されていれば、訓練で見た組み合わせが少なくても、成分の組み合わせとして新しい出力を作れる。N 個の属性がそれぞれ独立なら、覆える組み合わせは積で増える—訓練データを指数的に増やさなくてよい。多様な出力を組み合わせで表現できることが、そのままゼロショットの再構成を可能にする。
Otsuka、Nagano と Kamitani (2026) は、この状況を数学的に詰めている。素朴な多変量線形回帰とスパースな線形回帰を、訓練標本数と潜在特徴の次元数の比(データスケール)の関数として比較すると、脳から特徴への写像がスパースであるとき、変数選択がデータスケールの小さい領域で予測誤差を下げることが示せる。さらに、脳活動を使わずに崩壊の程度を診断する手続きも与えられている。
表現の作り方が、汎化の届く範囲を決めている。 これは本章が対称性の側から述べてきたことの、実務側からの裏書きである。
そして留保
だが、ここで慎重になっておきたい。
第9章第8節で扱った Direct Fit to Nature の主張を思い出してほしい。Hasson らは、脳もネットワークも「簡潔な規則を発見している」のではなく「高次元の密なサンプリングの上で内挿している」のだと論じた。もしそれが正しいなら、「構成的に汎化している」ように見える現象の多くは、実は訓練分布が十分に広かっただけかもしれない。
構成的汎化と、密な被覆による内挿。この二つを実験的に切り分けるのは、見かけよりずっと難しい。「訓練で見ていない組み合わせ」だと思っていたものが、実は表現空間の中では訓練データに囲まれていた—ということが起こりうるからだ。
そして本章の枠組み自体にも限界がある。対称性を設計者が指定しなければならない。世界のどんな変換が「意味を変えない」のかを、あらかじめ知っている必要がある。だが脳は、それを教わらずに獲得したはずである。対称性そのものを学習するという問題は、まだ十分に解かれていない。
この留保は、次章以降への橋にもなる。第17章では「脳とAIの表現は収束するのか」という問いを扱うが、そこで問題になるのも同じ構造である—何が保たれているかを言うには、何を許すかを先に決めねばならない。第12章の測定論と本章の対称性は、その一点で通じている。
そしてもう一つ、遠い橋がかかっている。 構成性は、いまは「訓練で見ていない組み合わせに届く」という汎化の話として書いた。だが第18章第8節では、これが「一つの表現を多くの受け手が別々に使える」ことの保証として読み直される。属性が分かれていれば、色だけを使う受け手も、形だけを使う受け手も作れるからだ。設計の話が、表象とは何かという問いに接続する。
確認問題
[確認]f(g\cdot x) = \rho(g) f(x) において、不変・共変・同変がそれぞれ \rho の何に対応するかを述べよ。(第4節)
[考える]「中間層は同変にして、最後に不変化する」という設計原則の理由を説明せよ。最初から不変にすると何が失われるか。(第4節)
[導出]基底を e'_j = \sum_i A^i_{\ j} e_i で取り替えたとき、ベクトルの成分が A^{-1} で変換されることを導出せよ。(第5節)
[確認]第11章の J^\top J が「計量」と呼べる理由を、共変・反変の言葉で説明せよ。(第5節・第11章第4節)
[確認]第一準同型定理 G/\ker f \cong \mathrm{Im}\, f を、表現学習の文脈で解釈せよ。核と像はそれぞれ何にあたるか。(第6節)
[導出]「線形かつ平行移動同変な作用素は畳み込みである」ことを、本文の四段階の証明を自分で再現して示せ。(第7節)
[考える]CNN の重み共有が「効率のため」ではなく「対称性の帰結」である理由を述べよ。(第7節・第8章第7節)
[考える]同変性が構成的汎化を支えるという主張を説明せよ。またその主張に対して、第9章の Direct Fit の議論からどんな留保が付くか。(第10節・第9章第8節)
参考文献
- 岡野原大輔『対称性と機械学習』 — 日本語で読める最良の入口。本章の内容をより詳しく
- Cohen, T. & Welling, M. (2016) Group equivariant convolutional networks — G-CNN の原典[8節]
- Bronstein, M. M. et al. (2021) Geometric deep learning: grids, groups, graphs, geodesics, and gauges — 幾何学的深層学習の綱領[9節]
- Bonhoeffer, T. & Grinvald, A. (1991) Iso-orientation domains in cat visual cortex are arranged in pinwheel-like patterns. Nature — 方位マップ[コラム C11]
- Ohki, K. et al. (2005) Functional imaging with cellular resolution reveals precise micro-architecture in visual cortex. Nature — 齧歯類に方位マップがないこと[コラム C11]
- Shirakawa, K. et al. (2025) Spurious reconstruction from brain activity. Neural Networks — 出力次元崩壊[10節・第15章第10節]
- Otsuka, K., Nagano, Y. & Kamitani, Y. (2026) Overcoming output dimension collapse. TMLR — スパース性による打開[10節]