未分類

ニューラルネットワークの学習手順

いろんな書物をあたっていた所、わかりやすい内容があったので、
忘れないように書いておく。

ニューラルネットワークには学習フェーズと
実際に画像などを読み込ませて結果を判断する推論(分類)フェーズがあるが、今回は学習フェーズでの話。

++++++++++++++++++

●ニューラルネットワークの学習手順

1、
訓練データの中からランダムにデータを取り出す。
取り出されたデータをミニバッチと呼ぶ。
このミニバッチの損失関数の値を減らすことを学習の目的とする。

2、
ミニバッチの損失関数を減らすために、各重みパラメータの勾配を求める。
これによって、損失関数の値を最も減らす方向がわかる。

3、
重みパラメータを勾配方向に微小な値分だけ更新する。

4、
上記1~3を繰り返す。

全データではなく、確率的に選び出したデータで作業を行っているので、これを確率的勾配降下法と呼ぶ。
(頭文字を取って、SGDという関数名が多い)

*********************

なるほど。
要は重みとバイアスのパラメータを、いかに訓練データの特徴量に合ったものに変えていくかって事が大事なんですね。

まあ、この値さえ決まってしまえば、あとはテストデータを入れてボタンをポンで結果は出ますもんなあ。

このニューラルネットワークを最初に考えた人は、たいしたもんです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です