G検定(ジェネラリスト検定)
たそうぱーせぷとろん
多層パーセプトロン
MLP
Multi-Layer Perceptron
多層パーセプトロンは、入力層と出力層の間に1つ以上の隠れ層を持つニューラルネットワークです。1つひとつのニューロンの計算は線形ですが、隠れ層を持つことで入力データを別のパラメータの組み合わせで再構成できるようになります。
詳しい説明
入力層と出力層だけのモデルとの違い
入力層と出力層だけのモデルは、y' = b + w1×x1 + w2×x2 + w3×x3の形をした線形モデルです。x1、x2、x3が入力ノード、y'が出力ノードです。重みやバイアスの値をどう調整しても、入力と出力の関係は線形のまま変わりません。
多層パーセプトロンでは、入力層と出力層の間に層を追加します。この追加した層を隠れ層と呼び、隠れ層の中のノードをニューロンと呼びます。ニューラルネットワークはすべて、入力層、出力層、その間に置く任意の数の隠れ層でできています。
隠れ層のニューロンの値の求め方
隠れ層の各ニューロンの値は、線形モデルの出力と同じ方法で求めます。前の層の各入力にそれぞれ固有の重みを掛けて合計し、そこにバイアスを足します。次の層(たとえば出力層)の値は、隠れ層のニューロンの値を入力として同じように計算します。
隠れ層を加えても計算自体は線形のまま
隠れ層を加えると、モデルは別のパラメータの組を使って入力データを組み合わせ直せるようになります。ただし、隠れ層の各ニューロンの計算も、出力層の計算も、掛け算と足し算だけの線形計算です。隠れ層の値を出力の式に代入して整理すると、モデル全体としても線形のままであることが分かります。層を重ねるだけでは非線形の関係を学習できず、非線形性を持たせるには活性化関数という仕組みが必要です。活性化関数の詳しい説明は別の語で扱います。
パラメータ数を数える例
入力ノードが3個で、4個のニューロンを持つ隠れ層を1つ加え、出力ノードが1個のモデルを考えます。
- 隠れ層: ニューロン1個あたり、重み3個とバイアス1個で4パラメータです。4個のニューロンで4 × 4 = 16パラメータになります。
- 出力層: 隠れ層の4個の値に対する重み4個とバイアス1個で、5パラメータです。
- 合計: 16 + 5 = 21パラメータです。
シラバスでの位置づけ
多層パーセプトロンは、G検定シラバス2024第1.4版の中項目11 ニューラルネットワークとディープラーニングのキーワードに含まれています。
試験で問われること
G検定
- 多層パーセプトロンは、入力層と出力層の間に1つ以上の隠れ層を持つニューラルネットワークで、隠れ層の中のノードはニューロンと呼ばれる。
- 隠れ層の各ニューロンの値は、前の層の各入力とそれぞれの重みを掛けた合計にバイアスを足して求める。
- 入力層と出力層だけのモデルは、重みやバイアスをどう調整しても線形モデルのままである。
- 隠れ層を加えても各ニューロンの計算自体は線形であり、モデル全体も線形のままである。非線形の関係を学習するには活性化関数が必要である。
- パラメータ数は層ごとに、重みの数とバイアスの数を足して数える。入力3個、隠れ層のニューロン4個、出力1個なら、16と5で合計21になる。
最終更新日: 2026/09/23