見出し画像

【ゆるく学ぼう】【G検定】機械学習ってペーパーテストみたい

前回記事では
人間の脳神経回路を再現すれば学習できるんじゃない?
とりあえず形になったぞ!ってとこまで。
でも実際は問題だらけでした〜

1.パーセプトロンのおさらい

まずは、単純パーセプトロンの図を補足付きでおさらい。
ニューラルネットワークはパーセプトロンから構成されるよ。

「バイアス」「重み」って何?

パーセプトロンは「ペーパーテスト」をイメージすると分かりやすいかも。

入力…問題
バイアス…サービス配点(※)
重み…配点
出力…解答
※先生がテスト配点ミスって全員に与えられるアレね

このペーパーテストを繰り返して、機械は学習していくってわけ。

2.何が問題だったか

大きく二つ。
①勾配消失問題
②過学習

実はこの2つ、抜本的な解決策はまだない!
抑制方法しかない。

①勾配消失問題

学習が止まっちゃう!って問題。

そもそも、学習が止まるとは?

「学習」とはテストと復習の繰り返し。(人間みたいだね)

テストデータで機械に計算させて、実際の値と予測の「誤差」を修正する事によって機会に学習させてた。

つまり機械にテスト問題を解かせて、何故間違ったか復習して、再テストしてた。

ただ、隠れ層(計算)をどんどん深くするほど複雑で、人間はどこ間違ってたかを再計算するの大変。全部復習させるのハンパねえ〜ってわけ。

もっと数学の力でしゃしゃっとやりたい!って声を形にしたのが、誤差逆伝播法(バックプロパゲーション)って計算方法。

昔(1986年代)はとってたのね。
これは1つの問題毎に逐次、誤差修正するって方法。
問題ごとに答え合わせと復習するイメージ。

ここで登場!勾配消失問題!

そしたらどうだ、問題発生。
学習が進まない場合が出てきた。

どんな場合かは今回は端折るね。
(想定どおりに学習できなかったんだなって理解すればいいよ)

どんなにテスト問題を解かせても賢くならない。復習が身に付かない!

ばかやん!私みたい!

原因は、計算に使用する関数(シグモイド関数)ってのがわかった。

これはランプ関数(ReLU関数など)を代用すると、この問題は起きづらくなった。※つまりまだこの問題は解決してない。

②過学習

まあ、なんとか①勾配消失問題は落ち着いた。
でも今度はテスト問題に慣れすぎちゃうった問題が発生した。
英単語のテスト問題はバッチリだけど、
それ以外の英単語は苦手って感じ。

これも解決策はまだ無くて、抑制方法ならある。

①テストデータを増やす(たくさん問題を解かせて未知の問題を減らす)
②適当なタイミングで学習やめちゃう(60点くらいでやめちゃう)
③複雑な計算を簡単にしてみる。
④正則化する(問題配点を小さくして、トータル失点を小さくする)

などなど結構愚直な事をしてる。

この記事が参加している募集

#おうち時間を工夫で楽しく

95,578件

この記事が気に入ったらサポートをしてみませんか?