「これは丸、これは三角」と例を見せるだけで、機械が区別の仕方を覚える。今日なら珍しくない発想ですが、人が判断規則を一つずつ書く方法とは、出発点が大きく違います。どこを見れば区別できるのか、その手がかりの重みを機械自身に調整させるからです。
1950年代にフランク・ローゼンブラットが研究したパーセプトロンは、この学習の考え方を代表する存在でした。一方、AI史では「単純な問題を解けないと証明され、ニューラルネットワークが衰退した」という短い物語にもなりがちです。本当に重要なのは、何が解けなかったかを、入力の表し方と機械の構造に分けて理解することです。
答えの規則ではなく、手がかりの重みを調整する学習
説明用に、果物を二種類へ分ける機械を考えましょう。入力は色の濃さと大きさという二つの数値です。機械はそれぞれに重みを掛け、合計が一定の境界を超えたら種類A、それ以外は種類Bと判断します。最初の重みが適当なら、当然、間違いも出るでしょう。
そこで、正解と違ったときに重みを修正します。大きい果物を種類Aと判定すべきなのにBと答えたなら、大きさがAの判断へ寄与する方向へ。すべての規則を言葉で記述する代わりに、例を通じて判断の境界を動かすのです。
この説明は、基本的な線形分類器としてのパーセプトロンを単純化したものです。ローゼンブラットの歴史上の構想や装置全体には、感覚入力から特徴を作る部分なども含まれていました。「1950年代の装置は、二つの数字を足すだけだった」と受け取るのは正確ではありません。
一本の線で分けられる問題、分けられない問題
二つの特徴を使う分類なら、各データを平面上の点として置けます。横軸を大きさ、縦軸を色の濃さにすれば、機械の判断境界は一本の直線として表せる。重みを変えることは、その線の傾きや位置を変えることに相当します。
もし種類Aが右側、種類Bが左側にまとまっていれば、一本の線で分けられるでしょう。ところがAとBが交互に入り組んでいたら、どれほど線を回転させてもすべて正しく分けられないことがあります。学習時間を延ばせば必ず解決する問題ではなく、選んだ表現で実現できる境界の形に限界があるのです。
ここに、学習できることの二つの条件が表れます。一つは、欲しい答えを表現できる構造があること。もう一つは、その構造の適切な設定を見つける学習法があることです。前者がなければ練習の回数を増やしても届かず、前者があっても後者が難しければ、実際には学べません。
XORが示す、四つの点の意外な難しさ
この限界の説明によく使われるのがXORです。二つの入力が同じなら0、違えば1を返します。入力は0と1だけなので、組合せは四つしかありません。人間にはすぐ分かる規則ですが、二つの入力をそのまま使う単純な線形分類器では分けられないのです。
四つの入力を正方形の頂点に置くと、答えが1になる二点は対角線上に並び、答えが0になる二点はもう一方の対角線上に並びます。一本の直線で片方の対角の二点だけを囲むことはできません。問題の件数が少ないことと、選んだモデルにとって簡単であることは別でした。
| x | y | XOR | x + y − 2xy |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 0 |
元の二入力では単純な直線で分類できませんが、積xyを特徴として加えると表し方が変わります。
ただし、「XORを解けない」という言葉には条件があります。ここで解けないのは、元の二つの入力に対して一本の線で判断する構造です。あらゆるニューラルネットワークがXORを解けない、という主張ではありません。限界を述べるときには、どんな入力と構造についての限界なのかが欠かせないのです。
特徴を作り直せば、同じデータでも境界が変わる
XORに「二つの入力の積」という新しい特徴を足すと、状況は変わります。入力をxとyとしてx+y−2xyを計算すれば、同じ入力では0、違う入力では1。元の平面では直線にできなかった関係を、新しい特徴を使って表し直せたのです。
別の方法は、途中の層で複数の判断を組み合わせることです。「少なくとも片方が1」と「両方とも1」を区別し、前者であり後者ではない場合を選べばXORになります。途中の計算が新しい特徴を作り、最後の層がそれを利用する。多層のネットワークが持つ意味を、小さな例から確かめられます。
もっとも、この例では役立つ特徴を人がすでに知っています。写真の中の物体を認識する場合には、何を中間の特徴にすればよいのかが分かりません。角、模様、部分の配置などを、学習でどう作らせるか。パーセプトロンの先に現れた大きな課題は、単に層を増やすことではなく、その途中まで学習させる方法でした。
1969年の批判を、全ニューラルネットの否定にしない理由
マーヴィン・ミンスキーとシーモア・パパートの1969年の著作『Perceptrons』は、特定のパーセプトロンの能力と限界を数学的に調べたものとして知られています。初期の楽観に対する重要な批判でしたが、すべての多層ネットワークが役に立たないと証明した、と説明するのは誤りです。
当時の難しさには、理論上の限界だけでなく、計算資源や学習方法の問題もありました。多層なら表現できると分かっていても、膨大な重みを適切に調整できなければ実用にはつながりません。現在の成功を知っている私たちは「層を増やせばよかった」と考えがちですが、そこに必要な手段こそが未解決だったわけです。
また、AI研究全体の資金や関心の変化を、一冊の著作だけで説明することもできません。機械翻訳、ロボット、記号処理などは、それぞれ異なる課題と評価を抱えていました。パーセプトロンへの批判と、複数の領域で起きた期待の後退は、関連があっても同一の出来事ではありません。
脳に似た名前と、数学的な道具としての性格
ニューラルネットワークには、ニューロン、発火、結合といった脳を連想させる言葉が使われます。生物の神経系に着想を得たことは重要ですが、数学的な素子が脳細胞のすべてを再現しているわけではありません。入力を重み付きで集めて変換するという単純化にも、大きな隔たりがあります。
飛行機が鳥の羽ばたきを再現せずに飛べるように、学習する計算機も、人間の脳を細部まで複製する必要があるとは限らないでしょう。ただし、これは両者が同じ原理だという証明でもありません。生物の説明モデルとして評価する場合と、分類に使う計算手法として評価する場合では、確かめるべきことが違います。
パーセプトロンがAI史で重要なのは、機械の中に小さな人間を作ったからではありません。入力と答えの間にある調整可能な関係を、経験から変える問題として扱ったからです。この考え方は、後の巨大なモデルでも、より複雑な形で続いています。
小さな失敗が教えた、モデル選びの本質
XORの教訓は、「簡単な問題も解けない昔のAI」という笑い話ではありません。データを増やすべきなのか、特徴を変えるべきなのか、モデルの構造を変えるべきなのかを分ける、現在にも通じる例です。足りないものを取り違えると、努力を増やしても改善しない場合があります。
たとえば、温度だけで服装を選ぶモデルに、風や雨の影響まで当てさせるのは無理があります。温度の記録を何倍に増やしても、入力に含めていない条件は区別できないかもしれません。逆に必要な情報がそろっていても、単純すぎる関係式では使い切れない。情報の不足と表現力の不足は、別々に考える必要があるのです。
後の深層学習は、このうち特徴を作る部分まで学習する力を大きく伸ばしました。しかし、入力、構造、学習法、評価条件を分ける必要がなくなったわけではありません。四つの点をどう分けるかという小さな問題は、AIがなぜ伸び、なぜ行き詰まるのかを理解する入口として、今もよく働きます。