パーセプトロン
Perceptron
概要
パーセプトロン(Perceptron)は、1957年にフランク・ローゼンブラット(Frank Rosenblatt)によって提案された、最も基本的なニューラルネットワークのモデルです。複数の入力に対してそれぞれ重みを掛けて合計し、その合計値が閾値を超えるかどうかで出力を決定する、非常にシンプルな構造を持っています。
パーセプトロンは「線形分離可能」な問題のみを解くことができるという制約がありますが、後にこの制約を克服するために多層パーセプトロン(MLP)が開発され、現代のディープラーニングへと発展していきました。G検定では、パーセプトロンの仕組みとその歴史的な限界、そして多層パーセプトロンへの発展が重要な出題ポイントとなっています。
詳細解説
単純パーセプトロンの構造
単純パーセプトロン(Simple Perceptron)は、入力層と出力層の2層のみで構成されるニューラルネットワークです。その動作は以下のステップで行われます。
- 複数の入力値(x1, x2, ..., xn)にそれぞれ対応する重み(w1, w2, ..., wn)を掛ける
- 重み付き和を計算する(w1*x1 + w2*x2 + ... + wn*xn)
- バイアス(b)を加える
- 合計値が閾値を超える場合は1を、超えない場合は0を出力する(ステップ関数)
この仕組みにより、パーセプトロンはAND(論理積)やOR(論理和)といった論理演算を学習して実行できます。学習の際には、予測値と正解値の差に応じて重みを更新していきます。
線形分離可能性とXOR問題
単純パーセプトロンの最大の制約は、線形分離可能な問題しか解けないということです。「線形分離可能」とは、2つのクラスを1本の直線(または超平面)で分けることができる状態を指します。
AND演算やOR演算は線形分離可能であるため、単純パーセプトロンで解くことができます。しかし、XOR(排他的論理和)演算は線形分離不可能であるため、単純パーセプトロンでは正しく分類できません。XOR問題とは、2つの入力が異なる場合に1を、同じ場合に0を出力する問題です。この問題を2次元の平面にプロットすると、1本の直線では2つのクラスを分けることができないことが視覚的にも確認できます。
ミンスキーとパパートの批判
1969年、MITのマービン・ミンスキー(Marvin Minsky)とシーモア・パパート(Seymour Papert)は、著書『Perceptrons』において、単純パーセプトロンの限界を数学的に証明しました。特にXOR問題を解けないことを明確に示し、当時のニューラルネットワーク研究に対して大きな批判を行いました。この批判は研究者コミュニティに大きな影響を与え、その後約10年間にわたるニューラルネットワーク研究の停滞期(いわゆる「AIの冬」の一因)をもたらしました。
多層パーセプトロン(MLP)
単純パーセプトロンの限界を克服するために開発されたのが、多層パーセプトロン(Multi-Layer Perceptron / MLP)です。多層パーセプトロンは、入力層と出力層の間に1つ以上の中間層(隠れ層)を持つニューラルネットワークです。
中間層を追加することで、非線形な決定境界を学習できるようになり、XOR問題を含むより複雑な問題を解くことが可能になりました。1986年にデビッド・ラメルハートらが誤差逆伝播法を広く普及させたことで、多層パーセプトロンの重みを効率的に学習するアルゴリズムが確立し、ニューラルネットワーク研究は再び活性化しました。
多層パーセプトロンでは、中間層の各ニューロンに非線形の活性化関数(シグモイド関数、ReLUなど)を適用することが重要です。もし活性化関数が線形であれば、何層重ねても全体として線形変換にしかならず、多層化の意味がなくなってしまいます。
歴史・背景
パーセプトロンの歴史は、ニューラルネットワーク研究の栄枯盛衰の歴史でもあります。
- 1943年:マカロック(McCulloch)とピッツ(Pitts)が、神経細胞を数学的にモデル化した「形式ニューロン」を発表。パーセプトロンの理論的基盤となりました。
- 1957年:フランク・ローゼンブラットがパーセプトロンを発明。コーネル航空研究所のMark I Perceptronマシンで実装しました。当時は「考える機械」としてメディアでも大きく取り上げられました。
- 1969年:ミンスキーとパパートが『Perceptrons』を出版し、単純パーセプトロンの限界を数学的に証明。ニューラルネットワーク研究に停滞期をもたらしました。
- 1986年:ラメルハートらが誤差逆伝播法を発表。多層パーセプトロンの学習が実用的になり、ニューラルネットワーク研究が復活しました。
具体的な事例
パーセプトロンとその発展形である多層パーセプトロンは、さまざまな場面で活用されています。
- 論理演算の学習:単純パーセプトロンでAND、OR、NANDなどの基本的な論理演算を学習できます。これはニューラルネットワークの学習原理を理解するための教材として広く使われています。
- 二値分類問題:メールのスパム判定、疾患の有無の判定など、2クラスの分類問題に対して単純パーセプトロンが利用できます。
- 多層パーセプトロンの応用:手書き数字認識(MNISTデータセット)、顧客の購買予測、株価変動の予測など、多くの実用的なタスクに多層パーセプトロンが応用されています。
- ディープラーニングの基盤:畳み込みニューラルネットワーク(CNN)やリカレントニューラルネットワーク(RNN)など、現代のディープラーニングモデルはすべて多層パーセプトロンの考え方を基盤としています。
G検定での出題ポイント
G検定では、パーセプトロンに関して以下のような内容が出題される傾向があります。
- パーセプトロンの基本構造(入力、重み、バイアス、活性化関数)
- フランク・ローゼンブラットが1957年に提案したこと
- 単純パーセプトロンでは線形分離可能な問題しか解けないこと
- XOR問題が単純パーセプトロンでは解けないこと
- ミンスキーとパパートの批判(1969年『Perceptrons』)
- 多層パーセプトロン(MLP)で非線形問題が解けるようになったこと
- 誤差逆伝播法の登場による多層パーセプトロンの学習の実現
- パーセプトロンは1957年にフランク・ローゼンブラットが提案した最も基本的なニューラルネットワーク
- 単純パーセプトロンは線形分離可能な問題のみ解けるため、XOR問題は解けない
- 1969年ミンスキーとパパートが『Perceptrons』で限界を証明し、研究停滞の一因となった
- 多層パーセプトロン(MLP)は中間層を持ち、非線形問題を解ける
- 多層パーセプトロンの学習には誤差逆伝播法(1986年ラメルハート)が用いられる