深度学习——常见激活函数

常见激活函数

激活函数

在 大语言模型( LLM ) 时代,激活函数的设计直接影响模型的表达能力、训练稳定性和计算效率。以下是当前主流的激活函数及其应用场景的总结,涵盖经典方法和最新趋势:

1. 核心激活函数

(1) GeLU( Gaussian Error Linear Unit )

公式:

\[\text{GeLU}(x) = x \cdot \Phi(x) = x \cdot \frac{1}{2} \left(1 + \text{erf}\left(\frac{x}{\sqrt{2}}\right)\right)

\]

特点:

结合了ReLU的非线性和概率建模能力( 通过高斯分布加权 )。

平滑性:在接近0时梯度更连续,缓解ReLU的“死区”问题。

近似实现:实际计算中常用近似公式( 如 0.5x(1 + tanh(sqrt(2/π)(x + 0.044715x^3))) )。

应用:

Transformer的FFN层:BERT、GPT系列、LLaMA等模型的标准选择。

替代ReLU以提升深层模型训练稳定性。

(2) Swish( 自门控激活函数 )

公式:

\[\text{Swish}(x) = x \cdot \sigma(\beta x) \quad (\beta \text{可学习,常固定为1})

\]

特点:

非单调性有助于模型捕捉复杂特征。

在极负区域梯度非零,缓解梯度消失。

应用:

部分LLM的前馈网络替代GeLU( 如PaLM中使用 SwiGLU 变体 )。

轻量级模型的激活函数选择。

(3) ReLU及其变体

ReLU:

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

\]

优势:计算高效,稀疏激活。

劣势:输出非零中心化,可能导致“神经元死亡”。

LLM应用:部分早期模型( 如T5 )仍使用ReLU,但逐渐被GeLU取代。

Leaky ReLU:

\[\text{LeakyReLU}(x) = \begin{cases} x & \text{if } x > 0 \\ \alpha x & \text{otherwise} \end{cases} \quad (\alpha \text{为小斜率,如0.01})

\]

用途:缓解ReLU的死亡问题,但在LLM中较少使用。

2. 门控机制激活函数

(1) GLU( Gated Linear Unit )

公式:

\[\text{GLU}(x) = (W_1 x + b_1) \otimes \sigma(W_2 x + b_2)

\]

特点:通过门控信号动态调节特征重要性,增强模型表达能力。

变体:

SwiGLU:用Swish替代Sigmoid作为门控函数( PaLM、LLaMA-2使用 )。

GeGLU:用GeLU作为门控函数( T5变体 )。

优势:显著提升模型容量,适合大规模参数下的特征交互。

计算代价:参数量和计算量翻倍,需权衡性能与效率。

(2) GAU( Gated Attention Unit )

特点:将门控机制融入注意力层,动态调节注意力权重( 如FLASH模型 )。

公式:

\[\text{GAU}(Q, K, V) = \sigma(W_q Q + W_k K) \otimes (W_v V)

\]

3. 动态/参数化激活函数

(1) PReLU( Parametric ReLU )

公式:

\[\text{PReLU}(x) = \max(0, x) + \alpha \cdot \min(0, x) \quad (\alpha \text{可学习})

\]

用途:自适应调整负区斜率,但LLM中较少使用。

(2) Dynamic Activation Functions

Mixture-of-Experts( MoE )激活:

不同专家( 子网络 )通过门控选择激活路径( 如Switch Transformer )。

优势:动态激活不同参数子集,提升模型容量和稀疏性。

4. 选择激活函数的考量因素

训练稳定性:

GeLU/Swish的平滑性比ReLU更适合深层LLM训练。

计算效率:

ReLU > GeLU > GLU( 门控结构增加计算量 )。

模型容量:

门控机制( GLU/SwiGLU )显著提升模型表达能力,但需更多参数。

硬件优化:

激活函数的计算是否容易被融合( 如CuDNN的fused GeLU优化 )。

5. 常见LLM的激活函数实例

模型

激活函数

应用场景

GPT-3/4

GeLU

FFN层

PaLM

SwiGLU

FFN层( 替代GeLU )

LLaMA-2

SwiGLU

FFN层

BERT

GeLU

FFN层

T5

ReLU

FFN层( 轻量化设计 )

FLASH

GAU

注意力层门控

面试回答要点

强调GeLU和SwiGLU:解释它们在LLM中的主流地位及数学动机。

对比ReLU与GeLU:GeLU的平滑性如何缓解梯度问题。

门控机制的价值:GLU变体如何通过动态门控增强模型容量。

实际部署考量:激活函数对训练速度、显存占用和硬件支持的影响。

通过掌握这些核心概念,你可以清晰展示对LLM底层机制的理解!

sigmoid和softmax

