スポンサーリンク

問題の解答・解説ページ

このページは解説の閲覧モードです。
実力試しをしたい方は、下のボタンからクイズに挑戦してください!

この問題をクイズ形式で解く
問題 No.1165
ディープラーニングにおいて、中間層の活性化関数としてReLUが非常に広く使われている。それまで主流だったシグモイド関数ではなく、あえてReLUが採用される理由や特徴に関する記述として、最も不適切なものはどれか。

【正解の解説】

出力値が常にマイナス1から1の範囲に収まるように正規化されるため、各層の間でデータのスケールが極端に変化するのを自動で防ぐことができる。

ReLUの定義式は $f(x) = \max(0, x)$ であり、正の入力に対しては上限なく($\infty$ まで)そのままの値を出力します。出力が -1 から 1 の範囲に収まる(正規化される)のは tanh 関数(双曲線正接関数)などの特徴であり、ReLUに関する記述として明らかに誤りです。

スポンサーリンク

【その他の選択肢の解説】

入力が正の値であればどれだけ大きくても微分値が常に1となるため、多層のネットワークであっても勾配消失問題を劇的に抑制できる。

ReLU(Rectified Linear Unit)は $x > 0$ で $f(x) = x$ となるため、正の入力に対する導関数(微分値)は常に1になります。これにより、シグモイド関数のように層が深くなると勾配が0に近づいて学習が停止する「勾配消失問題」を効果的に回避できます。

関数の計算式が極めて単純なものであるため、計算コストを低く抑えられ、モデルの学習を高速化できる。

シグモイド関数やtanh関数は指数関数 $\exp(-x)$ の計算を必要とするため計算コストが高くなります。これに対しReLUは `max(0, x)` という極めて単純な比較演算のみで実装できるため、GPUでの並列計算や膨大な学習の高速化に極めて有利です。

入力が負の値のときには出力が完全に0となるため、一部のニューロンが活性化しない疎な表現を自然に生み出すことができる。

ReLUは $x \le 0$ のときに厳密に0を出力します。これにより、すべてのニューロンが同時に反応するのではなく、特定の入力に対して一部のニューロンのみが活性化する「スパース性(疎な表現)」が自然に生まれ、モデルの汎化性能向上や計算の効率化に貢献します。