当前位置: 首页 > ops >正文

常用激活函数总结

1. 经典激活函数

Sigmoid

  • 公式 σ ( x ) = 1 1 + e − x \sigma(x) = \frac{1}{1 + e^{-x}} σ(x)=1+ex1
  • 特点:输出范围(0,1),平滑可导,适合概率输出。
  • 缺点:梯度消失、计算复杂度高、输出非零中心。
  • 适用场景:二分类输出层(如逻辑回归)。

Tanh

  • 公式 tanh ⁡ ( x ) = e x − e − x e x + e − x \tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} tanh(x)=ex+exexex
  • 特点:输出范围(-1,1),零中心化,梯度强于Sigmoid。
  • 缺点:梯度消失问题仍存在。
  • 适用场景:RNN隐藏层、需要对称输出的场景。

ReLU

  • 公式 f ( x ) = max ⁡ ( 0 , x ) f(x) = \max(0, x) f(x)=max(0,x)
  • 特点:计算高效,缓解梯度消失,稀疏激活。
  • 缺点:神经元死亡(负输入梯度为0),输出非零中心。
  • 适用场景:CNN/MLP隐藏层(如ResNet、AlexNet)

LeakyReLU

  • 公式 f ( x ) = max ⁡ ( α x , x ) f(x) = \max(\alpha x, x) f(x)=max(αx,x) α = 0.01 \alpha=0.01 α=0.01
  • 特点:解决ReLU死亡问题,负区引入小斜率。
  • 适用场景:替代ReLU,尤其深层网络。

2. 现代激活函数

GeLU(高斯误差线性单元)

数学表达式

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

其中:

  • Φ ( x ) \Phi(x) Φ(x):标准正态分布的累积分布函数
  • erf ( x ) \text{erf}(x) erf(x):误差函数, 2 π ∫ 0 x e − t 2 d t \frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2} dt π 20xet2dt

Swish

  • 公式 f ( x ) = x ⋅ σ ( β x ) f(x) = x \cdot \sigma(\beta x) f(x)=xσ(βx) β = 1 \beta=1 β=1时为SiLU)
  • 特点:平滑、非单调,自适应梯度。
  • 适用场景:替代ReLU,轻量级模型。

Mish

  • 公式 f ( x ) = x ⋅ tanh ⁡ ( ln ⁡ ( 1 + e x ) ) f(x) = x \cdot \tanh(\ln(1 + e^x)) f(x)=xtanh(ln(1+ex))
  • 特点:更平滑的Swish变体,避免梯度截断。
  • 适用场景:计算机视觉任务。

3. 门控机制激活函数

GLU(门控线性单元)

  • 公式 GLU ( x ) = ( W 1 x + b 1 ) ⊗ σ ( W 2 x + b 2 ) \text{GLU}(x) = (W_1x + b_1) \otimes \sigma(W_2x + b_2) GLU(x)=(W1x+b1)σ(W2x+b2)
  • 特点:动态调节特征重要性,参数量翻倍。
  • 适用场景:NLP任务(如机器翻译)。

SwiGLU

  • 公式 SwiGLU ( x ) = ( W 1 x ) ⊗ Swish ( W 2 x ) \text{SwiGLU}(x) = (W_1x) \otimes \text{Swish}(W_2x) SwiGLU(x)=(W1x)Swish(W2x)
  • 特点:结合Swish平滑性和门控机制,性能优于GLU。
  • 适用场景:大语言模型FFN层(如LLaMA、PaLM)。

4. 多分类专用

Softmax

  • 公式 Softmax ( x i ) = e x i ∑ j e x j \text{Softmax}(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}} Softmax(xi)=jexjexi
  • 特点:输出概率分布,总和为1。
  • 适用场景:多分类输出层.

选择建议

需求推荐激活函数
计算效率ReLU/LeakyReLU
深层网络稳定性GeLU/Swish
动态特征选择GLU/SwiGLU
概率输出Sigmoid/Softmax
硬件优化ReLU(易于融合计算)

注:门控类激活函数(如SwiGLU)虽性能优,但计算量较大,需权衡效率与效果。

http://www.xdnf.cn/news/5660.html

相关文章:

  • websocketpp 安装及使用
  • 基于OpenCV的人脸识别:Haar级联分类器
  • SATA—Link层状态机
  • Gmssl库的aes算法效率问题
  • 家具制造行业的现状 质检LIMS如何赋能家具制造企业质检升级
  • 见多识广7:KAIST(韩国高等科学技术院)——关注AI加速器方向
  • 复盘与导出工具最新版V23.0版本更新--新增韭菜异动轮动功能
  • 基于 Python 的后端开发学习路线
  • 【AI】mcp server是什么玩意儿
  • 【Linux网络】 HTTP cookie与session
  • DeepPrep:深度学习提升神经影像预处理
  • LeetCode算法题:电话号码的字母组合
  • Bodhi linux 系统详解
  • 分析红黑树工程实用的特点
  • 智能手表测试计划文档(软/硬件)
  • 读取.ini后缀类型的马达配置文件并进行赋值
  • AtCoder Beginner Contest 405(ABCD)
  • 搭建高可用及负载均衡的Redis
  • C++四种类型转换:static_cast、 dynamic_cast const cast、 reinterpret_cast
  • 详解RabbitMQ工作模式之通配符模式
  • 3.9/Q2,GBD数据库最新文章解读
  • 珠海金山2007逆向分析挑战赛-CrackMe看雪(九连环)(writeup)
  • 【运维】MacOS蓝牙故障排查与修复指南
  • 大地网接地电阻测试的必要性
  • Python如何使用进行风险管理和投资组合优化
  • 2025智能体基建在进化过程中带来的质变
  • 国外付费AI软件充值教程
  • 《棒球百科》MLB棒球公益课·棒球1号位
  • 02.Golang 切片(slice)源码分析(一、定义与基础操作实现)
  • VBA —— 学习Day6