問題 No.1328
勾配消失問題を回避するために、入力が正の領域では微分値が常に1となり、負の領域では0を返すことで、勾配の減衰を防ぐ特性を持つ関数はどれか。
【正解の解説】
ReLU関数
ReLU関数は、入力が0以下なら0、0を超えれば入力値そのものを出力する関数です。正の領域で微分値が常に1であるため、層を重ねても勾配が小さくなりにくく、学習を効率よく進められるため現在の主流となっています。
スポンサーリンク
【その他の選択肢の解説】
tanh関数
ハイパボリックタンジェントは、-1から1の範囲で滑らかなS字曲線を描く活性化関数です。中心が0であるためシグモイド関数よりも学習が進みやすいですが、非常に大きな値や小さな値になると傾きがほぼ0になり、勾配消失問題が発生する可能性があります。
ステップ関数
ステップ関数は、ある閾値を超えたら1、それ以外は0を出力する単純な関数です。出力が階段状に変化するため、境界線で微分ができず、ニューラルネットワークの学習で重要な誤差逆伝播法が使えなくなります。
シグモイド関数
シグモイド関数は、0から1の範囲でS字を描く関数です。確率的な出力を得るのに適していますが、グラフの端(非常に大きい値や小さい値)では傾きがほぼゼロになるため、層を遡るごとに情報が消えてしまう勾配消失問題の原因となります。