深度学习------激活函数
2026/6/10 15:33:23 网站建设 项目流程

先说说激活函数

你可以把神经网络想象成一个工厂流水线,数据就是原材料,一层层传递加工。但如果没有激活函数,这个流水线就很无聊——每一层都只是做简单的加减乘除,整条线不管多少层,最后顶多算个复杂的线性方程,解决不来复杂问题

以两层网络推导为例:

激活函数就像流水线上的「魔法师」,它在每一层数据处理后,给数据来个「变身」,引入一些非线性的变化。这样神经网络才能学习复杂规律,比如识别猫狗、判断情感之类的。


常用激活函数白话解释

1.Sigmoid函数 —— 「压缩大师」

样子:把任何数字都压缩到0和1之间

大白话:想象一个「概率制造机」。不管输入多大或多小(比如1000或-1000),它都会输出一个0到1之间的概率值。输入越大,输出越接近1;输入越小,输出越接近0。

生活类比:就像评委打分,不管选手多强或多差,最后得分总是在0分到1分之间。

缺点:当数字很大或很小时,它会变得特别「佛系」,几乎不变了(梯度消失),训练起来就很慢。


2.Tanh函数 —— 「零为中心压缩大师」

样子:把任何数字压缩到-1和1之间,中心点是0

大白话:Sigmoid的升级版,输出范围变成了-1到1,平均值是0。这让它处理数据更「平衡」一些。

生活类比:像情绪评分,-1代表极度负面,0代表中性,1代表极度正面。

优点:比Sigmoid对称性好,训练起来稍微舒服点。

缺点:跟Sigmoid一样,在极端值时也会「佛系」(梯度消失)。


3.ReLU函数 —— 「要么通过,要么滚蛋」

样子:正数原样通过,负数直接变0

公式f(x) = max(0, x)

大白话最暴力的激活函数。规则简单到爆:

  • 输入是正数?原封不动通过

  • 输入是负数?直接清零,滚蛋

生活类比:像公司门口的保安,只放行有正事的人(正数),闲杂人等(负数)一律拦下。

优点:计算超快,训练速度飞快,是现在深度学习最受欢迎的激活函数。

缺点:有时候会把所有神经元都「卡住」,全部输出0(Dead ReLU问题),整条线就瘫痪了。


4.Softmax函数 —— 「概率分配大师」

样子:把一堆数字变成概率分布,总和为1

大白话多分类问题的专属神器。想象你有5个选择,每个选择有个分数,Softmax把这些分数转换成概率,所有概率加起来正好等于100%。哪个分数高,对应的概率就大。

生活类比:就像期末考试排名,把所有学生的分数转换成「获得第一名的概率」。学霸概率高,学渣概率低,所有人概率加起来是100%。

用途:专门用在输出层,用来做多分类判断(比如判断这张图是猫、狗还是鸟)。

Sigmoid 函数以前很常用,现在不怎么用了,因为它有两个大缺点:训练慢、容易“学不动”。

问题1:什么叫“梯度消失”?

想象一下你在教一个学生学习,每一步都要根据错误来调整学习方法。在神经网络中,这个“调整”靠的是“梯度”——就是告诉模型:“你这步错了多少,该往哪个方向改”。

但 Sigmoid 函数有个问题:
它的“导数”(也就是用来算梯度的值)很小,通常在 0 到 0.25 之间。

👉 当神经网络有很多层时,要从最后一层一层一层往回算梯度(叫“链式求导”),这就相当于把很多个小数连着乘起来。

比如:
0.2 × 0.2 × 0.2 × ……(几十次)
→ 结果会变得特别特别小,几乎等于 0。

这就叫“梯度消失”—— 意思是:前面几层的参数根本得不到有效更新,就像学生前几节课完全没学到东西,只能原地踏步。

💡 类比:你让一个人从第100层楼往下传一句话,每传一层就小声一点,到第1层的时候,别人根本听不见。这就是“梯度消失”。


问题2:计算太复杂,训练慢

Sigmoid 函数里面有个指数运算(比如 e 的幂),计算机算起来比较费时间。

👉 就像你每次做题都要先算个复杂的公式,自然就慢了。
所以用 Sigmoid 的网络训练起来特别耗时,效率低。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询