1 定義と基本性質

XOR問題(排他的論理和問題)は、二値入力に対する排他的論理和(XOR)関数をニューラルネットワークで表現・学習できるかを問う課題である。XOR関数は論理演算の一種であり、二つの入力が異なる場合にのみ真(1)を出力し、同じ場合には偽(0)を出力する。この関数は単純な論理ゲートとして広く知られるが、機械学習文脈ではその線形分離不可能性が重要な意味を持つ。

1.1 XOR関数の真理値

XOR関数の真理値表は、二つの二値入力(x1, x2)に対する出力yを以下のように定義する。入力が(0,0)のとき出力0、(0,1)のとき1、(1,0)のとき1、(1,1)のとき0となる。このパターンはAND論理積)やOR(論理和)と異なり、同一の入力値が同じ出力を返さない点が特徴である。具体的な値の組は、{(0,0)→0, (0,1)→1, (1,0)→1, (1,1)→0}である。

1.2 線形分離不可能性

XOR関数は線形分離不可能な関数の代表例である。線形分離可能性とは、二次元平面上で一つの直線によって二つのクラス(出力0と1)を完全に分離できる性質を指す。XOR関数の場合、出力0の点(0,0)と(1,1)は対角線上に位置し、出力1の点(0,1)と(1,0)はもう一方の対角線上に位置する。これらの四つの点を一つの直線で二分することは幾何学的に不可能であり、これは線形分類器の限界を端的に示す。

2 パーセプトロンとXOR問題

2.1 単層パーセプトロンの限界

単層パーセプトロンは入力層出力層からなる最も単純なニューラルネットワークであり、重み付き和とステップ関数(またはシグモイド関数)を用いて分類を行う。単層パーセプトロンは線形分離可能な問題(ANDやORなど)を学習できるが、線形分離不可能なXOR関数は表現できない。これは、出力ニューロンの決定境界が入力空間上で超平面(二次元では直線)に限られるためである。単層パーセプトロンがXORを学習しようとすると、どのような重みを設定しても2パターンの誤分類が生じる。

2.2 ミンスキー・パパートの批判

1969年、マービン・ミンスキーシーモア・パパートは著書『パーセプトロン』において、単層パーセプトロンがXORを含む線形分離不可能な問題を解けないことを数学的に証明した。彼らはパーセプトロンの表現能力を厳密に分析し、隠れ層を持たないネットワークの限界を明らかにした。この批判は当時のニューラルネットワーク研究に大きな衝撃を与え、研究資金や関心が大幅に減少するきっかけとなった。ただし、ミンスキーとパパートは多層ネットワークの可能性を完全に否定したわけではなく、多層化による解決の必要性を示唆していた点が後に再評価される。

3 多層パーセプトロンによる解決

3.1 隠れ層の導入

3.1.1 ニューラルネットワークの構造変更

XOR問題を解決するには、単層のパーセプトロンを多層化する必要がある。具体的には、入力層と出力層の間に一つ以上の隠れ層(中間層)を追加する。この構造を持つネットワークは多層パーセプトロン(MLP)と呼ばれる。XOR関数の学習には、隠れ層に少なくとも2つのニューロンを持つネットワークで十分であることが知られている。隠れ層は入力空間を非線形に変換し、出力層で線形分離可能な表現を得ることを可能にする。

3.1.2 非線形活性化関数の必要性

隠れ層の導入だけでは不十分であり、各ニューロンには非線形活性化関数が必要となる。線形活性化関数のみでは、隠れ層を重ねても全体として線形変換に退化してしまう。XOR問題を解くには、シグモイド関数やtanh関数ReLU関数などの非線形活性化関数が用いられる。これにより、ネットワークは入力空間の複雑な写像を学習できるようになる。

3.2 バックプロパゲーション学習

3.2.1 誤差勾配の計算

多層パーセプトロンの学習には、誤差逆伝播法(バックプロパゲーション)が用いられる。この手法では、出力層で計算された誤差(損失関数の値)を、連鎖律を用いて各層の重みに対する勾配に変換する。具体的には、出力層から入力層に向かって各ニューロンの誤差項を順次計算し、隠れ層のユニットが出力層の誤差にどの程度寄与したかを定量化する。この過程により、ネットワーク全体の重みを調整するための勾配が得られる。

3.2.2 重み更新アルゴリズム

勾配が計算された後、確率的勾配降下法(SGD)などの最適化アルゴリズムを用いて重みが更新される。各重みは、学習率に誤差勾配を乗じた値だけ減少(または増加)される。この手続きを訓練データに対して繰り返し適用することで、ネットワークは徐々にXOR関数を近似するようになる。バックプロパゲーションは局所的な勾配情報のみを用いるため計算効率が高く、多くのニューラルネットワーク学習の基盤となった。

3.3 典型的な学習例

3.3.1 隠れニューロン数2のネットワーク

XOR問題を解く最も典型的なネットワーク構成は、入力層2ユニット、隠れ層2ユニット、出力層1ユニットの多層パーセプトロンである。隠れ層の各ニューロンは、入力空間を非線形に写像し、互いに直交するような決定境界を形成する。出力層はこれらの内部表現を組み合わせて最終的な分類を行う。この最小構成は、XOR問題が本質的に2つの線形分離可能な部分問題に分解できることを示している。

3.3.2 学習収束の様子

バックプロパゲーションによる学習を開始すると、初期状態ではランダムな重みのため出力は無意味である。訓練を繰り返すうちに誤差が減少し、数百から数千エポック(全データの反復回数)でXOR関数の完全一致に達する。学習過程では、隠れ層のニューロンが徐々に入力パターンに対応する特徴検出器として機能するようになる。収束後、ネットワークは4つの入力パターンすべてに対して正しい出力(0または1)を返す。

4 歴史的意義と影響

4.1 ニューラルネットワーク研究の停滞

ミンスキーとパパートの『パーセプトロン』は、単層パーセプトロンの限界を厳密に示したことで、1970年代から1980年代前半にかけてニューラルネットワーク研究の大幅な停滞をもたらした。この時期は「第一次ニューラルネットワーク冬の時代」と呼ばれ、多くの研究者がシンボリック人工知能やルールベースシステムに軸足を移した。研究資金の減少や学会での発表機会の縮小が生じ、ニューラルネットワークは学術的に周辺的な分野とみなされるようになった。

4.2 再興とディープラーニングへの橋渡し

1986年にデビッド・ラメルハート、ジェフリー・ヒントン、ロナルド・ウィリアムズらが誤差逆伝播法を再発見・普及させたことで、多層パーセプトロンによるXOR問題の解決が可能となった。これにより、ミンスキー・パパートの批判は実質的に克服され、ニューラルネットワーク研究は再興した。XOR問題の解決は、複雑な非線形問題をニューラルネットワークが扱えることを象徴的に示し、その後のディープラーニング(深層学習)への道を切り開いた。

4.3 現代の機械学習教育における役割

現在、XOR問題は機械学習やニューラルネットワークの入門教育において不可欠な教材である。学生はこの問題を通じて、線形分離可能性の概念、隠れ層の必要性、バックプロパゲーションの動作原理を体験的に理解できる。また、フレームワークを使った簡単な実装例としても頻繁に用いられ、ニューラルネットワークの理論と実践を結びつける役割を果たしている。XOR問題はその単純さゆえに、深層学習の根本的な考え方を学ぶための出発点として今なお価値を持つ。