コリンには、おばが 2 人いる
1986 年 10 月 9 日発行の『ネイチャー』323 巻に、4 ページの論文が載った。著者は、カリフォルニア大学サンディエゴ校のデビッド・ラメルハートとロナルド・ウィリアムズ、カーネギーメロン大学のジェフリー・ヒントンである。
例の 1 つは、2 つの家系図だった。クリストファーとペネロピら 2 組の夫婦から始まるイギリス人の 12 人と、同じ形をしたイタリア人の 12 人である。関係は父・母・夫・妻・息子・娘・おじ・おば・兄弟・姉妹・おい・めいの 12 種類で、「(人 1)の(関係)は(人 2)」の形の事実は 104 通りある。
5 層の回路のいちばん下に、人を表す 24 個と関係を表す 12 個の入力のユニットが並ぶ。「コリン」と「おば」をともすと、いちばん上の層で答えの人のユニットがともる。著者たちは 100 通りだけを 1500 回くり返して学ばせ、残りの 4 通りを尋ねた。回路は 4 つとも正しく答えた。論文の図 3 では、コリンとおばを入れたときの答えが 2 つ並ぶ。コリンには、母方のおじアーサーの妻マーガレットと、父ジェームズの姉妹ジェニファーの、2 人のおばがいるからである。
人ごとに別のユニットを使ったので、国籍も世代も入力には書かれていない。それでも学び終えた回路では、人を表す第 2 層の 6 個のユニットのうち、1 つめがイギリス人かイタリア人かを、2 つめが何代目かを、6 つめが家系のどちらの枝かを受け持っていた。
論文は結びにこう書いた。「この学習の手続きは、今の形では、脳の学習のもっともらしいモデルではない」。38 年後の 2024 年 10 月 8 日、スウェーデン王立科学アカデミーは、ノーベル物理学賞をジョン・ホップフィールドとヒントンに贈ると発表した。
何度も見つかった計算
1957 年、アメリカの心理学者フランク・ローゼンブラットが考えたパーセプトロンは、ユニットが 3 層に並ぶが、学習で直せる重みは真ん中の層と出力の層の間だけだった。
難しいのは、目標を持たない隠れたユニットの責任の量り方である。1969 年、マーヴィン・ミンスキーとシーモア・パパートは本『パーセプトロン』で、隠れたユニットの無い回路が解けない問題を数学で示した。よく例に出るのは、2 つの入力の一方だけが 1 のときに 1 を出す排他的論理和(XOR)である。2024 年のノーベル委員会の解説は、この本のあと研究に資金が回らない時期が来たと書く。
答えになる計算は、別の分野で何度も見つかっていた。1960 年、グラマン航空機のヘンリー・ケリーは、飛行の経路を少しずつ直し、性能を表す量を勾配に沿って下げる方法を発表した。例に解いたのは、太陽帆で地球の軌道から火星の軌道へ最短の時間で移る経路である。途中の小さな変化が結果に効く度合いを表す影響関数は、 と同じ役目をする。ハーバード大学のアーサー・ブライソンの組も、1960〜1961 年ごろに別に同じ種類の方法を作った。
1967 年 6 月、甘利俊一は論文「適応的なパターン分類器の理論」で、例を 1 つ見るたびに損失が減る向きへ重みを少し直す方法を解析し、ある条件のもとで、2 つの群が直線で分けきれなくても重みが最適なものに近づくことを証明した。人工知能の研究者ユルゲン・シュミットフーバーによれば、甘利は九州大学の学生とともに、直せる層を 2 つ持つ 5 層の回路をこの方法で学ばせた。シュミットフーバーはこれを、逆伝播とは別の確率的勾配降下法の例とする。
逆向きにたどる計算を、どんな計算の手順にも当てはまる形で書いた早い例が、フィンランドのセッポ・リンナインマーである。数学者アンドレアス・グリーワンクによれば、1970 年、コペンハーゲンの公園の晴れた午後に思いついたと本人は言う。知りたかったのは、計算機の丸め誤差が長い計算の答えにどれだけ響くかだった。その年のヘルシンキ大学の修士論文で、1 つ 1 つの演算の丸め誤差が答えに効く係数を、計算の終わりから逆にたどって求めた。その一部が英語で出たのは 1976 年である。本人は勾配を安く求める方法として売り込まず、1980 年代の終わりにグリーワンクが電話をかけるまで、反響はほとんど無かった。
1974 年 11 月、ハーバード大学のポール・ワーボスは博士論文「回帰を超えて」を出した。ワーボスはのちに、誤差逆伝播法の最初の実用は、この年の民族主義と社会の通信の動きを予測する模型の推定だと書いた。一方シュミットフーバーは、神経回路に当てはめた形がはっきり書かれたのは 1982 年のワーボスの論文だと見る。1985 年には、デビッド・パーカーとヤン・ルカンも似た学習法を発表し、1986 年の論文は 2 人に触れている。
先取権の評価は分かれる。シュミットフーバーは、1986 年の論文が方法の起源を引いていないと批判し、リンナインマーの 1970 年を最初の発表とする。ノーベル委員会の解説は、ラメルハートらはこの計算法を「再発明」したと書き、「より重要なこと」に、隠れた層が無ければ解けない課題を隠れた層のある回路が学べると示したことを挙げ、隠れたユニットの働きを明らかにしたことも加える。グリーワンクは、この逆向きの技法を 1960 年代の終わりから何人もが思いついてきたと書き、自分も 1987 年の夏に見つけ直したという。
証明
層を重ねた回路を考える。ユニット の出力を 、ユニット から への重みを とする。ユニット の総入力は 、出力は である。出力の層のユニット の目標を とし、誤差を 2 乗誤差 で測る。 と置く。総入力が少し増えたときの、誤差の増え方である。
-
重み が誤差を変える道は、 を通るものしかない。
-
出力のユニット では、 を で微分して、 の微分を掛ける。
-
隠れたユニット の出力は、 が出力を送る先のすべてのユニット の総入力を通して誤差を変える。多変数の連鎖律で、道ごとの効き目を足す。
-
なので、もう 1 つ を掛けると、記事の式になる。
-
1986 年の論文の はロジスティック関数である。微分は出力だけで書ける。
-
重みを勾配の逆向きに少し動かす。 は学習率である。
-
動かしたあとの誤差を 1 次のテイラー展開で見積もると、 が十分小さければ誤差は減る。
3 と 4 が「誤差を後ろへ配る」の中身である。出力の層の が分かれば、すぐ下の層の が 4 の式で決まり、さらに下の層へと続く。ユニット が受け取る分は、 から出る重み に比例する。強くつながったユニットほど、多くの責任を負う。
計算の手間も数えられる。前向きの計算は、重み 1 本につき掛け算 1 回である。後ろ向きは、3 の和で 1 回、1 で 1 回。重みが 本あっても、すべての勾配が前向きの数倍の手間で出る。重みを 1 本ずつ少し動かして誤差の差を見るなら、前向きの計算を 回くり返す。最適化の研究者フィリップ・ウルフは 1982 年に、関数と勾配を合わせた手間は関数の 倍と思われがちだが、うまく組めば普通は 1.5 倍で済む、と書いた。
ただし勾配を下るだけなので、いちばん低い谷底ではない窪み(局所的な最小)で止まることもある。1986 年の論文は、多くの課題で、それはまれだったと書く。
応用
1 回の更新を数で追う。 入力 2 個・隠れたユニット 2 個・出力 1 個の回路で、手で計算する(図示の 1 枚目)。 はロジスティック関数で、バイアスは省く。入力 から隠れたユニット への重みを , , , 、隠れたユニット から出力への重みを , とする。入力は 、目標は である。
前向き。、 で、。出力の総入力は 、出力は 。誤差は である。
後ろ向き。出力では 。隠れたユニットでは なので、、 となる。 が負なので、2 つめのユニットには逆の符号の責任が届く。
勾配は である。、、。 なので と の勾配は 0 で、今回は直らない。
学習率 で直すと、、、、 になる。もう一度前向きに計算すると、出力は 0.5 から 0.5358 に上がり、誤差は 0.125 から 0.1078 に下がる。証明の 7 の見積もりは、0.125 から勾配の 2 乗の和 0.0179 を引いた 0.1071 で、よく合う。 だけを 0.000001 増やして誤差の変化を割ると −0.02458 になり、後ろ向きに求めた値と一致する。
鏡の対称を見分ける。 1986 年の論文の最初の例は、0 と 1 を 6 個並べた入力が真ん中で左右対称かどうかを見分ける課題だった。64 通りの入力すべてを 1 周として 1425 周学ばせると、隠れたユニット 2 個だけの解が見つかった(図示の 3 枚目)。真ん中をはさんで向かい合う入力の重みは大きさが同じで符号が逆になり、片側の 3 本の大きさは 1:2:4 の比に並んだ。対称な並びなら、隠れたユニットへの重み付きの和はちょうど 0 になる。対称でない並びでは、1:2:4 の比のおかげで和が 0 にならず、どちらかの隠れたユニットが強く働いて出力を消す。論文の図の重みで 64 通りを計算し直すと、対称な 8 通りでは出力が 0.88 以上、ほかの 56 通りでは 0.16 以下だった。
重みが 1750 億個あっても。 2020 年の言語モデル GPT-3 は、パラメーターを 1750 億個持つ(トランスフォーマーの注意機構)。1 本ずつ動かして差をとるなら、勾配 1 回分に前向きの計算が 1750 億回余りいる。誤差逆伝播法なら、前向き 1 回と後ろ向き 1 回で、すべての勾配がそろう。
図示
XOR はラメルハートらの章でも最初の例になった。隠れたユニット 1 個と、入力から出力への直接の線を持つ回路は、学習率 0.5 で 4 つの入力を 558 周学んで解に着いた。何百回も試して、答えに届かない窪みに捕まったのは 2 回だけだった。イヴ・ショーヴァンの実験では、学習率 0.25 で解に着くまでの提示の回数が、隠れたユニット 2 個で平均約 245 回、32 個で約 120 回と少なくなった。
シミュレーション
右(スマホでは上)の平面で、網の濃いところほど回路の出力 が 1 に近く、太い線が の境界である。点をたたいて選び「1 歩」を押すと、その 1 点について、値が左から右へ進み、誤差 が右から左へ配られ、重みが だけ直るまでを順に見せる。「自動で学習」では点を 1 つずつ次々に学ばせ、境界が少しずつ曲がっていく。隠れたユニットが 2 個だと、円の内側を囲む境界は作れない。
広がる学問
- 情報科学 1980 年代の終わりから、ヤン・ルカンらは、画像の小さな窓ごとに同じ重みを使う畳み込みニューラルネットワークを誤差逆伝播法で学ばせた。ノーベル委員会の解説によれば、その元は福島邦彦が 1980 年に発表したネオコグニトロンで、ルカンらの方式は 1990 年代の半ばからアメリカの銀行で小切手の手書きの数字を読んだ。
- 数学 誤差逆伝播法は、プログラムに書いた計算の微分を逆向きにたどって求める「逆向きの自動微分」の、層を重ねた回路の場合である。グリーワンクによれば、勾配の手間は元の計算の手間の小さな定数倍で抑えられる。前向きの はマルコフ連鎖の と同じ形の和で、後ろ向きの は同じ重みの表を転置して掛ける。
- 工学 ケリーとブライソンの勾配の方法は、ロケットや航空機の最適な経路を求める最適制御の道具になった。グリーワンクは、逆向きの微分を、ポントリャーギンの極値原理の時間を区切った版とみなせると書く。
- 物理学 2024 年のノーベル物理学賞の理由は「人工の神経回路による機械学習を可能にした、基礎となる発見と発明」である。ヒントンの受賞の中心は統計物理の道具を使うボルツマンマシンで、その学習も勾配による方法だった。解説によれば、神経回路は 2012 年のヒッグス粒子の発見につながるデータ解析にも使われた。
- 生物学 実際の神経細胞は、ホジキン・ハクスリーのモデルが描く電気のパルスで信号を送る。誤差逆伝播法は、前向きと同じ重みを正確に逆にたどって誤差を送る必要があり、脳ではありえないと考えられてきた。2016 年、ティモシー・リリクラップらは、後ろへ送るときに掛ける重みを乱数にしても、多層の回路がいくつかの課題で同じくらいよく学べることを示した。
- 心理学 1986 年の第 8 章は、ラメルハートとジェームズ・マクレランドが編んだ『並列分散処理』の第 1 巻に入っている。単語の知覚や動詞の過去形の習得を、単純なユニットのつながりの強さで説明しようとした本である。家系図の回路の 6 個のユニットは、人を多数のユニットに分けて表す「分散表現」の例として示された。
参考文献
- D. E. Rumelhart, G. E. Hinton, R. J. Williams, "Learning representations by back-propagating errors", Nature 323 (1986), 533-536.
- D. E. Rumelhart, G. E. Hinton, R. J. Williams, "Learning Internal Representations by Error Propagation", in Parallel Distributed Processing, Vol. 1, MIT Press, 1986, 318-362.
- S. Linnainmaa, "Taylor expansion of the accumulated rounding error", BIT 16 (1976), 146-160; A. Griewank, "Who Invented the Reverse Mode of Differentiation?", Documenta Mathematica, Extra Volume ISMP (2012), 389-400.
- P. J. Werbos, "Beyond Regression", Ph.D. dissertation, Harvard University, 1974; P. J. Werbos, "Backpropagation Through Time", Proceedings of the IEEE 78 (1990), 1550-1560.
- H. J. Kelley, "Gradient Theory of Optimal Flight Paths", ARS Journal 30 (1960), 947-954; S. Amari, "A Theory of Adaptive Pattern Classifiers", IEEE Transactions on Electronic Computers EC-16 (1967), 299-307.
- The Nobel Committee for Physics, "Scientific Background to the Nobel Prize in Physics 2024"(2024年10月8日); M. L. Minsky, S. A. Papert, Perceptrons, MIT Press, 1969.
- J. Schmidhuber, "Who Invented Backpropagation?"(2014、2025 改訂); T. P. Lillicrap et al., "Random synaptic feedback weights support error backpropagation for deep learning", Nature Communications 7 (2016), 13276.