深度学习(十二):多种激活函数

在深度学习模型中,激活函数(Activation Function)扮演着至关重要的角色。它决定了神经网络的非线性建模能力。若无激活函数,深层神经网络仅能退化为线性变换的堆叠,即使网络再深,最终也只能表示线性映射,无法有效地拟合复杂的非线性问题。因此,激活函数不仅是神经网络区别于传统线性模型的关键,而且直接影响训练的收敛速度、梯度传播情况以及模型的最终性能。

常见激活函数

Sigmoid 函数

定义:

特点:

  • 输出范围在 (0,1),可看作概率。
  • 在 0 附近较为敏感,两端趋于饱和。

优点:

  • 直观,输出值稳定在区间内。
  • 适合二分类任务的最后一层。

缺点:

  • 容易出现梯度消失问题,大的正负输入梯度接近 0。
  • 非零均值,可能导致训练收敛慢。

应用:早期神经网络(如BP网络)、逻辑回归输出层。

Tanh 函数

定义:

特点:

  • 输出范围 (-1,1),零均值。

优点:

  • 相比 Sigmoid,数据分布更居中,收敛更快。
  • 对负输入也有激活效果。

缺点:

  • 同样存在梯度消失问题。
  • 饱和区会使参数更新停滞。

应用:RNN 等循环神经网络中常用。

ReLU 函数

定义:

特点:

  • 简单高效,非线性显著。

优点:

  • 计算简单,加速训练收敛。
  • 避免梯度消失(正区间梯度恒为1)。

缺点:

  • "神经元死亡"问题:若长期输入为负,梯度为 0,权重无法更新。
  • 输出非零均值。

应用:CNN、MLP 中最常用的激活函数。

Leaky ReLU

定义:

其中 α 是一个小常数(如0.01)。

优点:

  • 缓解了 ReLU 神经元死亡问题。
  • 保留了负区间的微弱梯度。

缺点:

  • 超参数 α 需要手动设定。

应用:目标检测、图像分类等深度 CNN 模型。

Parametric ReLU (PReLU)

定义:与 Leaky ReLU 类似,但 α\alphaα 作为可学习参数。

优点:

  • 自适应地调整负区间斜率。
  • 在某些图像识别任务中能提升精度。

缺点:

  • 增加了参数量,可能过拟合。

Exponential Linear Unit (ELU)

定义:

优点:

  • 输出均值更接近零。
  • 负区间平滑,有助于梯度流动。

缺点:

  • 计算比 ReLU 更复杂。
  • α 超参数需调节。

Swish

定义:

特点:由 Google 提出,兼具平滑性与非线性。

优点:

  • 无硬拐点,梯度流动更稳定。
  • 在深层模型中往往优于 ReLU。

缺点:

  • 计算开销稍大。

应用:BERT、EfficientNet 等大型模型。

Gaussian Error Linear Unit (GELU)

定义:

其中 Φ(x) 是标准正态分布的累积分布函数。

特点:

  • 与 Swish 类似,但来源于概率建模。
  • 近似形式为:

优点:

  • 在 Transformer 等模型中效果优异。
  • 平滑且自带概率特性。

缺点:

  • 计算比 ReLU 复杂。

应用:GPT、BERT、Vision Transformer 等现代大模型。

Softmax

定义:

特点:

  • 将向量映射为概率分布。

优点:

  • 多分类任务输出必不可少。
  • 与交叉熵损失结合自然。

缺点:

  • 容易数值溢出,需要做数值稳定处理。
  • 不适合作为隐藏层激活。

激活函数比较

函数 输出范围 是否零均值 梯度消失 主要问题 典型应用
Sigmoid (0,1) 否 是 饱和、梯度消失 二分类输出层
Tanh (-1,1) 是 是 饱和 RNN
ReLU [0,∞) 否 否 神经元死亡 CNN/MLP
Leaky ReLU (-∞,∞) 否 较少 超参数 改进 CNN
PReLU (-∞,∞) 否 较少 过拟合风险 图像识别
ELU (-α,∞) 近似是 较少 计算复杂 深层网络
Swish (-∞,∞) 近似是 否 计算复杂 NLP/CNN
GELU (-∞,∞) 近似是 否 计算复杂 Transformer
Softmax (0,1) 否 - 数值稳定性 分类输出层

总结

激活函数是深度学习网络的"非线性引擎"。从 Sigmoid 到 ReLU,再到 Swish 与 GELU,激活函数的演化体现了深度学习对梯度消失、收敛速度和表达能力的持续优化。当前主流模型多采用 ReLU 及其改进型,而在自然语言处理和计算机视觉的前沿任务中,Swish 与 GELU 已逐渐成为标配。

相关推荐
zyseo81 小时前
GEO 内容可引用性体检:5 分钟检查页面是否容易被 AI 引用
大数据·人工智能
luoganttcc2 小时前
算子融合:从数学等价到编译器合法性的严格推导
人工智能
桃西西呀2 小时前
语义缓存:命中率上去了,却把问「今天天气」的人答成了「明天天气」
人工智能·llm·ai编程
GlobalInfo2 小时前
机器人强化学习平台 专精特新小巨人专项报告:细分市场占有率、行业位次与主导地位证明
人工智能·ai·机器人
Highcharts.js2 小时前
AI图表开发工具Highcharts Assist|自然语言生成图表代码
javascript·人工智能·highcharts·开发神器
嘟哩DuliDuli2 小时前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
const_qiu2 小时前
第 2.5 章 2.5.4-2.5.5:JWT 双 Token 与声明式权限守卫
java·人工智能
阿Q的AI笔记2 小时前
13.7个百分点、6天16.7万星、99.9百分位会话超45分钟:Harness Engineering完全指南
人工智能·深度学习
chien0112 小时前
算力效率的边界:3 个有价值观点 + 4 类遗留问题(AI Infra 技术解读)
人工智能
叶子丶苏2 小时前
VibeCoding实战三个AI小项目-VibeCoding入门笔记02
大数据·人工智能·笔记