深入探讨激活函数在神经网络中的应用
创作时间:
作者:
@小白创作中心
深入探讨激活函数在神经网络中的应用
引用
CSDN
1.
https://m.blog.csdn.net/weixin_55939638/article/details/145310964
激活函数是神经网络的关键组成部分,而神经网络又是机器学习的重要板块。神经网络由多个神经层构成,每一层都可看作数学表达式O = w*x + b,这里的 x 是前一层的结果, 是w当前层权重, b是偏置。从这个表达式看,神经网络似乎是一个线性表达式(函数图像类似一条直线),即便有多层,如
表达式依然是线性的。但激活函数能将线性表达式非线性化,这对神经网络学习复杂数据模型至关重要。
接下来,我们从激活函数的数学原理出发,详细剖析几种常见激活函数的优缺点。
1.Sigmoid 激活函数
Sigmoid函数是最早应用于神经网络中的激活函数之一。它的输出范围限定在 0 到 1 之间,因此非常适合用来表示概率,特别是在二分类问题中。
优点:
- 归一化输出:Sigmoid 的输出在 0 到 1 之间,非常适合表示概率。
- 平滑梯度:Sigmoid 的梯度非常平滑,有助于避免输出值的剧烈跳跃。
- 可微性:Sigmoid 是可微的,这使得我们能够计算其梯度,并应用反向传播算法。
- 明确的预测:输出值接近于 1 或 0,因此可以做出非常明确的决策。
缺点:
- 梯度消失:当输入值非常大或非常小时,Sigmoid 的梯度接近于零,这导致梯度消失问题,进而使得网络训练变得非常缓慢。
- 非零中心:由于 Sigmoid 输出不是以 0 为中心,这会影响梯度下降的效率,降低权重更新的效率。
在训练过程中,我们根据损失函数计算梯度来更新权重。权重更新公式一般为
当 Sigmoid 函数输出不是以 0 为中心时,比如其输出值都在 0 - 1 之间,为正值。
在计算梯度时,由于梯度的计算依赖于前一层的输出,这就导致梯度也会一直是正值(或者在某些情况下一直是负值)。
这就好比你在爬山(寻找损失函数的最小值,即山底),正常情况下你应该可以向左、向右、向上、向下各个方向探索来找到最快下山的路径,但现在因为梯度方向单一,你只能朝着一个方向移动,这样就很难找到最优路径,可能一直在山上绕圈子,需要花费更多的步数(迭代次数)才能到达山底。
例如,假设当前权重 应该在某个维度上,根据数据特征,需要一部分增加,一部分减少来更好地拟合数据。但由于 Sigmoid 输出非零中心导致梯度方向单一,只能进行单一方向的权重调整,无法全面地根据数据需求调整权重,从而大大影响了权重更新的效率,使得训练过程变得缓慢。 - 计算开销大:由于 Sigmoid 函数包含指数运算,因此计算效率较低,尤其在大型神经网络中可能会成为瓶颈。
2.tanh 激活函数
tanh 函数,即双曲正切函数,其数学表达式为 ,它的输出范围是 -1 到 1,是以 0 为中心的。
优点
- 解决 Sigmoid 非零中心问题:由于输出以 0 为中心,在梯度下降过程中,权重更新方向相对更合理,能一定程度上提升训练效率,比 Sigmoid 函数更适合作为隐藏层的激活函数。
- 某些需要正负反馈的模型:在一些需要对数据特征进行正负区分和反馈的模型中,tanh 函数可以更好地表达数据的特性。
缺点
- 梯度消失:和 Sigmoid 函数类似,tanh 函数在输入值较大或较小时,导数也趋近于 0 。在深层神经网络中,经过多层反向传播后,梯度同样会逐渐消失,导致权重更新缓慢,影响模型的训练效果。
- 计算复杂度较高:虽然相比 Sigmoid 函数有所优化,但 tanh 函数仍涉及指数运算,在大规模数据计算时,计算效率不如一些线性激活函数,如 ReLU,这会增加模型的训练时间。
3.ReLU 激活函数
ReLU(Rectified Linear Unit)函数是深度学习中最常用的激活函数之一。相比于 Sigmoid 和 Tanh,ReLU 的计算效率更高,且能够避免梯度消失问题。
优点:
- 避免梯度消失:当输入为正值时,ReLU 的梯度始终为 1,不会像 Sigmoid 那样发生梯度消失,因此训练速度较快。
- 计算效率高:ReLU 只进行线性变换,因此其计算速度远高于 Sigmoid 和 Tanh。
缺点: - Dead ReLU 问题:当输入为负时,ReLU 的输出恒为 0,这可能导致部分神经元在训练过程中“死亡”,即这些神经元无法更新,无法对网络的学习产生贡献。
- 非零中心:ReLU 的输出值为 0 或正数,因此它不是以 0 为中心的,可能影响网络的学习效率。
4.Softmax 激活函数
Softmax激活函数通常用于多分类问题的输出层。它将一个实数向量转换为一个概率分布,使得每个类别的概率值位于 0 和 1 之间,并且所有类别的概率总和为 1。
优点:
- 适用于多分类问题:Softmax 可以将多个类别的输出值转化为概率分布,适合于处理多分类任务。
- 归一化效果:Softmax 确保所有类别的输出值总和为 1,使得它们可以作为概率进行解释。
缺点: - 计算开销大:对于大规模分类问题,Softmax 需要计算所有类别的指数,这可能导致较高的计算开销。
- 梯度消失:当某些类别的概率接近 0 或 1 时,Softmax 的梯度可能会变得非常小,导致梯度消失问题。
激活函数
在神经网络中起着至关重要的作用。它们通过非线性变换为神经网络引入了复杂的学习能力,帮助网络解决实际问题。不同的激活函数适用于不同的任务,例如,Sigmoid 适合于概率预测,ReLU 适合于深度网络,Softmax 则是多分类问题的理想选择。然而,每种激活函数都有其优缺点,选择合适的激活函数对于网络的性能和训练效率至关重要。
热门推荐
新股中签率是怎么算的
深入解析AMD PBO技术:性能提升与优化手段
背诵英语课文五步法,效果很好!(转给学生)
月壤研究最新动态:揭示月球“颜色”变化的奥秘
民间吉祥物的丰富内涵与文化传承
违法分包的定义与合法分包的条件
2025年属猪注意什么?有什么注意事项?
广湛高铁机场1号隧道主体结构全部完成
2月末外储规模上升 央行连续四个月增持黄金
孩子说话磕巴?发育性口吃要正确应对
注册会计师证书的多重价值:从薪资提升到职业发展
量贩零食店走红三四线城市
2024Q2四大航财务对比分析——淡季供给过剩问题突出,南方航空业绩变脸大幅亏损
用什么工具可以快速查询车辆保险价格表?
第五套人民币一元防伪知识详解:纸币与硬币的防伪特征全解析
中年女性穿搭秘籍:避免暗沉色彩与塞衣角?对比图揭秘优雅秘诀!
小建中汤儿童可以服用吗
南宁:“一码三乘”一站式无忧出行
3DM文件类型详解:用途、支持软件及常见问题解决方案
云南特色美食:品味多元文化的独特魅力
通过性堪比坦克?乌尼莫克诞生史,最强越野特种车之路
杨紫为什么会红?其背后有着哪些因素
韧皮部:植物体内的“物流系统”
万里长城是什么样的?外观和结构有什么特征?
退役军人姚麟:戎装换白衣 开启医疗新征程
"空中校车"背后的山乡巨变
文物收藏证怎么办理?民间文物备案流程全解析
司马光砸缸救出来的小孩是谁
掌握“everywhere”的发音与用法,提升英语交流能力
是时候清仓美股了?