ニューラルネットワークは、脳の神経細胞をまねた単純な計算をつないだ仕組みです。G検定では層の呼び名と単純パーセプトロンの限界がよく問われます。
こんにちは、zawato(@zawato7)です!
本記事はディープラーニング入門ロードマップの第9回です。
- ニューロンをまねた「重みを掛けて足す」という基本の仕組み
- 単純パーセプトロンがXORを解けない理由と、多層化による解決
- 入力層・中間層・出力層、全結合層、順伝播という用語の意味
ニューロンをまねた仕組み|重みとバイアス
ニューラルネットワークの正体は「入力に重要度を掛けて足すだけ」の計算です。
脳の神経細胞(ニューロン)はシナプスでつながっていて、結合の強さに応じて電気信号が流れ、一定以上を受け取ると次へ信号を送ります。これを発火といいます。
この動きをまねた計算単位が単純パーセプトロン(人工ニューロン)です。入力データをそのまま使わず、一つひとつに重み(weight)という重要度を掛けて合計し、最後にバイアス(bias)を足します。
- 重み:その入力をどれだけ重視するか。シナプスの結合の強さに対応します
- バイアス:発火のしやすさを調整する下駄のような値です
- 重みとバイアスをまとめてパラメータと呼び、学習で調整されます
合計した値はそのまま次へ渡されず、変換をかける関数(活性化関数)を通してから次のノードへ引き渡されます。
単純パーセプトロンの限界|XORが解けない
入力層と出力層しか持たない単純パーセプトロンは、直線1本で分けられる問題しか解けません。
ANDやORは、入力の組み合わせを平面上の点として並べると、答えが0の組と1の組を1本の直線で分けられます。これを線形分離可能といいます。ところがXOR(排他的論理和/2つの入力が異なるときだけ1)は、どう直線を引いても分けられません。
この限界の指摘は、第1次AIブームが冷え込む一因になりました。ここは理屈より「単純パーセプトロンではXORが解けない、多層化で解決した」という流れで押さえるほうが定着します。
多層パーセプトロン|中間層を挟むと解ける
入力層と出力層のあいだに中間層を挟むと、直線では分けられない問題も扱えるようになります。
単純パーセプトロンを縦にも横にもつないだものが多層パーセプトロン、すなわちニューラルネットワークです。1つひとつのニューロンはノード(ユニット)と呼ばれ、計算内容は先ほどと同じです。縦方向のまとまりを層と呼びます。
| 層の名前 | 役割 |
|---|---|
| 入力層 | データを受け取る。ノード数は特徴量の数 |
| 中間層(隠れ層) | 値を組み合わせて特徴を作り直す。何層でも重ねられる |
| 出力層 | 予測値を出す。ノード数はクラス数などで決まる |
前の層のすべてのノードと次の層のすべてのノードがつながっている層を全結合層といいます。必要な重みは「前の層のノード数×次の層のノード数」、バイアスは「次の層のノード数」だけです。入力層から出力層へ順番に計算していく流れを順伝播と呼びます。
「深い」とは中間層が厚いということ
ディープラーニングとは、中間層を深くしたニューラルネットワークのことです。
中間層は何層でも積み上げられます。一般に中間層が2層以上のものをディープラーニング(深層学習)と呼びます。層を重ねるほど、単純な特徴の組み合わせから複雑な特徴を段階的に捉えられます。なお「ディープ」が指すのはノードの数ではなく層の数です。
まとめ
- 1つのノードは、入力に重みを掛けて足し、バイアスを加えるだけの単純な計算です
- 単純パーセプトロンは線形分離可能な問題しか解けず、XORは中間層の追加で解決しました
- 入力層・中間層・出力層をすべて結ぶのが全結合層、入力から出力への計算が順伝播です
よくある質問
Q. 中間層と隠れ層は違うものですか?
A. 同じものを指す別名です。外から値が見えないため隠れ層と呼ばれます。試験ではどちらの表記も使われます。
Q. なぜXORは単純パーセプトロンで解けないのですか?
A. 答えが1になる入力の組と0になる入力の組を1本の直線で分けられないためです。中間層を挟むと折れ曲がった境界を表現でき、解けるようになります。
Q. 全結合層とはどんな層ですか?
A. 前の層のすべてのノードが、次の層のすべてのノードとつながっている層です。つながりの1本1本に重みが割り当てられます。



コメント