目录

  • 1 神经网络为什么需要非线性激活函数?
  • 2 Sigmoid
    • 2.1缺陷
      • 2.1.1 梯度消失
      • 2.2.2 Output非zero-centered
  • 3 Tanh
    • 3.1 缺陷
  • 4 ReLu
    • 4.1 缺陷
  • 5 Leaky ReLu
  • 6 ELU
  • 7 GeLu
    • 7.1 基础知识回顾
      • 7.1.1 正态分布
      • 7.1.2 概率密度函数
      • 7.1.3 累积分布函数
      • 7.1.4 Φ(x)与erf(x)函数关系公式推导
  • 8 GeLu激活函数
    • 8.1 GeLu激活函数的直观理解
    • 8.2 GeLu函数的公式推导

1 神经网络为什么需要非线性激活函数?

首先我们来看下线性和非线性函数
线性变换函数,比如:y=2xy=2xy=2x y=xy =x y=x
非线性变换函数,比如:y=2x2y=2x^2 y=2x2 y=cosxy=cosx y=cosx
非线性函数是指的一阶导数不为常数的函数
如果神经网络激活函数用线性函数,则网络的输出yyy还是xxx输入的一个线性函数,则模型无法表征非线性函数的输出
比如在第一层神经元:a1=w1x+b1a_1=w_1x+b_1a1​=w1​x+b1​
第二层神经元:a2=w2a1+b2=w2(w1x+b1)+b2a_2=w_2a_1+b_2=w_2(w_1x+b_1)+b_2a2​=w2​a1​+b2​=w2​(w1​x+b1​)+b2​
=(w2w1)x+(w2b1+b2)=w′x+b′=(w_2w_1)x+(w_2b_1+b_2)=w^{'}x+b^{'}=(w2​w1​)x+(w2​b1​+b2​)=w′x+b′

yyy的输出是xxx的线性关系,线性函数的组合还是线性函数,所以网络再深,最后输出的yyy还是xxx的线性函数。所以用非线性激活函数,神经网络理论上可以逼近任意函数。
那么对于我们常见的非线性激活函数,他们各自又有什么特点和缺陷?

2 Sigmoid

数学表达式:
f(x)=11+e−xf(x)= \frac {1}{1+e^{-x}} f(x)=1+e−x1​
函数图形:

