ニューラル ネットワーク: 誤差逆伝播を使用したトレーニング

誤差逆伝播は、 最も一般的なトレーニングアルゴリズムです これにより、多層ニューラル ネットワークで勾配降下法が可能になります。 多くの ML コード ライブラリ(Keras など) バックプロパゲーションは自動的に処理されるため、追加の構成や 基礎となる計算を自分で行う必要はありません。次の動画をご覧ください。 誤差逆伝播法の概念的な概要:

ニューラル ネットワーク トレーニングのベスト プラクティス

このセクションでは、誤差逆伝播法の失敗例と、 よく使われる手法です。

消える勾配

下層ニューラル ネットワークの勾配 ネットワーク層(入力層に近い層)は非常に小さくなる場合があります。 ディープ ネットワーク( 複数の隠れ層など)である場合、これらの勾配の計算には、 単語の積です。

下位レイヤの勾配値が 0 に近づくと、勾配は 表示されます。勾配が消失するレイヤのトレーニングは非常に遅いか、 ありません。

ReLU 活性化関数は、勾配の消失を防ぐのに役立ちます。

勾配爆発

ネットワーク内の重みが非常に大きい場合、 多くの大規模な項の積が関与します。この場合は 勾配爆発: 大きくなりすぎて収束しない勾配

バッチ正規化は、勾配爆発の防止に役立ち、 学習します

無効な ReLU ユニット

ReLU ユニットの加重合計が 0 を下回ると、ReLU ユニットは 停止します。出力は 0 で、ネットワークの出力には寄与しません。 勾配は逆伝播中に通過できなくなります。 勾配ソースが途切れると、ReLU への入力が十分に変化しないことがある 重みの合計を 0 より大きくします。

学習率を低くすると、ReLU ユニットが機能しなくなるのを防ぐことができます。

ドロップアウト正則化

もう一つの正則化の形式は、 ドロップアウト正則化、 ニューラル ネットワークに役立ちます。ランダムに「ドロップアウト」する 1 つの勾配ステップにおける 1 ユニットのアクティベーション数です。 ドロップする回数が多いほど、正則化は強くなります。

  • 0.0 = ドロップアウト正則化なし。
  • 1.0 = すべてのノードをドロップアウト。モデルは何も学習しません。
  • 0.0 ~ 1.0 の値が有用です。