読むだけでちょっと賢くなる、架空のまとめスレ

【疑問】単純パーセプトロンはXORが解けんってほんま?層を1つ足したら解ける理由【G検定】

11レスカテゴリ:AI・機械学習
1: 名無しさん

単純パーセプトロンと多層パーセプトロンの違いがよう分からん
層が増えたら何ができるようになるん?

2: 名無しさん

前提のおさらい。ロジスティック回帰は、入力の重みつきの和 をシグモイド関数に通して分類する。境界は の直線

3: 名無しさん

>>1
単純パーセプトロンは、入力層と出力層だけのモデル。重みつきの和が0より大きければ1、そうでなければ0を出す
ローゼンブラットの1958年の論文で発表された。境界はロジスティック回帰と同じく直線

4: 名無しさん

>>3
ANDなら1本の直線で作れる。、 とすると
(1, 1): で1
(1, 0): で0
(0, 0) と (0, 1) も0になる

5: 名無しさん

>>4
XOR(どちらか片方だけ1のとき1)はどうなるん?

6: 名無しさん

>>5
(0, 1) と (1, 0) が1、(0, 0) と (1, 1) が0。図に描くと、1のグループが対角に分かれてて、どう直線を引いても分けられん
これが単純パーセプトロンの限界。ミンスキーとパパートが1969年の本で指摘したことでも知られてる

7: 名無しさん

>>6
入力層と出力層のあいだに隠れ層を入れたのが多層パーセプトロン。XORは、隠れ層に2つのユニットを置けば作れる
:OR()
:NAND()
出力: と のAND()

8: 名無しさん

>>7
確かめると、(1, 0) は で出力1。(1, 1) は で出力0。(0, 0) は で出力0
隠れ層が入力を「別の見え方」に変えて、そこでは直線で分けられるようになってる

9: 名無しさん

>>8
でもこの重みは人が考えて入れたやん。データから自動で決められるん?

10: 名無しさん

>>9
単純パーセプトロンの学習規則では、隠れ層の重みをどう直せばええか分からんかった
それを解いたのが誤差逆伝播法。出力の誤差を後ろの層から前の層へ伝えて、隠れ層の重みも学習できるようにした。そのために、0か1かのステップ関数の代わりに、なめらかなシグモイド関数などを使う

11: 名無しさん

>>10
隠れ層を何層も重ねたものをディープラーニング(深層学習)と呼ぶ。層を重ねると表せるものは増えるけど、そのぶん学習は難しくなる

管理人のひとこと