---
title: "激活函數（Activation Function）"
slug: activation-function
language: zh-TW
source: https://aiterms.tw/terms/activation-function
updated_at: 2026-07-30
tags: [深度學習, 神經網路, 模型訓練, 機器學習基礎]
ipas_term: false
---

# 激活函數（Activation Function）

神經網路中賦予模型非線性表達能力的函數，使深度網路能學習複雜非線性模式。

## 完整說明

激活函數（Activation Function）是神經網路每個神經元線性運算後施加的非線性轉換，沒有激活函數的多層網路等效於單層線性映射，因此激活函數是深度學習表達能力的基礎，直接影響訓練效率與梯度流動。

## 常見問題

### 為什麼 ReLU 能解決 Sigmoid 的梯度消失問題？背後機制是什麼？

Sigmoid 的梯度消失源於其導數：σ'(x) = σ(x)(1-σ(x))，最大值只有 0.25（在 x=0 時），且在 |x| 較大時趨近於 0。在 L 層深的網路中反向傳播，梯度要乘以每層的激活函數導數，若每層都是 0.25，10 層後梯度縮小為 0.25¹⁰ ≈ 0.00001，前期層幾乎收不到梯度，無法有效學習。ReLU 在正值區的導數恆為 1，不會有這種指數衰減問題（梯度「直通」正值神經元）。雖然負值區導數為 0（即 Dead ReLU 問題），但在實務中通常只有少數神經元會完全「死亡」，整體梯度流動顯著優於 Sigmoid，這是深度學習在 2012 年突破的重要技術因素。

### Dead ReLU（死亡 ReLU）在實務中有多嚴重？如何診斷？

Dead ReLU 的嚴重程度因架構和訓練設定而異。成因主要有兩種：1）學習率過大，導致梯度更新使大量神經元的偏置值落入永久負值區間；2）初始化不當，初始偏置值設為很大的負數。診斷方法：在訓練過程中監控每層激活值的均值和標準差，若某層輸出均值接近 0 且方差很小，可能大量神經元已「死亡」；也可以用 ReLU 輸出為 0 的比例（稀疏度）來評估，正常應在 20-60%，若超過 80% 則可能過多死亡。緩解方法：使用 He initialization（專為 ReLU 設計的初始化方案）、適當的學習率衰減、換用 Leaky ReLU 或 GELU，或在每層前加 Batch Normalization 穩定輸入分布。

### Softmax 為什麼適合多分類輸出層，但不適合隱藏層？

Softmax 的特性是把所有輸出歸一化（總和為 1，每個值在 0-1 之間），使其可解釋為互斥類別的機率分布，這正是多分類輸出層需要的性質：讓模型明確表達「最可能是哪一類」。但若把 Softmax 用在隱藏層，問題在於：1）所有輸出的總和被強制為 1，意味著一個神經元的激活增大必然導致其他神經元激活減小，這種「競爭」關係不利於學習獨立的特徵表示；2）Softmax 在梯度流動上的表現不如 ReLU 或 GELU；3）Softmax 輸出是相對值而非絕對值，缺乏 ReLU 那種稀疏激活的正則化效果。因此隱藏層應使用 ReLU、GELU 等不做歸一化的激活函數，只在最終輸出層需要「互斥機率」時才使用 Softmax。

---

來源：https://aiterms.tw/terms/activation-function
快查頁：https://aiterms.tw/terms/activation-function
最後更新：2026/07/30
深度解說：https://aiterms.tw/learning/what-is-activation-function