AI資格ドリル
資格を選ぶ↓

用語比較

単純パーセプトロンと多層パーセプトロンの違い(XOR問題と隠れ層でG検定に出る見分け方)

単純パーセプトロンは、中間層(隠れ層)を持たず、入力層と出力層だけで構成されるモデルです。多層パーセプトロンは、入力層と出力層のあいだに隠れ層を1つ以上持つモデルです。

教科書『Deep Learning』は、元の入力に直接当てはめた線形モデルはXOR関数を実装できないと述べます。隠れ層で特徴を学習し直した空間では、線形モデルでこの問題を解けます。この差が、2つのモデルの違いの核心です。

G検定の出題範囲には、ニューラルネットワークの基礎として単純パーセプトロンと多層パーセプトロンの両方が含まれます。このページは、2つの名前は覚えたものの、何ができて何ができないかを言い分けられない人向けです。

誤差逆伝播法や活性化関数の個別の比較は別のページで扱い、ここでは隠れ層の有無で何が変わるかに絞ります。

この記事の根拠と出典

各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。G検定の一次情報確認日: 2026-10-02。

結論

単純パーセプトロン

隠れ層を持たず、入力層と出力層だけで構成される。線形分離可能な問題しか解けない。

多層パーセプトロン

隠れ層を1つ以上持ち、非線形の活性化関数を通す。線形分離できない問題も扱える。

違いを表で確認

比較軸単純パーセプトロン多層パーセプトロン
構成単純パーセプトロン:入力層と出力層だけ多層パーセプトロン:入力層と出力層のあいだに隠れ層が1つ以上
表せる関数単純パーセプトロン:線形の関数(線形分離可能な問題)多層パーセプトロン:非線形の関数も近似できる
XOR問題単純パーセプトロン:解けない多層パーセプトロン:隠れ層で特徴を学習し直せば解ける
非線形の活性化関数単純パーセプトロン:隠れ層がないので、隠れ層での役割は出ない多層パーセプトロン:隠れ層で重み付き線形和のあとに通す
学習の難しさ単純パーセプトロン:scikit-learnのPerceptronの説明では、誤りのときだけモデルを更新する単純な分類アルゴリズム多層パーセプトロン:損失関数が凸でなく局所最小が複数あり、初期値で精度が変わりうる

どこで迷っているかを切り分ける

01

名前が似ているので、層の数が違うだけだと思っている人

層の数の違いは、表せる関数の範囲の違いに直結します。隠れ層がないと線形の関数にとどまり、隠れ層と非線形の活性化関数が加わると非線形の関数を近似できます。

02

隠れ層を増やせば、活性化関数なしでも複雑な関数を表せると考える人

教科書は、隠れ層の関数が線形のままだとネットワーク全体も入力の線形関数にとどまると説明します。非線形の活性化関数が必要です。

03

XOR問題が、なぜ有名な例なのかが分からない人

XOR関数は、2つの入力のうちちょうど一方が1のときに1を返す演算です。入力どうしの相互作用が答えを決めるため、線形モデルでは扱えず、隠れ層の必要性を示す最小の例になっています。

具体例で使い分ける

例 1

線形分離できない問題を、隠れ層なしで解けるかを問う場合

XOR関数を、入力に直接当てはめたモデルで実装できるかを問う設問です。

  • 教科書は、x1が0のときはx2が増えると出力を増やし、x1が1のときは減らさねばならないと説明します。
  • 線形モデルはx2に固定の係数しか掛けられず、x1の値で係数を変えられないため、この問題を解けません。

結論: 隠れ層のない単純パーセプトロンは、XOR問題を解けません。

例 2

隠れ層を足したとき、何が変わるかを問う場合

単純パーセプトロンに隠れ層を足したモデルで、何ができるようになるかを問う設問です。

  • scikit-learn公式ドキュメントは、MLPを非線形の関数近似器と説明し、ロジスティック回帰と異なり、入力と出力のあいだに非線形の隠れ層を置けると述べます。
  • 隠れ層の各ニューロンは、前の層の値の重み付き線形和に、非線形の活性化関数を適用します。

結論: 隠れ層と非線形の活性化関数により、線形分離できない問題も扱えます。

例 3

隠れ層をすべて線形にした場合を問う設問

隠れ層の関数が線形のままだと、全体がどうなるかを問う設問です。

  • 教科書は、隠れ層の関数を線形にすると、ネットワーク全体も入力の線形関数にとどまることを式で示します。
  • そのため、アフィン変換のあとに活性化関数と呼ぶ固定の非線形関数を適用します。

