活性化関数 (Activation Function) の役割と重要性
活性化関数は、ニューラルネットワークのニューロン(ノード)における線形変換(重み付き和)の結果を入力として受け取り、その出力を決定する関数です。活性化関数の主な役割は、ネットワークに非線形性を導入することです。もし活性化関数がなければ、ネットワーク全体は単なる線形変換の積み重ねとなり、複雑なパターンや関係性を学習することができません。適切な活性化関数を選択することは、ネットワークの学習効率や性能に大きく影響します。
主要な活性化関数とその特性
以下に、代表的な活性化関数とその数式、特性、利点、欠点を示します。
1. ReLU (Rectified Linear Unit)
- 数式: \( f(x) = \max(0, x) \)
- グラフ: 入力が0以下の場合は0、0より大きい場合は入力をそのまま出力します(線形)。
- 特性:
- 正の入力に対しては線形であり、勾配は1。
- 負の入力に対しては出力が0となり、勾配も0。
- 利点:
- 計算が非常に高速(比較や条件分岐のみ)。
- 勾配計算も単純で高速。
- Sigmoidやtanhと比較して、勾配消失問題を起こしにくい(正の領域)。
- 欠点:
- Dying ReLU問題: 学習中にニューロンへの入力が常に負になってしまうと、そのニューロンの勾配は常に0となり、パラメータの更新が行われなくなってしまう(「死んだ」状態になる)可能性があります。(選択肢1は正しい)
- 出力がゼロ中心ではない(常に非負)。
2. Sigmoid (シグモイド関数、ロジスティック関数)
- 数式: \( f(x) = \frac{1}{1 + e^{-x}} \)
- グラフ: 滑らかなS字カーブを描き、出力を (0, 1) の範囲に収めます。
- 特性:
- 出力を確率として解釈しやすい。
- 入力の絶対値が大きい領域で勾配がほぼ0になる(飽和する)。
- 利点:
- 二値分類問題の出力層で、クラスに属する確率を出力するのに適しています。
- 欠点:
- 勾配消失問題: 入力の絶対値が大きい領域で勾配が飽和するため、特にネットワークが深い場合に、誤差逆伝播で勾配が消失し、学習が停滞する原因となりやすいです。(選択肢2は不正確)
- 出力がゼロ中心ではない。
- 指数関数の計算コストがReLUに比べて高い。
3. tanh (双曲線正接関数)
- 数式: \( f(x) = \tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} = 2 \cdot \text{sigmoid}(2x) - 1 \)
- グラフ: Sigmoidと似たS字カーブですが、出力範囲が (-1, 1) です。原点対称です。
- 特性:
- 出力がゼロ中心(平均が0に近い)。
- Sigmoidと同様に、入力の絶対値が大きい領域で勾配が飽和する。
- 利点:
- 出力がゼロ中心であるため、Sigmoidよりも学習の収束が速い傾向があります。後続の層への入力の偏りを抑える効果があります。
- 欠点:
- Sigmoidと同様に、勾配消失問題を引き起こしやすいです。
- 指数関数の計算コストがかかります。
- 出力は負の値も取ります。(選択肢3は不正確)
4. Leaky ReLU
- 数式: \( f(x) = \begin{cases} x & (x > 0) \\ \alpha x & (x \le 0) \end{cases} \) (ここで \(\alpha\) は小さな正の定数、例: 0.01)
- グラフ: ReLUに似ていますが、負の入力に対してもわずかな勾配 \(\alpha\) を持ちます。
- 特性:
- 利点:
- ReLUの改良版で、Dying ReLU問題を緩和します。負の領域でも勾配が完全に0にならないため、ニューロンが死ぬリスクを低減します。
- 計算コストはReLUとほぼ同等。
- 欠点:
- 最適な \(\alpha\) の値は問題依存であり、調整が必要な場合があります。
- 負の入力に対しては0ではなく、わずかな負の値 (\(\alpha x\)) を出力します。(選択肢4は不正確)
活性化関数選択のヒント
- 中間層のデフォルト: まずは ReLU を試すのが一般的です。計算効率が高く、多くの場合で良好な性能を発揮します。
- Dying ReLUが懸念される場合: Leaky ReLU やその派生(PReLU, ELUなど)を検討します。
- 出力層:
- 二値分類: Sigmoid
- 多クラス分類: Softmax
- 回帰: 活性化関数なし(恒等関数)または問題に応じて ReLU など
- 勾配消失が懸念される場合 (特にRNNなど): tanh が使われることもありますが、勾配消失対策としてはネットワーク構造自体の工夫(LSTM, GRU, 残差接続など)がより重要です。
以上の詳細な特性比較から、選択肢の中で正しい記述は選択肢1であることが確認できます。