常用的激活函数

引言

如果没有激 活函数 ,而我们只是一昧地加深模型层次 ,则搭建出来的神经网络数学表示如下 :
在这里插入图片描述

可以看出,上面的模型存在一个很大的问题,它仍然是一个线性模,如果不引入激活函数 ,则无论我们加深多少层 ,其结果都一样,线性模型在应对非线性问题时会存在很大的局限性。 激活函数的引 入给我们搭建的模型带来了非线性因素,非线性的模型能够处理更复杂的问题,所以通过选取不同的激活函数便可以得到复杂多变的深度神经网络,从而应对诸如图片分类这类复杂的问题。
下面讲解我们在实际应用最常用到的三种非线性激活函数: Sigmoid、 tanh、ReLU、LeackReLU,ELU

1.Sigmoid激活函数

Sigmoid的数学表达式如下:
在这里插入图片描述
根据Sigmoid函数,我们可以得到其几何图形,如下所示:
在这里插入图片描述
上图可以看出,Sigmiod函数的自变量的取值范围是负无穷到正无穷;值域为(0,1),输入数据越大越靠近1,越小越靠近0。Sigmoid在一开始作为激活函数使用受到了大众普遍的认可,其主要原因是因为从输入到经过sigmoid函数激活输出的一系列过程与生物神经网络的工作机理极为相似,不过sigmoid函数作为激活函数缺点也很明显,其最大的缺点就是会非常容易导致模型的梯度消失,因为sigmoid函数的导数区间为0~0.25。如下图所示:
在这里插入图片描述
根据BP反向传播需要求梯度,涉及复合函数的链式法则,如果我们的每层神经网络的输出节点都使用 Sigmoid 作为激活函 数 ,那么在反向传播的过程中每逆向经过一个节点,就要乘上一个 Sigmoid 的导数值,而Sigmoid的导数值的取值区间为0~0.25 ,所以即便每次乘上Sigmoid 的导数值中的最大值0.25 ,也相当于在后向传播的过程中每逆向经过一个节点,梯度值的大小就会变成原来的四分之一,如果模型层次达到了一定深度 ,那么后向传播会导致梯度 值越来越小,直到梯度消失。当参数初始化非常大的时候也可能存梯度爆炸。
优点:可以把数据压缩到0到1之间,在一定程度上可以用来激活输入。
缺点:
1.非常容易发生梯度消失,较小概率发生梯度爆炸。
2.Sigmoid的输出值恒大于 0即非0中心, 这会导致我们的模型在优化的过程中收敛速度变慢。
3.公式中存在指数运算,计算复杂,增加训练时间

tanh激活函数

激活函数 tanh 的数学表达式如下 :
在这里插入图片描述
根据Tanh函数,我们可以得到其几何图形,如下所示:

在这里插入图片描述
从上图我们可以看出,tanh 函数的输出结果是零中心数据,所以解决了激活函 数在模型优化过程中收敛速度变慢的问题。而 tanh 函数的导数取值区间为 0~ l ,仍然不够大,如下所示:
在这里插入图片描述
所以,因为导数取值范围的关系 ,在深度神经网络模型的后向传播过程中仍容易出现梯度消失的情况。
缺点:
1.容易存在梯度消失
2.还是有指数运算,网络要是非常深,会增加训练时间。

ReLU激活函数

ReLU ( Rectified Linear Unit,修正线性单元)是目前在深度神经网络模型中使用率最 高的激活函数 , 其数学表达式如下 :

在这里插入图片描述
ReLU 函数通过判断 0 和输入数据 x 中的最大值作为 结果进行输出,即如果 x 小于 o, 则输出 结果 0;如果 x 大于 0,则输出 结果 x 。其逻辑非常简单,使用该撤活函数的模型在 实际计算过程中非常高效。我们根据 ReLU 函数,可以得到 ReLU 的几何图形,如下所示:
在这里插入图片描述
ReLU 函数的收敛速度非常快 , 其计算效率远远高于 Sigmoid 和 tanh。 不过 ReLU 也 同样存在需要我们关注的问题:从 ReLU 的几何图形中可以看出, ReLU 的输出并不是零中心数据,这可能会导致某些神经元永远不会被激活,并且这些神经元相对应的参数不能被更新。这一般是由于模型参数在初始化时使用了 全正或者全负的值,或者在后向传播过程中设置的学习速率太快导致的。其解决方法是对模型参数使用更高级的初始化方法如Xavier,以及设置合理的后向传播学习速率,推荐使用自适应的算法如 Adam。
ReLU 尽管存在上述问题,但仍成为许多人搭建深度神经网络模型时使用的主流激活函数,它也在不断被改进。
优点:
1.计算简单,收敛速度快
缺点:1.ReLU的输出是非0中心的
2.Dead ReLU Problem:某些神经元不会被激活。不合理的参数初始化和较大的学习率导致的。

Leaky ReLU激活函数(PReLU)

这个激活函数是专门解决Dead Relu问题被提出来,设置a为0.01,在ReLU非零的地方有了值,因此在输入为负时,神经元更加倾向被激活,而不是死掉。
在这里插入图片描述
Leaky ReLU缺点:近似线性,如果遇到复杂任务,效果就不好,因此提出了PReLU。

ELU

指数线性单元输出具有0中心、没有Dead ReLU问题,有负数饱和区域,对噪声具有鲁棒性,是介于Leky ReLU 和 PReLU之间的一个函数
缺点:有指数运算
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值