深入探讨激活函数在神经网络中的应用
创作时间:
作者:
@小白创作中心
深入探讨激活函数在神经网络中的应用
引用
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 则是多分类问题的理想选择。然而,每种激活函数都有其优缺点,选择合适的激活函数对于网络的性能和训练效率至关重要。
热门推荐
从零开始:《无畏契约》新手观赛指南
《英雄联盟手游》:新手必看的MOBA赛事
"君"在日本文化中的独特魅力:从职场到家庭的称谓艺术
揭秘火车票区间限售:铁路部门如何平衡长短途旅客需求?
斯特拉大海牛:27年从发现到灭绝的悲剧
从斯特拉大海牛的悲剧看海洋生物保护:历史教训与现实行动
如何提高自身竞争力
如何锻炼自己当众讲话的能力?(建议收藏)
高三如何调整心态:8个实用方法助你应对高考压力
大岛直人揭秘:索尼克之父眼中的游戏与电影传奇
在参加索尼克粉丝聚会前,你必须知道的二三事
岱山旅游攻略:必游景点+行前准备全解析
翡翠珠宝品牌解析:从产地到选购,全面洞察市场发展趋势
翡翠A货是真玉吗?了解其价值与真假鉴别方法
鸡血的功效与作用、禁忌和食用方法
《索尼克X夏特:世代重启》评测:经典与现代的完美融合
彭亚飞:一位心血管专家的“传奇”人生
快速治嗓子疼的小妙招
岱山限定!海里捞到的绝佳美味都在“浙”里了
微信举报酒驾:动动手指就能守护安全
《甄嬛传》:与甄嬛的姐妹情分,到底还是被安陵容的一罐舒痕胶给毁了
甄姬:从袁熙之妻到魏文帝曹丕的夫人
历史上的甄姬:曹魏王朝的佳人与争议
行业观察| “夜经济”是展示城市形象的“新赛道”
曾小燕教你:古董保存的正确打开方式
斗鱼&虎牙:2025年顶级电竞赛事观赛指南
《英雄联盟》VR观赛:身临其境的游戏盛宴
探访北京东岳庙:春节祈福必打卡!
甘孜州“医保钱包”上线:职工医保个人账户实现跨省共济使用
二手房户口迁移的那些坑,你踩了吗?