Backpropagationは、ディープニューラルネットワークを訓練するために使用される基本的なアルゴリズムです。 これは、ネットワーク内の各重量に関して損失機能の勾配を計算し、誤りを最小限に抑える体重のアップデートを可能にします。 この記事では、バックプロパゲーションプロセスのステップバイステップの概要を提供し、ディープネットワークの訓練に関与する計算に焦点を当てています。

フォワードパス

プロセスは、入力データをネットワークを介して伝播するフォワードパスから始まります。各ニューロンは、入力の重みのある合計を計算し、バイアスを追加し、活性化機能を適用します。各レイヤーの出力は、最終的な予測が得られるまで、次のレイヤーの入力として機能します。

損失の計算

ネットワークが出力されると、損失関数は予測された出力と真のラベルの違いを測定します。一般的な損失関数は、Mean Squared ErrorとCross-Entropyが含まれます。この損失を重量調整で最小限に抑えることです。

後方パス: 従順な計算

バックプロパゲーションのコアは、各重量に関して損失の勾配を計算することを含みます。出力層から始まり、エラーの用語はネットワークを介して後方を計算し、伝播します。これは、各レイヤーで派生物を計算するためにチェーンルールを適用することを含みます。

各ニューロンでは、エラーの用語は、その後のレイヤーからエラーの重みのある合計で、活性化機能の派生物を乗じることによって決定されます。 これらのエラー条件は、各重量とバイアスのグラデーションを計算するために使用されます。

重みを上回る

計算された勾配を使用して、重量は、通常、勾配の降下を介して更新されます。 更新ルールは、学習率によって制御される、現在の体重からの勾配の分岐をサブトラクトします。 このプロセスは、成功の反復の損失を減少させます。

主要工程のまとめ

  • 予測を計算するためにフォワードパスを実行します。
  • 予測と真のラベルの損失を計算します。
  • 出力層から始まるエラー条件を後方計算します。
  • 各重量およびバイアスのための勾配を計算して下さい。
  • 勾配降下による体重の増減