誤差逆伝播法とは



機械学習

分類(classification)

ニューラルネットワーク(NN)

クラスタリング

強化学習

敵対的生成ネットワーク

公開日:2018/6/23 , 最終更新日:2019/11/18       

前提知識
ニューラルネットワークとは


ニューラルネットワークの重み最適化のためには、対象データの真値と出力値の誤差を小さくする必要がありますが、 中間層の重みを更新するには、中間層の誤差が必要となるので中間層の真値と出力値が必要になりますが、対象データが持っているのは最終出力の真値しかありません。 そこで最終出力層の誤差から中間層の誤差を仮想的に求める方法が誤差逆伝播法(バックプロパゲーション)です。



考え方は、出力層の誤差は中間層の誤差から生じたもので、中間層の重みによって出力層へと分配された結果が出力層の誤差であるので、 逆に考えて、出力層の誤差から中間層の誤差を求めることができ、以下の様に表せます。



なお以下が成り立ちます。


計算例
以下の時、誤差E3、誤差E4を求めよ。

計算の簡略化
上記(3)(4)にある分母の項は正規化因子といって、重みを正規化する役割となります。計算を簡単にするため、この項を省いて以下の様に計算します。 この項を省くことで誤差の絶対値の大きさは異なりますが、各誤差の大小関係は変わらないという事と、もともと誤差は重みの計算のために必要なのですが 重みの計算は学習率で調整されるので、誤差の絶対値の大きさが変わっても(正規化因子を省いても)問題ありません。



試しに上記例題をこの式を用いて計算するとどうなるでしょうか。結果は以下のとおり。誤差の絶対値の大きさは変わってますが、 各誤差の大小関係は変わっていないことが分かります。



(5)式を更に簡略化するため行列で表現します。











サブチャンネルあります。⇒ 何かのお役に立てればと

関連記事一覧



機械学習

分類(classification)

ニューラルネットワーク(NN)

クラスタリング

強化学習

敵対的生成ネットワーク