激活函数介绍

ReLU对比Sigmoid主要变化:
1.单侧抑制
2.相对宽阔的兴奋边界
3.稀疏激活性

(1) sigmoid函数(曲线很像“S”型)

公式:

image

曲线:

image

也叫 Logistic 函数,用于隐层神经元输出
取值范围为(0,1)
它可以将一个实数映射到(0,1)的区间,可以用来做二分类。(它不像SVM直接给出一个分类的结果,Logistic Regression给出的是这个样本属于正类或者负类的可能性是多少,当然在多分类的系统中给出的是属于不同类别的可能性,进而通过可能性来分类。)
在特征相差比较复杂或是相差不是特别大时效果比较好。

sigmoid缺点:
激活函数计算量大,反向传播求误差梯度时,求导涉及除法
反向传播时,很容易就会出现梯度消失的情况,从而无法完成深层网络的训练(sigmoid的饱和性)

下面解释为何会出现梯度消失:

反向传播算法中,要对激活函数求导,sigmoid 的导数表达式为:

image

sigmoid 原函数及导数图形如下:

image

从上图可以看到,其两侧导数逐渐趋近于0

具有这种性质的称为软饱和激活函数。具体的,饱和又可分为左饱和与右饱和。与软饱和对应的是硬饱和, 即
sigmoid 的软饱和性,使得深度神经网络在二三十年里一直难以有效的训练,是阻碍神经网络发展的重要原因。具体来说,由于在后向传递过程中,sigmoid向下传导的梯度包含了一个  因子(sigmoid关于输入的导数),因此一旦输入落入饱和区,的导数就会变得接近于0,导致了向底层传递的梯度也变得非常小。此时,网络参数很难得到有效训练。这种现象被称为梯度消失。一般来说, sigmoid 网络在 5 层之内就会产生梯度消失现象

此外,sigmoid函数的输出均大于0,使得输出不是0均值,这称为偏移现象,这会导致后一层的神经元将得到上一层输出的非0均值的信号作为输入。

(2) Tanh函数

公式

