隠れ層の活性化関数にシグモイド関数を用いた深いニューラルネットワークで、勾配消失問題が起きやすい理由として、最も適切なものを1つ選べ。
正解と解説を見る
解説
正解 A
この問題の論点:シグモイド関数と勾配消失
ポイント
シグモイド関数は導関数の最大値が0.25と小さいため、層を重ねるほど勾配が掛け合わされて小さくなり、勾配消失問題が起きやすくなります。
選択肢ごとの解説
- A
適切 正解
シグモイド関数の導関数はσ(x)(1−σ(x))で、x=0のとき最大値0.25をとります。連鎖律で層ごとにこの値が掛かるため、入力層に近い層ほど勾配が小さくなりやすくなります。
- B
不適切
シグモイド関数の出力は0から1の範囲です。−1から1の範囲をとるのはtanh関数です。勾配消失の原因は値の打ち消し合いではなく、掛け合わされる導関数の値の小ささにあります。
- C
不適切
勾配消失は、逆伝播で勾配が小さくなる現象です。シグモイド関数は入力0で0.5を出力するなど、通すたびに出力値が小さくなるわけではありません。原因は順伝播の出力ではなく、逆伝播で掛け合わされる導関数の小ささです。
- D
不適切
シグモイド関数はすべての点でなめらかに微分できます。原点で微分できない点を持つのはReLU関数ですが、実装ではその点の勾配を0などと決めて扱うため、学習の妨げにはなりません。
試験での狙われ方
導関数の最大値(シグモイド関数は0.25、tanh関数は1)を比べさせる形や、ReLU関数が対策になる理由とあわせて問う形があります。