在 大语言模型( LLM ) 时代,激活函数的设计直接影响模型的表达能力、训练稳定性和计算效率。以下是当前主流的激活函数及其应用场景的总结,涵盖经典方法和最新趋势:

1. 核心激活函数

(1) GeLU( Gaussian Error Linear Unit )

公式:

\[\text{GeLU}(x) = x \cdot \Phi(x) = x \cdot \frac{1}{2} \left(1 + \text{erf}\left(\frac{x}{\sqrt{2}}\right)\right)

\]

特点:

结合了ReLU的非线性和概率建模能力( 通过高斯分布加权 )。

平滑性:在接近0时梯度更连续,缓解ReLU的“死区”问题。

近似实现:实际计算中常用近似公式( 如 0.5x(1 + tanh(sqrt(2/π)(x + 0.044715x^3))) )。

应用:

Transformer的FFN层:BERT、GPT系列、LLaMA等模型的标准选择。

替代ReLU以提升深层模型训练稳定性。

(2) Swish( 自门控激活函数 )

公式:

\[\text{Swish}(x) = x \cdot \sigma(\beta x) \quad (\beta \text{可学习,常固定为1})

\]

特点:

非单调性有助于模型捕捉复杂特征。

在极负区域梯度非零,缓解梯度消失。

应用:

部分LLM的前馈网络替代GeLU( 如PaLM中使用 SwiGLU 变体 )。

轻量级模型的激活函数选择。

(3) ReLU及其变体

ReLU:

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

\]

优势:计算高效,稀疏激活。

劣势:输出非零中心化,可能导致“神经元死亡”。

LLM应用:部分早期模型( 如T5 )仍使用ReLU,但逐渐被GeLU取代。

Leaky ReLU:

\[\text{LeakyReLU}(x) = \begin{cases} x & \text{if } x > 0 \\ \alpha x & \text{otherwise} \end{cases} \quad (\alpha \text{为小斜率,如0.01})

\]

用途:缓解ReLU的死亡问题,但在LLM中较少使用。

2. 门控机制激活函数

(1) GLU( Gated Linear Unit )

公式:

\[\text{GLU}(x) = (W_1 x + b_1) \otimes \sigma(W_2 x + b_2)

\]

特点:通过门控信号动态调节特征重要性,增强模型表达能力。

变体:

SwiGLU:用Swish替代Sigmoid作为门控函数( PaLM、LLaMA-2使用 )。

GeGLU:用GeLU作为门控函数( T5变体 )。

优势:显著提升模型容量,适合大规模参数下的特征交互。

计算代价:参数量和计算量翻倍,需权衡性能与效率。

(2) GAU( Gated Attention Unit )

特点:将门控机制融入注意力层,动态调节注意力权重( 如FLASH模型 )。

公式:

\[\text{GAU}(Q, K, V) = \sigma(W_q Q + W_k K) \otimes (W_v V)

\]

3. 动态/参数化激活函数

(1) PReLU( Parametric ReLU )

公式:

\[\text{PReLU}(x) = \max(0, x) + \alpha \cdot \min(0, x) \quad (\alpha \text{可学习})

\]

用途:自适应调整负区斜率,但LLM中较少使用。

(2) Dynamic Activation Functions

Mixture-of-Experts( MoE )激活:

不同专家( 子网络 )通过门控选择激活路径( 如Switch Transformer )。

优势:动态激活不同参数子集,提升模型容量和稀疏性。

4. 选择激活函数的考量因素

训练稳定性:

GeLU/Swish的平滑性比ReLU更适合深层LLM训练。

计算效率:

ReLU > GeLU > GLU( 门控结构增加计算量 )。

模型容量:

门控机制( GLU/SwiGLU )显著提升模型表达能力,但需更多参数。

硬件优化:

激活函数的计算是否容易被融合( 如CuDNN的fused GeLU优化 )。

5. 常见LLM的激活函数实例

模型

激活函数

应用场景

GPT-3/4

GeLU

FFN层

PaLM

SwiGLU

FFN层( 替代GeLU )

LLaMA-2

SwiGLU

FFN层

BERT

GeLU

FFN层

T5

ReLU

FFN层( 轻量化设计 )

FLASH

GAU

注意力层门控

面试回答要点

强调GeLU和SwiGLU:解释它们在LLM中的主流地位及数学动机。

对比ReLU与GeLU:GeLU的平滑性如何缓解梯度问题。

门控机制的价值:GLU变体如何通过动态门控增强模型容量。

实际部署考量:激活函数对训练速度、显存占用和硬件支持的影响。

通过掌握这些核心概念,你可以清晰展示对LLM底层机制的理解!

[an error occurred while processing the directive]
Copyright © 2088 迷你世界杯_竞猜世界杯 - xhfzmy.com All Rights Reserved.
友情链接