問題 No.368
ディープラーニングの中間層に用いられるReLU関数は、入力が負の値をとる場合に勾配が完全にゼロとなり、そのニューロンの学習が止まってしまう問題があった。この問題を解決し、ニューロンが完全に活動を停止してしまうのを防ぐために考案された関数の特徴として適切なものはどれか。
【正解の解説】
入力が負の領域において、わずかな傾きを持った直線を割り当てて微小な値を出力させる
これはLeaky ReLU関数の説明です。完全にゼロにするのではなく、負の値に対してもわずかな傾きを持たせることで、死んだニューロンを防ぎ、情報をわずかに通すように工夫されています。
スポンサーリンク
【その他の選択肢の解説】
入力が負の領域において、出力が必ずマイナス1になるように固定する
入力値が負の場合に出力を常にマイナス1へ固定するのは、情報の変化を完全に断ち切ってしまうため、適切な学習を妨げる可能性があります。
入力値に関わらず、常に入力値をそのまま出力するように線形変換する
常に入力値をそのまま出力するというのは線形関数(恒等関数)のことであり、層を重ねても単純な計算にしかならず、ディープラーニング特有の複雑な表現力を発揮できません。
出力値を0から1の範囲に滑らかに圧縮し、確率分布として扱えるようにする
これはシグモイド関数などの特徴です。出力を0から1に絞り込むため、確率を扱う際には便利ですが、層が深くなると勾配消失問題を引き起こしやすくなります。