結論: 隠れ層があっても、活性化関数が線形では、全体は線形の関数のままです。

問題文から答えを選ぶ手順

  1. 1

    隠れ層の有無を確認する

    入力層と出力層だけなら単純パーセプトロン、隠れ層が1つ以上あれば多層パーセプトロンです。

  2. 2

    解く問題が線形分離できるかを確認する

    線形分離できる問題なら単純パーセプトロンで足ります。XORのように入力の相互作用で答えが決まる問題は、隠れ層が要ります。

  3. 3

    活性化関数が非線形かを確認する

    隠れ層を重ねても、活性化関数が線形ならモデル全体は線形です。非線形の活性化関数が条件です。

  4. 4

    学習の注意点を確認する

    隠れ層をもつMLPは損失関数が凸でなく、初期値で精度が変わりうるため、ハイパーパラメータの調整が要ります。

試験での見分け方

  • 1隠れ層がなく、線形分離可能な問題しか解けないのが、単純パーセプトロン。
  • 2隠れ層を1つ以上持ち、非線形の関数も近似できるのが、多層パーセプトロン。
  • 3XOR問題を解けないのが単純パーセプトロン、解けるのが多層パーセプトロン。
  • 4隠れ層を足しても、活性化関数が線形ならモデル全体は線形のまま。

誤答しやすい選択肢

多層にすれば、活性化関数の種類は何でもよいと考える

修正: 教科書は、隠れ層の関数が線形のままだとネットワーク全体も入力の線形関数にとどまると説明しています。非線形の活性化関数が必要です。

単純パーセプトロンはどんな分類でも解けると考える

修正: 単純パーセプトロンが解けるのは線形分離可能な問題です。XOR関数のように、入力の相互作用で答えが決まる問題は解けません。

多層パーセプトロンは、必ず最適解に収束すると考える

修正: scikit-learn公式ドキュメントは、隠れ層をもつMLPの損失関数は凸でなく局所最小が複数あるため、初期値によって検証精度が変わりうると述べています。

確認問題

Q1中間層(隠れ層)を持たず、入力層と出力層だけで構成されるのは、単純パーセプトロンと多層パーセプトロンのどちらですか?

答え: 単純パーセプトロン

多層パーセプトロンは隠れ層を1つ以上持ちます。

Q2XOR関数を実装できないのは、元の入力に直接当てはめた線形モデルと、隠れ層で特徴を学習し直したモデルのどちらですか?

答え: 元の入力に直接当てはめた線形モデル

教科書『Deep Learning』の6.1節が述べる内容です。

Q3隠れ層を重ねても、全体が入力の線形関数にとどまるのは、隠れ層の関数がどんな場合ですか?

答え: 線形の場合

そのため、アフィン変換のあとに非線形の活性化関数を適用します。

到達チェック

  • 単純パーセプトロンと多層パーセプトロンの構成の違いを言える
  • XOR問題が単純パーセプトロンで解けない理由を言える
  • 隠れ層だけでなく非線形の活性化関数が必要な理由を言える
  • 多層パーセプトロンの学習で注意する点を言える

同じ資格で次に知りたいこと

よくある質問

Q単純パーセプトロンと多層パーセプトロンの最大の違いは何ですか?

A

隠れ層の有無です。単純パーセプトロンは入力層と出力層だけで、線形分離可能な問題しか解けません。多層パーセプトロンは隠れ層を1つ以上持ち、非線形の関数も近似できます。

Qなぜ単純パーセプトロンはXOR問題を解けないのですか?

A

教科書『Deep Learning』によれば、線形モデルは入力に固定の係数しか掛けられず、x1の値に応じてx2への係数を変えられないためです。

Q隠れ層があれば活性化関数は何でもよいのですか?

A

いいえ。隠れ層の関数が線形のままだと、ネットワーク全体も入力の線形関数にとどまります。非線形の活性化関数を適用する必要があります。

Q多層パーセプトロンを使うときの注意点は何ですか?

A

scikit-learn公式ドキュメントは、損失関数が凸でなく局所最小が複数あること、隠れニューロン数・層数・反復回数の調整が要ること、特徴量のスケーリングに敏感なことを欠点に挙げています。

次に見る比較

執筆: ミナト編集部(運営者情報を見る)