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

多语种外贸网站管理系统宁波seo营销

多语种外贸网站管理系统,宁波seo营销,旅游网站设计说明,网站费用目录 一、激活函数的作用是什么? 二、常见激活函数分类总览 三、核心激活函数详解 1. Sigmoid 函数 2. Tanh(双曲正切)函数 3. ReLU(Rectified Linear Unit) 4. Leaky ReLU 5. GELU(Gaussian Error…

目录

一、激活函数的作用是什么?

二、常见激活函数分类总览

三、核心激活函数详解

1. Sigmoid 函数

2. Tanh(双曲正切)函数

3. ReLU(Rectified Linear Unit)

4. Leaky ReLU

5. GELU(Gaussian Error Linear Unit)

6. Softmax(用于分类)

四、激活函数选择建议

五、代码示例(图像比较)

六、总结


在深度学习中,激活函数(Activation Function)起着至关重要的作用。它们赋予神经网络非线性能力,使得模型能够学习复杂的模式。本文将系统介绍几种常见的激活函数,包括它们的定义、图像特性、优缺点以及典型应用场景


一、激活函数的作用是什么?

神经网络的每一层都在进行类似线性变换的操作(例如 y = Wx + b)。如果每一层都是线性的,那么无论堆叠多少层,整个网络仍然是一个线性模型,无法拟合非线性问题

引入激活函数,就像在神经元中注入“生命”,让模型能更好地捕捉图像、语音、文本等数据中的复杂非线性结构。


二、常见激活函数分类总览

名称数学表达是否线性是否有梯度饱和是否稀疏激活是否单边抑制
Sigmoid
Tanh
ReLU
Leaky ReLU
GELU

其中:

Softmax否(用于输出层)

三、核心激活函数详解

1. Sigmoid 函数

✅ 定义:

✅ 特性:

  • 输出范围:(0, 1)

  • 曲线呈S型,适合输出概率

  • 梯度在两端接近0,容易梯度消失

  • 不是零中心,可能导致学习效率下降

✅ 应用场景:

  • 二分类输出层

  • 生物神经模型的启发

【直观例子】

🎯比喻:

像一个 旧式收音机上的音量旋钮,你不断拧,它从“关”慢慢变“开”,但无论怎么拧也拧不到 0 或 1(永远接近但不等于)。

🎯特性直观解释:

  • 你输入越大(正数),它输出越接近 1;

  • 你输入越小(负数),它输出越接近 0;

  • 中间(比如0)时输出是 0.5。

🎯应用直觉:

“你是不是开心?”输出一个概率:开心概率 87%?那就是 sigmoid(输入) = 0.87。


2. Tanh(双曲正切)函数

✅ 定义:

✅ 特性:

  • 输出范围:(-1, 1),零中心

  • 比Sigmoid在训练初期表现更好

  • 同样存在梯度消失问题

✅ 应用场景:

  • 中间隐藏层(老式 RNN 中常见)

【直观例子】

🎯比喻:

Tanh 和 Sigmoid 类似,但它输出的是正负情绪,“开心度”从 -1 到 1。

🎯 举例:

  • 如果你有个“情绪神经元”,输入 -2 表示“悲伤”,+2 表示“开心”:

    • 输入 -2,输出 ≈ -0.96(很悲伤)

    • 输入 0,输出 0(中性)

    • 输入 2,输出 ≈ +0.96(很开心)

🎯特点:

  • 比 Sigmoid 更对称、居中,负面信息也能被表达。


3. ReLU(Rectified Linear Unit)

✅ 定义:

✅ 特性:

  • 输出非负,激活稀疏,效率高

  • 收敛速度快,不易梯度消失

  • 缺点:可能“死亡神经元”(永远为0)

✅ 应用场景:

  • 当前最主流的激活函数

  • 深度CNN、Transformer 等几乎都用它

【直观例子】

🎯 比喻:

它就像一个 只测正电压的电压计,负电压一律显示为 0。

🎯 举例:

  • 输入 -3 → 输出 0(负电压测不到)

  • 输入 0 → 输出 0

  • 输入 2 → 输出 2(原样输出)

🎯直觉:

只关心“积极”的信息,负面的就直接“忽略”。


4. Leaky ReLU

✅ 定义:

其中 alpha 通常取 0.01

✅ 特性:

  • 解决 ReLU 的“死亡神经元”问题

  • 保留一定负数梯度,信息不完全丢失

✅ 应用场景:

  • 深层网络,如 GAN 中的判别器

【直观例子】

🎯比喻:

像 ReLU,但 对负数不是完全置零,而是象征性保留一点点信息,像“耳边风”但还是听进了一点。

🎯 举例:

假设 α = 0.01:

  • 输入 -3 → 输出 -0.03(不是完全0,保留微弱信号)

  • 输入 2 → 输出 2(正数正常输出)

🎯 优势:

防止“神经元死亡”——ReLU 一旦输出 0,梯度就是 0,学不动了;Leaky ReLU 还能继续学习。


5. GELU(Gaussian Error Linear Unit)

✅ 定义:

其中 $\Phi(x)$ 为标准正态分布的累积分布函数。

✅ 特性:

  • 更平滑的非线性

  • 结合概率与线性,有统计学基础

  • 训练效果优于 ReLU(尤其在Transformer中)

✅ 应用场景:

  • BERT、GPT 等大型预训练语言模型

【直观例子】

🎯比喻:

像是一个 聪明的门卫:不是简单的“过或不过”,而是:

“这个输入我有70%的把握是有用的,那我就通过70%的量。”

🎯 举例:

  • 输入 -2 → 输出 ≈ -0.04(觉得没啥用,几乎不给过)

  • 输入 0 → 输出 0(中立)

  • 输入 2 → 输出 ≈ 1.5(很有用,几乎全放行)

🎯为什么高端:

  • 比 ReLU 更平滑,不那么暴躁;

  • 大模型(如 BERT、GPT)都爱用它。


6. Softmax(用于分类)

✅ 定义(用于输出层):

✅ 特性:

  • 将输出映射为概率分布(总和为1)

  • 多分类问题中的首选

✅ 应用场景:

  • 神经网络最后一层的多分类任务

【直观例子】

🎯比喻:

比如你看到一张动物照片,你内心评分如下:

  • 狗:3分

  • 猫:1分

  • 鸟:0分

Softmax 会把它转换成概率:

  • 狗 84%

  • 猫 11%

  • 鸟 5%

🎯 你就会选“狗”这个类作为输出。

函数图像形状特征
SigmoidS形上限 1,下限 0,斜率中间最大
TanhS形(对称)上限 1,下限 -1,更“均衡”
ReLU折线(0 开始,斜向上)负数为0,正数直线
Leaky ReLU折线(负斜率微小)类似 ReLU,但负半轴有微斜
GELU更柔和的 S形平滑版 ReLU,有概率感
Softmax输出多个条形概率图多分类的概率分布

四、激活函数选择建议

场景推荐激活函数
二分类输出层Sigmoid
多分类输出层Softmax
一般隐藏层ReLU 或 GELU
避免 ReLU 死亡神经元Leaky ReLU
需要更平滑拟合Tanh / GELU
语言模型/TransformerGELU 是默认选择

五、代码示例(图像比较)

 说明:该代码主要对比6前面所讲的6种常见激活函数进行图示对比。

import torch
import torch.nn.functional as F
import matplotlib.pyplot as plt
import numpy as np# 定义输入区间
x = torch.linspace(-5, 5, 200)
x_np = x.numpy()# 定义激活函数列表(名称,函数)
activation_funcs = [("Sigmoid", torch.sigmoid),("Tanh", torch.tanh),("ReLU", F.relu),("Leaky ReLU", F.leaky_relu),("GELU", F.gelu),("Softmax", lambda x: F.softmax(x, dim=0))  # 注意:Softmax 需要设置 dim
]# 画图
plt.figure(figsize=(12, 8))
for i, (name, func) in enumerate(activation_funcs, 1):plt.subplot(2, 3, i)y = func(x)plt.plot(x_np, y.detach().numpy(), label=name, color='royalblue')plt.title(name)plt.grid(True)plt.axhline(0, color='gray', linestyle='--', linewidth=0.5)plt.axvline(0, color='gray', linestyle='--', linewidth=0.5)plt.legend()plt.tight_layout()
plt.suptitle("常见激活函数曲线", fontsize=16, y=1.02)
plt.show()

【运行结果】

解读分析


【代码解读】

代码核心逻辑

x = torch.linspace(-5, 5, 200)

这行表示:我们创建了一个从 -5 到 5 的连续输入,一共 200 个点,作用是给激活函数提供输入值

然后每个函数都会计算这些输入对应的输出,最终画在图上。


【逐个解释图像含义和为何长这样】

① Sigmoid

torch.sigmoid(x)
  • 曲线呈 S 型

  • 左边趋近于 0,右边趋近于 1;

  • 中间(x = 0)值为 0.5。

💡 原因解释:
Sigmoid 就是概率输出函数:输入越大输出越接近 1,越小越接近 0,中间是 0.5。

② Tanh

torch.tanh(x)

📈 图像形状:

  • 仍然是 S 型,但是对称的;

  • 左边趋近于 -1,右边趋近于 +1;

  • 中间是 0。

💡 对比 Sigmoid:
Sigmoid 输出范围 [0, 1],Tanh 输出 [-1, 1],所以 Tanh 的图像居中对称,更适合表示“正负情绪”或“中性”。

③ ReLU

F.relu(x)

📈 图像形状:

  • x < 0 时输出为 0(水平线);

  • x ≥ 0 时,输出等于 x(45°对角线上升)。

💡 解释:
ReLU 的意思就是 “不理负数,只传递正数”,所以负数全部变成 0。

④ Leaky ReLU

F.leaky_relu(x)

📈 图像形状:

  • x < 0 区域不是水平线,而是轻微向下斜;

  • x ≥ 0 区域仍是直线上升。

💡 解释:
Leaky ReLU 在负值区域也留一点“梯度”,例如让 x=-3 输出 -0.03(而不是 ReLU 的 0),可以防止神经元“死掉”。

⑤ GELU

F.gelu(x)

📈 图像形状:

  • 看起来像 ReLU + S型平滑过渡;

  • x 越大,输出越接近 x;

  • x 越小,输出越接近 0,但比 ReLU 更平滑。

💡 解释:
GELU 用概率方式决定信息是否通过,结果像一个“柔软的 ReLU”,是 Transformer 默认激活函数。

⑥ Softmax

F.softmax(x, dim=0)

📈 图像解释:

  • 会像一座高高的“波峰”,其余值低;

  • 因为 Softmax 是对所有输入整体归一化为概率

💡 例子:
如果输入是 [2, 1, 0],Softmax 会输出 [0.71, 0.26, 0.03] —— 最大值被高亮,其他抑制。

所以 Softmax 的图像并不像单独函数那样“逐点曲线”,而是一个全体归一化的概率分布。


【输出结果】

这段代码会生成一个包含以下六个子图的图像:

  • Sigmoid:S 型曲线,范围 [0, 1]

  • Tanh:双曲正切,对称的 S 形,范围 [-1, 1]

  • ReLU:负值为0,正值线性

  • Leaky ReLU:负值保留一点微弱斜率(例如 α=0.01)

  • GELU:像平滑的 ReLU,带概率因素

  • Softmax:由于是对整段 x 进行归一化,形状会像“波峰型分布”

函数名输出范围样式直觉解释
Sigmoid(0, 1)S型概率
Tanh(-1, 1)S型(对称)情绪值
ReLU[0, ∞)折线(负0正斜)忽略负数
Leaky ReLU(-∞, ∞)折线(负微斜)保留负梯度
GELU类似 [0, x]平滑曲线概率控制信息通过
Softmax(0, 1), 总和=1波峰分布多分类选择概率

六、各激活函数的应用领域与原因详解

6.1 Sigmoid:二分类输出(如医学诊断、垃圾邮件识别)

应用场景:

  • 二分类问题的输出层(例如:是否患病?是否为垃圾邮件?)

  • 简单神经网络的早期结构

为什么?

  • 输出在 (0, 1) 范围内,很容易解释为“概率”;

  • 适合表示“是/否”“好/坏”“真/假”类型决策;

  • 缺点:梯度容易消失,不适合深层网络。


6.2 Tanh:情绪建模、信号处理(如语音识别)

应用场景:

  • 早期 RNN(循环神经网络)中的隐藏层

  • 需要表达正负信号(如正负情感、涨跌趋势)

为什么?

  • 输出在 (-1, 1),是对称的,更自然地表达正负信号;

  • 零中心有利于梯度传播;

  • 但在深层网络中也有梯度消失问题。


6.3 ReLU:图像处理、卷积神经网络(CNN)

应用场景:

  • 计算机视觉(图像分类、目标检测)

  • 卷积神经网络(CNN)中的隐藏层

为什么?

  • 简单、计算快;

  • 输出稀疏(大量为0),利于提取关键特征;

  • 不容易梯度消失 → 有助于深层网络训练;

  • 缺点:容易“死亡神经元”(一直为0)。


6.4 Leaky ReLU:GAN、对抗样本处理

应用场景:

  • 对抗生成网络(GAN)的判别器

  • 深层神经网络中对抗 ReLU 死亡问题

为什么?

  • 和 ReLU 相比,它对负数留了一点梯度(不过于激进);

  • 更稳定、更“灵活”,适合噪声丰富或梯度敏感的任务;

  • 在训练不稳定的场景中表现更好。


6.5 GELU:自然语言处理、预训练大模型(如 BERT, GPT)

应用场景:

  • Transformer 网络中的默认激活函数;

  • BERT、GPT、T5 等预训练语言模型;

  • 文本生成、问答、翻译等任务

为什么?

  • 比 ReLU 更平滑(带概率性),更适合表达复杂语言上下文;

  • 收敛更稳定、泛化能力强;

  • 兼具 ReLU 的稀疏性和 Sigmoid 的平滑性。


6.6 Softmax:多分类问题(如图像识别、文本分类)

应用场景:

  • 多分类输出层(猫/狗/鸟、情绪正负中性、话题分类等)

  • 所有类别互斥的任务中

为什么?

  • 把多个输出转换成概率分布(总和为1);

  • 适合模型做“唯一选择”的决策场景;

  • 输出结果易解释、利于后续评估。


总结表格

激活函数典型应用领域原因说明
Sigmoid二分类输出层映射到 (0,1),表达概率
TanhRNN、语音识别零中心对称,适合情绪等正负值任务
ReLUCNN、图像识别简单、快、不饱和、特征稀疏
Leaky ReLUGAN 判别器防止神经元死亡,训练稳定
GELUNLP 预训练模型平滑、高级、泛化能力强
Softmax多分类输出层归一化概率,表达唯一选择


💬 小结:怎么选?

  • 图像任务?→ ReLU / Leaky ReLU

  • 文本任务?→ GELU

  • 二分类?→ Sigmoid

  • 多分类?→ Softmax(输出层)

  • 情绪/涨跌?→ Tanh


七、总结

激活函数是深度学习的核心“非线性引擎”。
不同的函数适用于不同的网络结构和任务目标。随着模型的不断演化,像 GELU 等新型激活函数也正在替代传统函数,成为工业界的默认选择。

✅ 学术研究中,需要理解激活函数的数学性质
✅ 工程应用中,建议以 GELU(Transformer)或 ReLU(CNN)为主

http://www.dtcms.com/wzjs/151584.html

相关文章:

  • 商城源码哪个品牌好百度排名优化咨询电话
  • wordpress手赚推广网站优化排名哪家好
  • 自己做网站模版百度付费推广
  • 销售一个产品的网站怎么做百度首页的ip地址
  • 国家卫生健康委健康中心百度搜索推广优化师工作内容
  • 58同城做网站的电话小红书推广平台
  • 做网站图片要求高吗创建网站免费
  • 网站建设注意事项 南京怎么用网络推广业务
  • 注册公司登陆哪个网站易推广
  • vs做的小型网站例青岛网站快速排名提升
  • 八方资源网的免费b2b网站营销型网站名词解释
  • 凡科做网站要钱泉州seo按天收费
  • 网站防采集专业seo整站优化
  • 电子商务网站建设与规划视频广东深圳疫情最新消息今天
  • 开封网站建设zducm中国软文网官网
  • 怎么免费网做百度收录的网站吗百度站长
  • 谷歌搜索引擎免费入口seocms
  • 哪些网站开发网站推广论坛
  • 做酒店的网站淮南网站seo
  • 北京pc端网站开发互联网营销方式有哪些
  • 西安手机网站建设公司地推app
  • aspcms 你的网站未安装 请先安装什么是广告营销
  • 做外贸网站咨询百度网站提交入口
  • 如何做纯文本网站竞价外包
  • 福建网站开发公司电话游戏推广合作平台
  • 网站怎么做小程序十大经典口碑营销案例
  • 企业品牌网站开发制作合同南京关键词网站排名
  • 石家庄做网站的公司山东关键词优化联系电话
  • 政府网站建设指标抖音营销软件
  • 网站建设阶段性工作重点搜索引擎推广排名