Zubnet AI學習Wiki › Activation Function
基礎

Activation Function

別名:ReLU、GELU、SiLU、Swish
應用於神經元輸出的數學函數,為網路引入非線性。沒有啟動函數,神經網路——無論多少層——都只能學習線性關係。ReLU、GELU 和 SiLU/Swish 是現代架構中最常見的啟動函數。

為什麼重要

啟動函數是深度學習能夠運作的原因。一疊線性變換只是一個大的線性變換。層與層之間的啟動函數讓網路能夠學習複雜的非線性模式——曲線、邊緣和使神經網路強大的微妙關係。

深度解析

ReLU(修正線性單元)是最簡單的:f(x) = max(0, x)。它對負輸入輸出零,對正輸入直接傳遞。ReLU 為正輸入提供恆定梯度 1,解決了困擾早期啟動函數(sigmoid、tanh)的梯度消失問題。其簡單性和有效性使它成為十多年來的預設選擇。

超越 ReLU

GELU(高斯誤差線性單元)現在是 Transformer 的標準(被 BERT、GPT 和大多數 LLM 使用)。與 ReLU 在零處的硬截斷不同,GELU 在零附近平滑漸細,提供更好的梯度流動。SiLU/Swish(x · sigmoid(x))類似,用於 LLaMA 等一些架構。GELU 和 SiLU 之間的實際差異很小——在 Transformer 規模的模型中兩者都優於 ReLU。

GLU 變體

現代 LLM 通常在前饋層中使用門控線性單元(GLU)及其變體(SwiGLU、GeGLU)。這些將兩個平行的線性投影相乘,有效地讓網路控制哪些資訊通過。SwiGLU(用於 LLaMA、Mistral 等許多模型)將 SiLU 啟動與門控結合,在僅略微增加參數的代價下,持續優於標準前饋層。

相關概念

← 所有術語
AGI →
ESC