Mobile wallpaper
380 字
2 分鐘

Activation Methods

2026-02-27

Sigmoid (logistic)#

主要用於 Binary classification, 輸出範圍為 (0,1)(0,1)

Sigmoid(x)=1(1+ex)\text{Sigmoid}(x) = \frac{1}{(1 + e^{-x})}

tanh#

也是用於 binary classification, 輸出範圍為 (1,1)(-1, 1)

tanh(x)=2(1+e2x)1=2Sigmoid(2x)1\text{tanh}(x) = \frac{2}{(1 + e^{-2x})} - 1 = 2 * \text{Sigmoid}(2x) - 1

ReLU (Rectified Linear Unit)#

前兩者的輸出使其侷限在二分類問題, 且計算成本太大, ReLU 可以加速收斂但是當 LR 過大時會導致很多死神經

ReLU(x)=max(0,x)\text{ReLU}(x) = max(0, x)

GELU (Gaussian Error Linear Unit)#

結合 ReLU 跟 Sigmoid, 在解決死神經的問題時加快收斂速度

GELU(x)=xΦ(x)\text{GELU}(x) = x\,\Phi(x)

其中 Φ\Phi 可以使用標準常態分佈的 CDF 來加速計算

Φ(x)=xet2/22πdt=12[1+erf ⁣(x2)]\Phi(x) = \int_{-\infty}^{x} \frac{e^{-t^{2}/2}}{\sqrt{2\pi}}\,dt = \frac{1}{2}\left[\,1 + \operatorname{erf}\!\left(\frac{x}{\sqrt{2}}\right)\right]GELU(x)=xP(Xx)=xΦ(x)=x12[1+erf ⁣(x/2)]\text{GELU}(x) = x\,P(X \le x) = x\,\Phi(x) = x \cdot \frac{1}{2}\left[1 + \operatorname{erf}\!\left(x/\sqrt{2}\right)\right]

Swish#

類似 GELU 但是計算成本更低一點 (用 Sigmoid 當門控)

Swish(x)=xσ(βx)=x1+eβx\text{Swish}(x) = x \cdot \sigma(\beta x) = \frac{x}{1 + e^{-\beta x}}

β\beta 是常數或可學習參數, β=1\beta=1 時為 SiLU, β=1.702\beta=1.702 時就是 GELU 的一種近似

GLU (Gated Linear Unit)#

在 FFN 的時候使用 ReLU 的話會導致每個神經元的激活狀態只取決於自己的值, GLU 讓門本身也是學出來的

GLU(x)=σ(xW)(xV)\text{GLU}(x) = \sigma(xW) \otimes (xV)

新的 FFN 大多使用 SwiGLU

FFNSwiGLU(x)=(Swish1(xW1)xV)W2\text{FFN}_{\text{SwiGLU}}(x) = \big(\text{Swish}_1(xW_1) \otimes xV\big)\,W_2

Reference#

Activation Methods
https://blog.cyberangel.work/posts/ml-activation/
作者
Ethan Lai
發布於
2026-02-27
許可協議
CC BY-NC-SA 4.0

評論區

目錄