1行定義
勾配消失問題とは、誤差逆伝播法で入力層に近い層ほど勾配が小さくなり、重みがほとんど更新されなくなる現象のことです。
くわしく
勾配消失問題は、層の深いニューラルネットワークや、長い系列を扱うRNNで、学習が進まなくなる現象です。深いネットワークの学習が長く難しいとされてきた大きな理由の1つです。
なぜ起きるのか
ニューラルネットワークは誤差逆伝播法で学習します。出力の誤差をもとに、各重みを「どちらにどれだけ動かせば誤差が減るか」を表す勾配を求めます。このとき連鎖律により、出力層から入力層へ向かって、各層の微分が次々に掛け合わされます。
掛け合わせる値が1より小さいと、層をさかのぼるほど積は急速に小さくなります。たとえば0.25を10回掛けると、約100万分の1になります。シグモイド関数の微分は最大でも0.25なので、この状況が起きやすくなります。その結果、出力層に近い層は学習できても、入力層に近い層の重みはほとんど変わりません。
RNNでも同じことが起きます。RNNは時間方向に展開すると深いネットワークになり、BPTTで過去にさかのぼるたびに勾配が掛け合わされます。そのため、遠い過去の情報を学習しにくくなります。
主な対策
- 活性化関数:正の範囲で微分が1になるReLU関数を使う。
- 重みの初期値:層の大きさに合わせた初期化(Xavierの初期値、Heの初期値)を使う。
- バッチ正規化:各層への入力の分布を整え、活性化関数が飽和しにくくする。
- スキップ結合:ResNetのように層を飛び越える経路を作り、勾配を直接伝える。
- ゲート機構:RNNではLSTMやGRUを使い、情報と勾配を長く保つ。
勾配爆発問題との違い
逆に、掛け合わせる値が1より大きいと、勾配が急激に大きくなります。これが勾配爆発問題です。重みが極端な値になり、学習が発散します。勾配の大きさに上限を設ける勾配クリッピングが代表的な対策です。
覚え方
「1より小さい数の掛け算は、すぐに0へ近づく」と覚えます。
G検定での出題
- シラバス項目『活性化関数』の要点まとめ練習問題 7問技術12大項目:ディープラーニングの概要
- シラバス項目『誤差逆伝播法』の要点まとめ練習問題 5問技術15大項目:ディープラーニングの概要
- シラバス項目『回帰結合層』の要点まとめ練習問題 13問技術22大項目:ディープラーニングの要素技術
出題のされ方
シグモイド関数の微分の小ささが原因になる仕組み、ReLU関数・LSTM・スキップ結合・バッチ正規化などの対策との対応、勾配爆発問題との違いが問われます。
混同しやすい用語
| 用語 | 意味 |
|---|---|
| 勾配消失問題このページの用語 | 誤差逆伝播法で入力層に近い層ほど勾配が小さくなり、重みがほとんど更新されなくなる現象 |
| 勾配爆発問題 | 誤差逆伝播法で層や時刻をさかのぼって勾配を伝えるうちに勾配が急激に大きくなり、学習が不安定になったり発散したりする現象 |
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
勾配消失問題が起きると、出力層に近い層よりも、入力層に近い層の重みのほうが更新されにくくなる。
答えを見る
答え ◯ 正しい
勾配は出力層から入力層へ、各層の微分を掛け合わせながら伝わります。そのため入力層に近いほど小さくなります。
-
勾配消失問題は、ネットワークの層を増やすほど起きにくくなる。
答えを見る
答え × 誤り
層が増えるほど掛け合わせる回数が増え、勾配は小さくなりやすくなります。深いネットワークほど起きやすい問題です。
-
RNNで長い系列を学習すると、時間をさかのぼるほど勾配が小さくなり、遠い過去の情報が学習に反映されにくくなることがある。
答えを見る
答え ◯ 正しい
時間方向に展開したRNNは、深いネットワークと同じ構造になるためです。LSTMやGRUのゲート機構はこの対策です。
この用語の練習問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目12 活性化関数)
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目15 誤差逆伝播法)
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目22 回帰結合層)
- Yoshua Bengio, Patrice Simard, Paolo Frasconi, Learning long-term dependencies with gradient descent is difficult, IEEE Transactions on Neural Networks 5(2), 157–166 (1994)
- Xavier Glorot, Yoshua Bengio, Understanding the difficulty of training deep feedforward neural networks, AISTATS 2010, PMLR 9:249–256
- Sepp Hochreiter, Jürgen Schmidhuber, Long Short-Term Memory, Neural Computation 9(8), 1735–1780 (1997)
- Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun, Deep Residual Learning for Image Recognition (2015)