小标
2018-09-21
来源 :
阅读 2128
评论 0
摘要:本文主要向大家介绍了机器学习入门之机器学习之激活函数,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。
本文主要向大家介绍了机器学习入门之机器学习之激活函数,通过具体的内容向大家展现,希望对大家学习机器学习入门有所帮助。
本文和大家分享的主要是机器学习的激活函数相关内容,一起来看看吧,希望对大家学习机器学习有所帮助。
激活函数将神经网络最后一层输出当做输入,进行转换。也用于神经网络两层之间。
那么在神经网络为什么要使激活函数?
比如在逻辑回归中,用于将输出转换为0/1进行分类。在神经网络中用于确定输出是yes/no。或者将输出映射到某一个范围之间,比如手写数字识别中,将输出映射到0--9之间。
激活函数一般分类两类:线性和非线性
线性或恒等激活函数
如上函数,该输出不会限制在任何范围内,与上述我们的目的不相符。
非线性激活函数
如上就是非线性激活函数的例子,在神经网络中用的最多。它是模型易于泛化或者适应各种数据,并对输出进行区分。 对激活函数有几个术语需要了解: 导数或者微分 :当优化方法与梯度相关时,需要求导,因此函数必须可微。 单调性 :当激活函数是单调时,单层网络能够保证是凸函数。 输出值的范围
: 当激活函数输出值是 有限 的时候,基于梯度的优化方法会更加 稳定,因为特征的表示受有限权值的影响更显著;当激活函数的输出是 无限 的时候,模型的训练会更加高效,不过在这种情况小,一般需要更小的learning rate.
下面介绍几种常见的激活函数:
sigmoid 函数
如上,输出永远在0--1之间,其中在接近0或者1时,变化速度变慢。在模型预测可能性时有用。 该函数可微,因此在两点之间可以计算斜率。该函数单调但是其导函数不是单调的。 该激活函数会导致神经网络在训练时被卡住,部分缺点如下:
1. 当输入过大过小时, 梯度接近0.因此初始值很大时,神经元梯度会消失,加大训练难度。
2. 该函数输出的均值不为0。因此后一层神经元将上一层的非0输出作为信号输入,梯度始终为正。
Tanh 双曲正弦激活函数
与sigmoid类似,但是比sigmoid效果要好,输出在-1--1之间。不同与sigmoid,该函数输出均值为0. 常用于二分类问题。
Relu(线性整流)激活函数
目前这是在神经网络中用的最多的激活函数,大部分卷积神经网络和深度神经网络在在使用。 如上,该范围在0--无穷大之间。 其中该函数和其倒数都是单调的。 部分优点如下:
1. 收敛速度相比于sigmoid和Tanh要快很多
2. 相比于sigmoid和Tanh, 由于函数特性,只需要一个阈值就能得到激活值 同时也有缺点,比如一个非常大的梯度流过一个Relu神经元时, 更新参数以后,由于激活值太大, 导致对后面的数据激活困难。
Softmax 激活函数
softmax用于多分类过程中,它将多个神经元的输出,映射到(0,1)区间内,可以看成概率来理解,从而来进行多分类!
上述中为什么会提到导数或者可微: 当在梯度下降中更新梯度时,需要知道曲线的斜率,并进行更新,因为这是下降最快的方向。因此在神经网络中需要使用到激活函数的导数。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标人工智能机器学习频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号