![image](http://upload-images.jianshu.io/upload_images

(3) ReLU

Rectified Linear Unit(ReLU) - 用于隐层神经元输出

公式

image

曲线

image

输入信号 <0 时,输出都是0,>0 的情况下,输出等于输入

ReLU 的优点:
Krizhevsky et al. 发现使用 ReLU 得到的 SGD 的收敛速度会比 sigmoid/tanh 快很多。除此之外,当x<0时,ReLU硬饱和,而当x>0时,则不存在饱和问题。所以,ReLU 能够在x>0时保持梯度不衰减,从而缓解梯度消失问题。这让我们能够直接以监督的方式训练深度神经网络,而无需依赖无监督的逐层预训练。

ReLU 的缺点:
随着训练的推进,部分输入会落入硬饱和区,导致对应权重无法更新。这种现象被称为“神经元死亡”。与sigmoid类似,ReLU的输出均值也大于0,偏移现象和 神经元死亡会共同影响网络的收敛性。

(4) softmax函数

Softmax - 用于多分类神经网络输出

公式

image

举个例子来看公式的意思:

image

就是如果某一个 zj 大过其他 z, 那这个映射的分量就逼近于 1,其他就逼近于 0,主要应用就是多分类。

为什么要取指数,第一个原因是要模拟 max 的行为,所以要让大的更大。
第二个原因是需要一个可导的函数。
/11244541-94a6f5bb20e0af83?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

image

f’(z)=4sigmoid‘(2z)

曲线

image

也称为双切正切函数
取值范围为[-1,1]。
tanh在特征相差明显时的效果会很好,在循环过程中会不断扩大特征效果。
与 sigmoid 的区别是,tanh 是 0 均值的,因此实际应用中 tanh 会比 sigmoid 更好,然而,tanh一样具有软饱和性,从而造成梯度消失。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
激活函数是神经网络中非常重要的组成部分。它的作用是将输入信号转换成输出信号,从而为网络的下一层提供输入。激活函数的选择可以影响网络的性能和训练速度。本文将详细介绍激活函数的种类、特性和应用。 1. Sigmoid函数 Sigmoid函数是最早被使用的激活函数之一,它将输入压缩到0-1之间的范围。Sigmoid函数的表达式为: $f(x)=\frac{1}{1+e^{-x}}$ Sigmoid函数具有以下特点: (1)输出值的范围在0-1之间,可以用于二分类问题的输出。 (2)当输入值很大或很小时,Sigmoid函数的梯度接近于0,这容易导致梯度消失问题。 (3)Sigmoid函数的输出不是以0为中心的,这会导致网络输出不稳定,难以收敛。 2. Tanh函数 Tanh函数是Sigmoid函数的变形,它将输入压缩到-1到1之间的范围。Tanh函数的表达式为: $f(x)=\frac{e^{x}-e^{-x}}{e^{x}+e^{-x}}$ Tanh函数具有以下特点: (1)输出值的范围在-1到1之间,可以用于多分类问题的输出。 (2)当输入值很大或很小时,Tanh函数的梯度会接近于0,这容易导致梯度消失问题。 (3)与Sigmoid函数相同,Tanh函数的输出也不是以0为中心的。 3. ReLU函数 ReLU函数是目前最常用的激活函数之一,它将负数输入输出为0,正数输入输出为输入值本身。ReLU函数的表达式为: $f(x)=max(0,x)$ ReLU函数具有以下特点: (1)ReLU函数的计算速度很快,因为它只需要判断输入是否大于0即可。 (2)ReLU函数不存在梯度消失问题,因为当输入值为正数时,梯度恒为1。 (3)ReLU函数的输出以0为中心,有助于网络的收敛。 (4)ReLU函数存在一个缺点,就是当输入为负数时,梯度为0,这被称为“死亡ReLU”问题。 4. Leaky ReLU函数 Leaky ReLU函数是对ReLU函数的改进,它在输入为负数时,输出为输入的一小部分。Leaky ReLU函数的表达式为: $f(x)=max(0.01x,x)$ Leaky ReLU函数具有以下特点: (1)Leaky ReLU函数避免了“死亡ReLU”问题。 (2)Leaky ReLU函数的输出以0为中心,有助于网络的收敛。 5. ELU函数 ELU函数是一种带指数衰减的ReLU函数,它在输入为负数时,输出为一个接近0的值。ELU函数的表达式为: $f(x)=\begin{cases}x & x>0\\ \alpha(e^{x}-1)& x\leq 0\end{cases}$ 其中,$\alpha$是一个可调的参数。 ELU函数具有以下特点: (1)ELU函数避免了“死亡ReLU”问题。 (2)ELU函数的输出以0为中心,有助于网络的收敛。 (3)ELU函数在一些数据集上比ReLU函数表现更好。 6. Softplus函数 Softplus函数是Sigmoid函数的变形,它将输入压缩到0到正无穷之间的范围。Softplus函数的表达式为: $f(x)=ln(1+e^{x})$ Softplus函数具有以下特点: (1)Softplus函数的输出值在0到正无穷之间,可以用于回归问题的输出。 (2)Softplus函数的输出以0为中心,有助于网络的收敛。 (3)与Sigmoid函数相同,Softplus函数存在梯度消失问题。 7. Swish函数 Swish函数是一种新的激活函数,它将输入进行sigmoid变换,然后与输入相乘。Swish函数的表达式为: $f(x)=x\sigma(\beta x)$ 其中,$\sigma$是Sigmoid函数,$\beta$是一个可调的参数。 Swish函数具有以下特点: (1)Swish函数在一些数据集上比ReLU函数表现更好。 (2)Swish函数的输出以0为中心,有助于网络的收敛。 (3)Swish函数可以通过调整$\beta$参数来控制激活函数的形状。 8. Hard Tanh函数 Hard Tanh函数是Tanh函数的变形,它将输入压缩到-1到1之间的范围,并将输出限制在该范围内。Hard Tanh函数的表达式为: $f(x)=\begin{cases}1 & x>1\\ -1 & x<-1\\ x & -1\leq x\leq 1\end{cases}$ Hard Tanh函数具有以下特点: (1)Hard Tanh函数的输出范围在-1到1之间,可以用于多分类问题的输出。 (2)Hard Tanh函数不存在梯度消失问题。 (3)Hard Tanh函数的输出以0为中心,有助于网络的收敛。 9. Softmax函数 Softmax函数是一种用于多分类问题的激活函数,它将输入转换成概率分布。Softmax函数的表达式为: $f(x_{i})=\frac{e^{x_{i}}}{\sum_{j=1}^{K}e^{x_{j}}}$ 其中,$K$是类别数。 Softmax函数具有以下特点: (1)Softmax函数将输出转换成概率分布,可以用于多分类问题的输出。 (2)Softmax函数的输出归一化,总和为1。 (3)Softmax函数的输出与其他类别的输出相互影响,需要注意。 总结 激活函数是神经网络中非常重要的组成部分,它可以将输入信号转换成输出信号,并为网络的下一层提供输入。不同的激活函数具有不同的特点和适用范围,选择合适的激活函数可以提高网络的性能和训练速度。在实际应用中,需要根据具体问题的特点和数据集的情况选择合适的激活函数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值