問題 No.110
ディープラーニングにおいて、多層のネットワークを構築した際、活性化関数に「シグモイド関数」を採用すると、層が深くなるにつれて誤差の勾配が途中でゼロに近づいてしまい、入力層に近い層が全く学習しなくなる勾配消失問題が発生する。この問題を解決するため、入力が0以下なら0、0より大きければ入力をそのまま出力する、現代の標準的な活性化関数はどれか。
【正解の解説】
ReLU
現代の深層学習で標準的に使われる関数です。0以下なら0、それ以外は入力をそのまま通すため、勾配消失を防ぐ効果があります。
スポンサーリンク
【その他の選択肢の解説】
ステップ関数
しきい値を超えたら1、以下なら0を出力する単純な関数です。滑らかではないため数学的な計算には不向きです。
ソフトマックス関数
出力層において、複数のクラスのどれに属するかを確率として計算するために使われる関数です。
タインエイチ関数
tanh関数(tanh関数)のことです。シグモイド関数よりは改善されていますが、層が非常に深いとやはり勾配が消えやすくなります。