4.5 誤差逆伝播法(勾配消失・勾配爆発)

G検定

ニューラルネットワークを学習させる上で中核となるのが 誤差逆伝播法(Backpropagation, BP) です。
これは、出力の誤差を逆方向に伝え、各重みを効率的に更新するアルゴリズムです。
G検定では 仕組み・役割・問題点(勾配消失/勾配爆発)とその対策 が頻出ポイントです。


誤差逆伝播法とは?

基本の流れ

  1. 順伝播(Forward Propagation)
    • 入力データをネットワークに通して出力を得る。
  2. 誤差計算
    • 出力と正解ラベルを誤差関数で比較し、損失を算出。
  3. 逆伝播(Backward Propagation)
    • 出力層から入力層に向かって、勾配(偏微分値)を伝搬。
  4. 重み更新
    • 勾配降下法(SGD, Adamなど)で重みを更新。

👉 イメージ:「予測がどれだけズレたか」を逆流させて重みを調整。


数式イメージ

各層の重み更新は次のように行われます:

wi ← wi - η ∂L/∂wi
  • wi:重み
  • η:学習率
  • L:損失関数
  • ∂L/∂wi:誤差逆伝播で計算される勾配

勾配消失問題(Vanishing Gradient)

定義

  • 深いネットワークで逆伝播を繰り返すうちに勾配が小さくなりすぎ、更新がほとんど行われなくなる現象。

主な原因

  • Sigmoidやtanhのような飽和型活性化関数。
  • 重み初期値が不適切。

影響

  • 学習が進まない/非常に遅い。

対策

  • ReLU系活性化関数を使用
  • Batch Normalization
  • 重み初期化の工夫(Xavier, He初期化)
  • Residual Connection(スキップ結合, ResNet)

勾配爆発問題(Exploding Gradient)

定義

  • 深いネットワークで勾配が大きくなりすぎ、数値が発散してしまう現象。

主な原因

  • 勾配が層を通じて指数的に増加。
  • 特にRNNの長期依存問題で顕著。

影響

  • 学習が不安定になり、重みがNaNになる。

対策

  • 勾配クリッピング(勾配の値を一定範囲に制限)
  • LSTMやGRUのような構造を使う(RNNの改善)
  • 適切な初期化と学習率調整

まとめ

  • 誤差逆伝播法:ニューラルネットワークの学習アルゴリズム。誤差を逆方向に伝えて重みを更新。
  • 勾配消失問題:勾配が小さくなり学習が進まない。対策=ReLU, BatchNorm, 初期化, ResNet。
  • 勾配爆発問題:勾配が大きくなり数値発散。対策=勾配クリッピング, LSTM/GRU。

出題傾向

  • 「誤差逆伝播法の役割は?」=重み更新のための勾配計算
  • 「勾配消失問題の原因と対策」
  • 「勾配爆発問題の原因と対策」

練習問題(例題)

問題:ディープニューラルネットワークの学習で「勾配が小さくなり学習が進まなくなる現象」を何と呼ぶか?

  1. 過学習
  2. 勾配消失
  3. 勾配爆発
  4. 過適合

👉 正解:2

タイトルとURLをコピーしました