勾配消失問題
誤差逆伝播法を用いて学習する場合、ニューラルネットワーク上の各ノードの重みは、学習ステップごとに計算される損失関数を、自身のノードの重みで偏微分した勾配に比例して更新される。勾配消失問題は、この勾配が非常に小さくなることで、ニューラルネットワークの重みが更新されにくくなることによって生じる問題である。最悪の場合には、重みの更新が完全に起こらなくなってしまうこともある。この問題が起こる一例として、双曲線正接関数(sigmoid関数)のような古典的な活性化函数を用いた場合が挙げられる。誤差逆伝播法では連鎖律を用いて、ニューラルネットワークの出力層から遡って、各ノードの重みによる損失関数の偏微分が計算される。例として挙げたsigmoid関数は、勾配の値域が(0, 1)であるため、このような場合には、出力層から遠い層、すなわち入力層から見て近い層のノードほど指数的に勾配が小さくなり、結果として学習の進む速度が遅くなる。