神经网络中的激活函数

激活函数在神经网络中至关重要,赋予网络非线性建模能力。本文介绍了多种常见激活函数,如sigmoid、tanh、ReLU及其变种,讨论它们的优缺点,如sigmoid的饱和性、ReLU的快速收敛和死亡神经元问题。通过对比,如tanh比sigmoid更快收敛,ReLU缓解梯度消失,以及ELU和Maxout等函数的特性,帮助理解激活函数在深度学习中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

欢迎关注博主的公众号:happyGirl的异想世界。有更多干货还有技术讨论群哦~

激活函数作用和重要性

神经网络中激活函数的主要作用是提供网络的非线性建模能力,如不特别说明,激活函数一般而言是非线性函数。假设一个示例神经网络中仅包含线性卷积和全连接运算,那么该网络仅能够表达线性映射,即便增加网络的深度也依旧还是线性映射,难以有效建模实际环境中非线性分布的数据。加入(非线性)激活函数之后,深度神经网络才具备了分层的非线性映射学习能力。因此,激活函数是深度神经网络中不可或缺的部分。

 

从定义来看,几乎所有的连续可导函数都可以用作激活函数。但目前常见的多是分段线性和具有指数形状的非线性函数。下文将依次对它们进行总结。

常见的激活函数

1.sigmoid

Sigmoid 是使用范围最广的一类激活函数,具有指数函数形状 。

表达式:

sigmoid 在定义域内处处可导,且两侧导数逐渐趋近于0,即:

Sigmoid 的饱和性虽然会导致梯度消失,但也有其有利的一面。例如它在物理意义上最为接近生物神经元。 (0, 1) 的输出还可以被表示作概率,或用于输入的归一化,代表性的如Sigmoid交叉熵损失函数

由于其概率在[0,1],中间又刚好是0.5,其实很适合用于二分类问题,0.5以上,置信度高,为正值,0.5以下,置信度低。

优点:
1.Sigmoid函数的输出映射在(0,1)之间,单调连续,输出范围有限,优化稳定,可以用作输出层。
2.求导容易。

缺点:
1.由于其软饱和性,容易产生梯度消失,导致训练出现问题。
2.其输出并不是以0为中心的。

2.tanh

表达式:

或者写作

tanh(x)=2sigmoid(2x)-1,也具有软饱和性。Xavier在文献中分析了sigmoid与tanh的饱和现象及特点,具体见原论文。此外,文献 中提到tanh 网络的收敛速度要比sigmoid快。因为 tanh 的输出均值比 sigmoid 更接近 0,SGD会更接近 natural gradient(一种二次优化技术),从而降低所需的迭代次数。

优点:
1.比Sigmoid函数收敛速度更快。
2.相比Sigmoid函数,其输出以0为中心。
缺点:
还是没有改变Sigmoid函数的最大问题——由于饱和性产生的梯度消失。

3.ReLu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值