[激活函数] 非线性原因分析、Sigmoid、TanH、ReLU和ELU

您所在的位置:网站首页 激活函数的作用是做非线性变换 [激活函数] 非线性原因分析、Sigmoid、TanH、ReLU和ELU

[激活函数] 非线性原因分析、Sigmoid、TanH、ReLU和ELU

2024-06-05 04:37| 来源: 网络整理| 查看: 265

本篇主要整理下激活函数的相关内容。

首先讲下激活函数需要满足的条件:

计算简单非线性

为什么需要满足非线性呢?我们来看下面这个例子。

如图单隐层神经网络,我们在计算的时候有如下公式: z 1 [ 2 ] = w [ 1 ] x + b [ 1 ] a 1 [ 2 ] = g [ 1 ] ( z 1 [ 2 ] ) \begin{aligned} z_1^{[2]} ;= w^{[1]}x+b^{[1]} \\ a_1^{[2]} ;= g^{[1]}(z_1^{[2]}) \end{aligned} z1[2]​a1[2]​​=w[1]x+b[1]=g[1](z1[2]​)​ 其中, g g g表示激活函数,假设激活函数是线性函数,其表达式为: g ( x ) = w x + b g(x)=wx+b g(x)=wx+b,则 a 1 [ 2 ] = g [ 1 ] ( z 1 [ 2 ] ) = w z 1 [ 2 ] + b = w ( w [ 1 ] x + b [ 1 ] ) + b = w w [ 1 ] x + w b [ 1 ] + b \begin{aligned} a_1^{[2]} ;= g^{[1]}(z_1^{[2]}) \\ ;=wz_1^{[2]}+b \\ ;=w(w^{[1]}x+b^{[1]} )+b \\ ;=ww^{[1]}x+wb^{[1]}+b \end{aligned} a1[2]​​=g[1](z1[2]​)=wz1[2]​+b=w(w[1]x+b[1])+b=ww[1]x+wb[1]+b​

我们令 w ′ = w w [ 1 ] w'=ww^{[1]} w′=ww[1], b ′ = w b [ 1 ] + b b'=wb^{[1]}+b b′=wb[1]+b,则 a 1 [ 2 ] = w ′ x + b ′ a_1^{[2]}=w'x+b' a1[2]​=w′x+b′,这和没有经过激活函数处理的结果一样,因此如果激活函数是线性的,则无论有多少隐层,其和具有线性激活函数的单隐层网络效果一样。因此,为了得到更好的效果,我们需要激活函数是非线性的。一般而言,线性激活函数只有的输出层才使用,比如,你需要预测一个回归问题,线性激活函数可以将结果映射为实数。

下面介绍几种常用的激活函数:

1、sigmoid

sigmoid函数也成logistic函数,其公式为: σ ( x ) = 1 1 + e x p ( − x ) \begin{aligned} \sigma(x)=\frac{1}{1+exp(-x)} \end{aligned} σ(x)=1+exp(−x)1​​

下图是sigmoid函数对应的图像(图片来源):

从上图可以看出,sigmoid函数的性质如下:

关于 ( 0 , 0.5 ) (0, 0.5) (0,0.5)中心对称,其值全部大于0sigmoid可以将实数域的值映射到 ( 0 , 1 ) (0, 1) (0,1)之间,赋予了概率的意义。在sigmoid函数值 x ; 5 x;5 x>5或者 x ; − 5 x;-5 x5或者 x ; − 5 x;-5 xx,0,​x≥0xx,λ⋅(exp(x)−1),​x≥0x


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3