プログラミング基礎中級
逆伝播
一言で言うと
損失から勾配を計算する向き。
もう少し詳しく
一言で言うと
損失から勾配を計算する向き。
もう少し詳しく
ニューラルネットワークの学習において、損失関数の値を出力層から入力層へ向かって連鎖律(chain rule)を使って伝播させ、各層の重みに対する偏微分(勾配)を求める仕組みです。順伝播(forward pass)でデータを入力から出力へ流して損失を計算し、逆伝播(backward pass)でその損失を各重みの勾配に分解します。求めた勾配をもとに w ← w - η(∂L/∂w) という式で重みを更新することで、モデルが徐々に正解に近づいていきます。
逆伝播を正しく理解するには、連鎖律・勾配消失問題・自動微分(AutoDiff)との関係を合わせて押さえることが重要です。深い層になるほど勾配が指数的に小さくなる勾配消失が起きやすく、ReLU 活性化関数や残差接続(ResNet)はこの問題への対策として生まれました。現代のフレームワークは計算グラフを自動構築して逆伝播を実行するため、利用者は明示的に偏微分を手書きする必要がありません。
実務でどう使うか
関連する章
Ch193 で詳しく学べます。