f(x)f(x)f(x)的导数数学表达式:f(x)′=f(x)(1−f(x))f(x)^{'}=f(x)(1-f(x)) f(x)′=f(x)(1−f(x))函数导数图形:

python实现如下:

import numpy as np
def sigmoid(x,derivative=False):if derivative == True:return x * (1 - x)return 1 / (1+np.exp(-x))

2.1缺陷

2.1.1 梯度消失

我们知道f(x)=sigmoid(x)f(x)=sigmoid(x)f(x)=sigmoid(x)其中maxf(x)′=1/4max f(x)^{'}=1/4maxf(x)′=1/4,根据BP算法中的链式法则,当网络很深的时候,小于1的数(1/4)累乘会趋向于0,如下图所示:

我们令θu(t)\theta_u(t)θu​(t)表示第ttt层神经元uuu的残差,fv(x)f_v(x)fv​(x)表示为神经元v经过激活函数f(x)f(x)f(x)的输出,则有如下公式:
∂θv(t−q)∂θu(t)={fv′(netv(t−1))wuvifq=1fv′(netv(t−q))∑l=1n∂θl(t−q+1)∂θ(t)wlvelse\frac{\partial\theta_v(t-q)}{\partial\theta_u(t)}=\begin{cases} f^{'}_v(net_v(t-1))w_{uv} \quad if \text{ }q=1 \\ f^{'}_v(net_v(t-q))\sum_{l=1}^n\frac{\partial\theta_l(t-q+1)}{\partial\theta(t)}w_{lv} \quad else \end{cases}∂θu​(t)∂θv​(t−q)​={fv′​(netv​(t−1))wuv​if q=1fv′​(netv​(t−q))∑l=1n​∂θ(t)∂θl​(t−q+1)​wlv​else​
则 ∣∂θ(t−q)∂θ(t)∣=∣∏m=1qWF(Net(t−m))∣≤(∣W∣maxNet{∣F′(Net)∣})q\begin{vmatrix} \frac{\partial\theta(t-q)}{\partial\theta(t)}\end{vmatrix}=\begin{vmatrix}\prod_{m=1}^qWF(Net(t-m))\end{vmatrix} \le (\begin{vmatrix}W\end{vmatrix}max_{Net}\{\begin{vmatrix}F^{'}(Net)\end{vmatrix}\})^q ∣∣∣​∂θ(t)∂θ(t−q)​​∣∣∣​=∣∣​∏m=1q​WF(Net(t−m))​∣∣​≤(∣∣​W​∣∣​maxNet​{∣∣​F′(Net)​∣∣​})q
其中maxf′=1/4maxf^{'}=1/4maxf′=1/4;则当∣W∣<4\begin{vmatrix}W\end{vmatrix} < 4∣∣​W​∣∣​<4时候,上式子将会是一个小于1的值的qqq次乘方,则模型越往前传播,梯度会越来越小,甚至接近0,出现梯度消失现象,网络中的参数没法学习更新的情况。

2.2.2 Output非zero-centered

sigmoid函数,将输出值映射到 (0,1)之间,都是正数,没有负数,这导致网络的学习表达能力将会受到限制。

3 Tanh

数学表达式:
f(x)=ex−e−xex+e−x=21+e−2x−1=2sigmoid(2x)−1f(x)= \frac {e^x-e^{-x}} {e^x+e^{-x}} = \frac {2}{1+e^{-2x}} -1=2sigmoid(2x)-1 f(x)=ex+e−xex−e−x​=1+e−2x2​−1=2sigmoid(2x)−1
从公式可以看出,tanh函数就是sigmoid函数的一个简单缩放,输出值在(-1,1)之间,输出是以0为中心的。
函数图形:

f(x)f(x)f(x)的导数数学表达式:
f(x)′=1−f(x)2f(x)^{'} = 1-f(x)^2 f(x)′=1−f(x)2

函数导数图形:

python实现如下:

def tanh(x, derivative=False):if devivative == True:return (1 - (x ** 2))return np.tanh(x)

3.1 缺陷

修正了sigmoid函数输出非0为中心的问题,但是还是不能解决梯度消失的问题

4 ReLu

ReLu(Rectified Linear Unit)数学表达式:
f(x)=max(0,x)f(x) = max(0,x) f(x)=max(0,x)
函数图形:

函数导数数学表达式:
f(x)′={1x>00x≤0f(x)^{'} = \begin {cases} 1 \quad x>0 \\ 0 \quad x \le 0 \end {cases} f(x)′={1x>00x≤0​

函数导数图形:

这里需要说明的一点是,ReLu是非线性函数,因为导数不是一个常数,虽然看着简单,但是ReLu函数是分段函数,组合可以逼近任意函数。
ReLu函数,时间和空间复杂度最低,也不需要更高的指数运算,而且能够缓解梯度消失问题。

4.1 缺陷

ReLu函数的一个缺陷是会引入死亡问题。什么叫“死亡问题”?
首先让我们来回顾下网络模型更新过程中的BP算法:


如上图所示,假设我们用平方和损失函数: E=12∑j=1M(yj−tj)2E = \frac {1}{2} \sum_{j=1}^{M}(y_j-t_j)^2 E=21​j=1∑M​(yj​−tj​)2 其中t={t1,...,tm}t =\{t_1,...,t_m\}t={t1​,...,tm​}是一个M维度的向量,代表的是每个样本的真实label标签。yjy_jyj​是输出预测的第jjj个输出label值。BP反向传播更新参数梯度如下公式:
step1 :计算神经元输出值的导数
∂E∂yj=yj−tj\frac {\partial E} {\partial y_j} = y_j-t_j∂yj​∂E​=yj​−tj​
step2: 计算神经元输入值的导数(通常称为“残差”)
∂E∂uj=∂E∂yj.∂yj∂uj=(yj−tj).f(x)′=(yj−tj).yj(1−yj)=ej\frac {\partial E}{\partial u_j}=\frac {\partial E} {\partial y_j}. \frac {\partial y_j} {\partial u_j}=(y_j-t_j).f(x)^{'}=(y_j-t_j).y_j(1-y_j)= e_j ∂uj​∂E​=∂yj​∂E​.∂uj​∂yj​​=(yj​−tj​).f(x)′=(yj​−tj​).yj​(1−yj​)=ej​
若f(x)f(x)f(x)为sigmoid激活函数
step3: 计算权重梯度
∂E∂wij′=∂E∂uj.∂uj∂wij′=ej.hi\frac {\partial E}{\partial w_{ij}^{'}}=\frac {\partial E} {\partial u_j}. \frac {\partial u_j} {\partial w_{ij}^{'}}=e_j.h_i ∂wij′​∂E​=∂uj​∂E​.∂wij′​∂uj​​=ej​.hi​也就是第nnn层的第iii个神经元与第n+1n+1n+1层的第jjj个神经元连接的权重wij′w_{ij}^{'}wij′​的每一次更新的梯度Δwij′\Delta w_{ij}^{'}Δwij′​就是第n层的第iii个神经元的输出值乘以第n+1层的第jjj个神经元的残差
若输入x≤0x \le 0x≤0则经过ReLu激活函数后,神经元的输出为0,所谓的“死忙问题”,那么连接的该神经元的权重梯度为0,导致权重无法更新问题,神经元处于死忙状态。

5 Leaky ReLu

Rectifier Nonlinearities Improve Neural Network Acoustic Models
数学表达式如下:
f(x)={xx>0axx≤0f(x)= \begin {cases} x \quad x>0 \\ ax \quad x \le 0 \end {cases} f(x)={xx>0axx≤0​
函数图形如下:

函数导数数学表达式:f(x)′={1x>0ax≤0f(x)^{'}=\begin {cases} 1 \quad x>0 \\ a \quad x \le 0 \end {cases} f(x)′={1x>0ax≤0​
图像如下:

其中aaa,是一个很小的常数,避免神经元输出为0,缓解了ReLu的“死忙问题”,但是aaa是一个人工定的参数,不够灵活,所以,有一些工作,比如像Parametric ReLu把aaa当做一个参数进行训练,网络自适应学习得来。

6 ELU

FAST AND ACCURATE DEEP NETWORK LEARNING BY
EXPONENTIAL LINEAR UNITS
数学表达式:
f(x)={xx>0a(ex−1)x≤0f(x)= \begin {cases} x \quad x>0 \\ a(e^x-1) \quad x \le 0 \end {cases} f(x)={xx>0a(ex−1)x≤0​
函数图形:

导数数学表达式:
f(x)′={1x>0a+f(x)x≤0f(x)^{'}= \begin {cases} 1 \quad x>0 \\ a+f(x) \quad x \le 0 \end {cases} f(x)′={1x>0a+f(x)x≤0​
导数图形:

其中aaa是一个很小的常数。整体来看,Leaky ReLu,ELU以及其它的一些变体,都是在保证ReLu激活函数优势的情况下,缓解神经元"死忙"问题,从ELU公式可以看出,xxx小于0的部分,用一个指数变化形式,相对复杂一些,计算开销比Leaky ReLu要高,但输出更加平滑。

7 GeLu

7.1 基础知识回顾

7.1.1 正态分布

正态分布又名高斯分布,是一个非常常见的连续概率分布。若随机变量XXX服从一个位置参数μ\muμ、尺度参数σ\sigmaσ的正态分布,记为:X∼N(μ,σ2)X ∼ N(\mu,\sigma^2)X∼N(μ,σ2)则其概率密度函数为f(x)=1σ2πe−(x−μ)22σ2f(x)=\frac{1}{\sigma \sqrt{2\pi}}e^{-\frac{(x-\mu)^2}{2\sigma^2}}f(x)=σ2π​1​e−2σ2(x−μ)2​
正态分布的数学期望值μ\muμ等于位置参数,决定了分布的位置,其方差σ2\sigma^2σ2的开平方或标准差σ\sigmaσ等于尺度参数,决定了分布的幅度。我们通常说的标准正态分布是位置参数μ=0\mu=0μ=0,尺度参数σ2=1\sigma^2=1σ2=1的正态分布,下图展示了不同μ\muμ和σ\sigmaσ的正态分布图

拉普拉斯在误差分析实验中使用了正态分布,勒让德于1805年引入最小二乘法这一重要方法,而高斯则宣传在1794年就使用了该方法,并通过假设误差服从正态分布
有几种不同的方法用来说明一个随机变量,最直观的方法是概率密度函数,这种方法能够表示随机变量每个取值多大的可能性。

7.1.2 概率密度函数

正态分布的概率密度函数均值为μ\muμ,方差为σ\sigmaσ是高斯函数的一个实例:
f(x;μ,σ)=1σ2πexp(−(x−μ)22σ2)f(x;\mu,\sigma)=\frac{1}{\sigma\sqrt{2\pi}}exp(-\frac{(x-\mu)^2}{2\sigma^2})f(x;μ,σ)=σ2π​1​exp(−2σ2(x−μ)2​)如果一个随机变量XXX服从这个分布,我们写作X∼N(μ,σ2)X∼ N(\mu,\sigma^2)X∼N(μ,σ2)。如果μ=0\mu=0μ=0并且σ=1\sigma=1σ=1,这个分布被称为标准正态分布,这个分布简化为:f(x)=12πexp(−x22)f(x)=\frac{1}{\sqrt{2\pi}}exp(-\frac{x^2}{2})f(x)=2π​1​exp(−2x2​),下图给出了不同参数的正态分布的函数图:

7.1.3 累积分布函数

累积分布函数是指随机变量XXX小于或等于xxx的概率,用概率密度函数表示为F(x;μ,σ)=1σ2π∫−∞xexp(−(t−μ)22σ2)dtF(x;\mu,\sigma)=\frac{1}{\sigma\sqrt{2\pi}}\int^x_{-\infty} exp(-\frac{{(t-\mu)}^2}{2\sigma^2})dtF(x;μ,σ)=σ2π​1​∫−∞x​exp(−2σ2(t−μ)2​)dt
标准正态分布的累积分布函数习惯上记为ΦΦΦ,它仅仅是μ=0\mu=0μ=0, σ=1\sigma=1σ=1时的值,
Φ(x)=F(x;0,1)=12π∫−∞xexp(−t22)dtΦ(x)=F(x;0,1)=\frac{1}{\sqrt{2\pi}}\int^x_{-\infty} exp(-\frac{{t}^2}{2})dtΦ(x)=F(x;0,1)=2π​1​∫−∞x​exp(−2t2​)dt
正态分布的累积分布函数能够由一个叫做误差函数的特殊函数表示:
Φ(z)=12[1+erf(z−μσ2)]Φ(z)=\frac{1}{2}\begin{bmatrix}1+erf(\frac{z-\mu}{\sigma\sqrt{2}}) \end{bmatrix}Φ(z)=21​[1+erf(σ2​z−μ​)​]
标准正态分布的累积分布函数习惯上记为Φ,它仅仅是指μ=0,σ=1\mu=0,\sigma=1μ=0,σ=1时的值,用误差函数表示的公式简化为:
Φ(z)=12[1+erf(z2)]Φ(z)=\frac{1}{2}\begin{bmatrix}1+erf(\frac{z}{\sqrt{2}}) \end{bmatrix}Φ(z)=21​[1+erf(2​z​)​]
其中erf(x)erf(x)erf(x),称为误差函数(也称为高斯误差函数),它的定义如下:
erf(x)=1π∫−xxe−t2dt=2π∫0xe−t2dterf(x)=\frac{1}{\sqrt\pi}\int^x_{-x}e^{-t^2}dt=\frac{2}{\sqrt\pi}\int_0^xe^{-t^2}dterf(x)=π​1​∫−xx​e−t2dt=π​2​∫0x​e−t2dt
累积分布函数图形如下:

7.1.4 Φ(x)与erf(x)函数关系公式推导

Φ(x)=12π∑−∞xe−t22dt=22π∑−∞xe−(t2)2dt2Φ(x)=\frac{1}{\sqrt{2\pi}}\sum_{-\infty}^xe^{-\frac{t^2}{2}}dt=\frac{\sqrt{2}}{\sqrt{2\pi}}\sum_{-\infty}^{x}e^{-(\frac{t}{\sqrt{2}})^2}d\frac{t}{\sqrt{2}}Φ(x)=2π​1​∑−∞x​e−2t2​dt=2π​2​​∑−∞x​e−(2​t​)2d2​t​

=1π∑−∞x2e−z2dz=1π∑−∞0e−z2dz+1π∑0x2e−z2dz=\frac{1}{\pi}\sum_{-\infty}^{\frac{x}{\sqrt{2}}}e^{-z^2}dz=\frac{1}{\pi}\sum_{-\infty}^0e^{-z^2}dz+\frac{1}{\pi}\sum_{0}^{\frac{x}{\sqrt{2}}}e^{-z^2}dz=π1​∑−∞2​x​​e−z2dz=π1​∑−∞0​e−z2dz+π1​∑02​x​​e−z2dz

=12+12erf(xπ)=12[1+erf(x2)]=\frac{1}{2}+\frac{1}{2}erf(\frac{x}{\sqrt{\pi}})=\frac{1}{2}\begin{bmatrix}1+erf(\frac{x}{\sqrt{2}})\end{bmatrix}=21​+21​erf(π​x​)=21​[1+erf(2​x​)​]

8 GeLu激活函数

GAUSSIAN ERROR LINEAR UNITS (GELUS)
论文中对比了GeLu激活函数在试验效果比ReLu,ELU都好,加上在bert中的应用,最近引起了广泛的关注。
函数数学公式:
f(x)=xP(X≤x)=xΦ(x)f(x)= xP(X \le x) = xΦ(x) f(x)=xP(X≤x)=xΦ(x)
其中 Φ(x)=12[1+erf(x2)](1)Φ(x)=\frac{1}{2}\begin{bmatrix}1+erf(\frac{x}{\sqrt{2}}) \end{bmatrix} { (1)}Φ(x)=21​[1+erf(2​x​)​](1)
X∼N(0,1),Φ(x)X∼N(0,1){,}Φ(x)X∼N(0,1),Φ(x)是标准正态分布的累积分布函数,论文提供的近似求解公式:
f(x)=xΦ(x)=0.5x(1+tanh[2/π(x+0.044715x3)])(2)f(x)=xΦ(x)=0.5x(1+tanh[ \sqrt{2/\pi}(x+0.044715x^3)]) {(2)} f(x)=xΦ(x)=0.5x(1+tanh[2/π​(x+0.044715x3)])(2)
函数图形:

函数导数图形:

8.1 GeLu激活函数的直观理解

GeLu函数综合了dropout和ReLu的特色,从上面公式我们也可以看出,从ReLu, Leakly ReLu,ELU等,都是在对输入神经元乘以1或者0或者一个aaa常量进行变化,当x≥0x \ge 0x≥0的时候,以上三个函数都是乘以1作为神经元的输出,当x≤0x \le 0x≤0的时候,则乘以0或者aaa作为神经元的输出。
但GeLu是对xxx乘以标准正态分布的累积分布函数,根据xxx的输入,平滑的进行变化,随着x变小,Φ(x)Φ(x)Φ(x)变小,则神经元的输入xxx会以大概率的情况下“丢弃",整个过程相对ReLu激活函数更smooth

8.2 GeLu函数的公式推导

误差函数与标准正态分布的积分累积分布函数的关系为:Φ(x)=12[1+erf(x2)]Φ(x)=\frac{1}{2}\begin{bmatrix}1+erf(\frac{x}{\sqrt{2}}) \end{bmatrix}Φ(x)=21​[1+erf(2​x​)​]
从上述(1)和(2)公式可以看出,需要证明:
erf(x2)≈tanh(2π(x+ax3))erf(\frac{x}{\sqrt2}) \approx tanh(\sqrt{\frac{2}{\pi}}(x+ax^3))erf(2​x​)≈tanh(π2​​(x+ax3))其中a≈0.044715a \approx 0.044715a≈0.044715

证明如下:
泰勒级数
在数学上,对于一个实数或复数aaa领域上,以实数作为变量或以复数作为变量的函数,并且是无穷可微的函数f(x)f(x)f(x),它的泰勒级数是以下这种形式的幂级数:
f(x)=∑n=0∞f(n)(a)n!(x−a)nf(x)=\sum_{n=0}^{\infty}\frac{f^{(n)}(a)}{n!}(x-a)^nf(x)=n=0∑∞​n!f(n)(a)​(x−a)n这里n!n!n!表示nnn的阶乘,而f(n)(a)f^{(n)}(a)f(n)(a)表示函数fff在点aaa处的nnn阶导数,如果a=0a=0a=0,也可以把这个级数称为麦克劳林级数
指数函数exe^xex的等价幂级数:
ex=1+∑n=1∞xnn!=1+x+x22!+x33!+x44!+...e^x=1+\sum_{n=1}^{\infty}\frac{x^n}{n!}=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!}+...ex=1+n=1∑∞​n!xn​=1+x+2!x2​+3!x3​+4!x4​+...
tanh(x)tanh(x)tanh(x)的泰勒级数:tanh(x)=x−x33+o(x3)tanh(x)=x-\frac{x^3}{3}+o(x^3)tanh(x)=x−3x3​+o(x3)
erf(x)erf(x)erf(x)的泰勒级数:erf(x)=2π(x−x33)+o(x3)erf(x)=\frac{2}{\sqrt{\pi}}(x-\frac{x^3}{3})+o(x^3) erf(x)=π​2​(x−3x3​)+o(x3)
tanh(2π(x+ax3))=2π(x+(a−23π)x3)+o(x3)(3) tanh(\sqrt{\frac{2}{\pi}}(x+ax^3)) = \sqrt{\frac{2}{\pi}}(x+(a-\frac{2}{3\pi})x^3)+o(x^3) \text{ }\text{ }\text{(3) }tanh(π2​​(x+ax3))=π2​​(x+(a−3π2​)x3)+o(x3)  (3) 
erf(x2)=2π(x−x36)+o(x3)(4) erf(\frac{x}{\sqrt{2}})=\sqrt{\frac{2}{\pi}}(x-\frac{x^3}{6})+o(x^3) \text{ }\text{ }\text{(4) }erf(2​x​)=π2​​(x−6x3​)+o(x3)  (4) 
令公式(3)和公式(4)相等,则a≈0.04553992412a \approx 0.04553992412a≈0.04553992412,与论文中aaa为0.044715十分接近。

bert中的glue函数实现如下:

def gelu(x):cdf = 0.5 * (1.0 + tf.tanh((np.sqrt(2 / np.pi) * (x + 0.044715 * tf.pow(x,3))))return x * cdf

说明:本文图片素材来源Casper Hansen博文以及wikipedia

Sigmoid,tanh,Relu,Leaky ReLu,ELU,GeLu 激活函数理解相关推荐

  1. 激活函数总结sigmoid,tanh,relu,Leaky ReLU,RRelu,ELU,PRelu,SELU,swish

    本文总结深度学习的损失函数及其优缺点. 激活函数是深度学习模型的重要成分,目的是将线性输入转换为非线性.常见的激活函数有sigmoid,tanh,ReLU等 1.sigmoid Sigmoid 非线性 ...

  2. [Pytorch 常用函数] 激活函数Relu, Leaky Relu

    修正线性单元(Rectified linear unit,ReLU)是神经网络中最常用的激活函数.它保留了 step 函数的生物学启发(只有输入超出阈值时神经元才激活),不过当输入为正的时候,导数不为 ...

  3. 【卷积神经网络】12、激活函数 | Tanh / Sigmoid / ReLU / Leaky ReLU / ELU / SiLU / Mish

    文章目录 一.Tanh 二.Sigmoid 三.ReLU 四.Leaky ReLU 五.ELU 六.SiLU 七.Mish 本文主要介绍卷积神经网络中常用的激活函数及其各自的优缺点 最简单的激活函数被 ...

  4. 激活函数详解(ReLU/Leaky ReLU/ELU/SELU/Swish/Maxout/Sigmoid/tanh)

    神经网络中使用激活函数来加入非线性因素,提高模型的表达能力. ReLU(Rectified Linear Unit,修正线性单元) 形式如下: ReLU公式近似推导:: 下面解释上述公式中的softp ...

  5. 【深度学习】激活函数:原理+常见激活函数(Sigmoid\Tanh\ReLU\Leaky ReLU\Softmax)

    首先需要知道为什么要引入激活函数:激活函数是用来加入非线性因素的,因为线性模型的表达能力不够.引入非线性激活函数,可使深层神经网络的表达能力更加强大. 在深度学习中,线性模型只需要简单的全连接层就能实 ...

  6. 深度学习中的一些常见的激活函数集合(含公式与导数的推导)sigmoid, relu, leaky relu, elu, numpy实现

    文章目录 Sigmoid(x) 双曲正切 线性整流函数 rectified linear unit (ReLu) PReLU(Parametric Rectified Linear Unit) Lea ...

  7. Python画Sigmoid、Relu、Softmax、Tanh、Leaky relu等函数(1)

    看鱼书有感,记录一下: 批处理的好处及小批量概念(2) Python(Numpy)实现均方差.交叉熵损失函数等(3) 纯Python实现:函数求导切线图.求偏导.梯度下降法(4) 纯Python实现反 ...

  8. Relu函数,sigmoid函数,leaky Relu

    Relu函数: y=max(0,x) 蓝色为Relu函数,红色曲线为Relu函数的导数. 优点: 1.在正区间内不会发生梯度消失问题, 2. 函数比较简单,求导计算复杂度较低. 3. 梯度能维持在不错 ...

  9. 深度学习- 激活函数总结(Sigmoid, Tanh, Relu, leaky Relu, PReLU, Maxout, ELU, Softmax,交叉熵函数)

    激活函数是用来加入非线性因素的,解决线性模型所不能解决的问题 激活函数通常有以下性质 – 非线性 – 可微性 – 单调性 –

最新文章

  1. C Implement a string class with basic functionality
  2. 用Fiddler抓取手机APP数据包
  3. JSP EL表达式 格式化日期
  4. 到底什么是hash partition?
  5. 如何处理 Hybris Accelerator css style 显示不正确的问题
  6. poj3050 穷竭搜索 挑战程序设计竞赛
  7. CSP-S/J2019认证相关内容
  8. 怎么处理table 与 form绑定的问题(现象:点击取消后 修改的值还是在table显示)
  9. 【Proteus仿真8086】往8086 内存中写入数据
  10. 在HP-UX上安装Oracle11.2.0.3修改maxfiles
  11. sun的java认证考试_Sun Java认证考试科目
  12. 梦幻古龙 服务器名称修改,【鬼族大话西游】(梦幻古龙改版)虚拟机镜像服务端+配套客户端+GM工具+启动教程...
  13. 拼多多砍价小程序源码-带搭建教程-可开流量主
  14. (转)交替方向乘子法(ADMM)的原理和流程的白话总结
  15. ddos应急处理_来看看DDoS攻击应急预案
  16. 第三方平台可以通过微信公众平台素材管理接口实现同步了
  17. [附源码]计算机毕业设计JAVA停车场管理系统
  18. OPC UA IO模块对工业物联网的影响
  19. matlab画图颜色属性
  20. 解决IE不能上网,火狐能上网 谷歌和IE浏览器都上不了网只能火狐上怎么办?

热门文章

  1. 华为海外技术支持及营销待遇一览
  2. Android如何屏蔽home键和recent键
  3. Android L 漫游浅析
  4. Sklearn:天池新人实战赛o2o优惠券使用预测 part1
  5. Mapper.xml模板
  6. trap water_25 Water Effect Photoshop教程和画笔
  7. 对lua迭带器的理解
  8. 字符串类型(str)
  9. Ivanti Neurons™神经元:远程边缘设备实现自主、自动、自助管理
  10. 解决IntelliJ IDEA使用Git很慢