層を増やせば良くなるはず。だがある点を越えると逆に悪くなる。 数層なら、重ねるほど良くなる。だが百層重ねると奇妙なことが起きる ― 悪化するのだ。しかも丸暗記のせいではない。すでに見たものさえ当てはめられない。深さそのものが障害になった。直し方はたった一本の配線、信じがたいほど単純だ ― 各層の入力をそのまま先へ飛ばして出力に足す。
深いネットは浅いネットを真似できるはず。だができなかった。 ここに謎がある。深いネットワークは、いつでも浅いものに並べるはずだ ― 余分な層に何もさせず、信号をそのまま通せばいい。ところが、ただ重ねただけの深い積み重ねは、それすら学べなかった。バケツリレーのように:満杯のバケツを長い人の列で送ると、半分空になって届く ― 受け渡しのたびに少しこぼれる。何十もの層を越えて、信号をただ保つことを学ぶのは、難しいとわかった。
全部をやり直すな。変化だけを足せ。 H(x)=F(x)+x\mathcal{H}(x) = \mathcal{F}(x) + x ならば仕事を裏返そう。層に答えを一から作り直させるのではなく ― 足すべき補正だけを求める。入力はそのまま通り抜け、層は差分だけを供給する。校正者の赤ペンのように:ページを写し直すのではなく、変わるところだけに印をつける。平たく言えば、出力とは入力に、この層が学んだ小さな手直しを足したものだ。
今や「何もしない」が楽な初期状態になる。 F(x)→0 ⇒ H(x)=x\mathcal{F}(x)\to 0 \;\Rightarrow\; \mathcal{H}(x) = x これが何をもたらすか見てほしい。信号をそのままにするには、層は補正をゼロにするだけでいい ― すると入力はまっすぐ滑り抜ける。氷上のカーリングストーンのように:掃かずに手を離せば、来たときのまま進み続ける。恒等写像はもう学ぶのが難しいものではなく ― ただの静止状態、無償だ。層はそこからどれだけずらすかを学べばいいだけだ。
同じ配線が、学習のための高速道路になる。 ∂L∂x=∂L∂y(1+∂F∂x)\frac{\partial \mathcal{L}}{\partial x} = \frac{\partial \mathcal{L}}{\partial y}\left(1 + \frac{\partial \mathcal{F}}{\partial x}\right) もっと深い贈り物が、誤差逆伝播の数式に隠れている。スキップを微分すると、層自身の項のとなりに1が現れる。その1が学習信号をまっすぐ、薄めずに送り返す ― だから最初の層さえはっきりとそれを感じる。消防士のポールのように:てっぺんで飛びつけば、一気にまっすぐ滑り降り、どの階も飛ばして底に着く。こうして勾配消失は死ぬ。
つまりネット全体が、ひとつの累計なのだ。 xL=xℓ+∑i=ℓL−1F(xi)x_L = x_\ell + \sum_{i=\ell}^{L-1}\mathcal{F}(x_i) 引いて眺めれば、塔は溶けて消える。各ブロックは信号を置き換えるのではなく ― すべてを貫いて流れる一本の流れに、小さな更新を足す。深い特徴とは、最初の特徴に各ブロックのささやかな寄与を足しただけのものだ。瓶に落とすコインのように:水位は小さな足し算でしか上がらず、その総量こそが全履歴だ。層は信号を変換するというより、共有された一本を編集し続ける。
この一本の配線こそ、ネットが深くなれた理由だ。 スキップ以前、使えるネットワークは数十層だった。以後は数百層 ― 千層さえ ― 崩れずに学習できた。吊り橋のメインケーブルのように:端から端まで一本につながった線が、どんな一本の梁よりもはるかに長く支間を渡らせる。その同じ配線が、いま君の聞いたことのあるあらゆるトランスフォーマーのブロックを貫いている。深さは壁ではなくなり、ひとつのつまみになった。
各層がほんの少しずらすだけなら、思考はどこにある? ここに落ち着かなさがある。信号がほとんどまっすぐ流れ通り、各層が、すでにほぼ答えになっている流れに、かすかな補正を足すだけなら ― ではネットワークは本当はどこに宿るのか。せわしなくずらす層の中か、それとも、層が編集し続けてやまない静かな流れの中か。🌱 深さとは、思考者を積み上げたものでは決してなかったのかもしれない。それは、ひとつの長く、ゆっくりした考え直しなのかもしれない。