ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

神经元和激活函数

2022-01-04 08:32:42  阅读:370  来源: 互联网

标签:le frac 函数 ReLU 激活 sigma gamma 神经元


教材
https://www.bilibili.com/video/BV13b4y1177W

符号 含义
\(d\) 维数
\(b\) 偏置项

1.神经元模型

\(z=\sum_{i=1}^{d}w_ix_i +b = w^T x +b\)

2.激活函数

性质

连续并可导(允许少数点上不可导)的非线性函数。

可导的激活函数可以直接利用数值优化的方法来学习网络参数。

激活函数及其导函数要尽可能的简单

有利于提高网络计算效率。

激活函数的导函数的值域要在一个合适的区间内

不能太大也不能太小,否则会影响训练的效率和稳定性。

单调递增

常见激活函数

S型函数

logistic函数

\(\sigma(x)=\frac{1}{1+e^{-x}}\)

tanh函数

\(tanh(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}} ,值域[-1,1]\)
\(tanh(x)=2\sigma(2x)-1\)

性质:

都是饱和函数-两端导数接近于0,中间是类似线性的直线
Tanh函数是零中心化的,而logistic函数的输出恒大于0
\(\color{red}{非零中心化的输出会使得其后一层的神经元的输入发生偏置偏移(bias\ shift),并进一步使得梯度下降的收敛速度变慢。}\)
\(比如y=f(w\cdot \sigma(x))\)
\(求导\frac{\partial y}{\partial w}=f^{'}\cdot \sigma(x),f^{'}是标量,而sigma(x)是高维的,意味着所有分量都要么一起>0.要么一起<0,优化的时候会变成之字形的优化路线,优化效率差\)
\(方法1.归一化到0中心,2.增加偏置项\sigma(x)+b\)

斜坡函数

ReLU函数-修正的线性单元

\(ReLU(x)=max(0,x)\)

性质

计算上更加高效
生物学合理性
单侧抑制、宽兴奋边界
在一定程度上缓解梯度消失问题

死亡ReLU问题(Dying ReLU Problem)

函数的左边输出都是0,如果参数的Relu=0,那么梯度=0,没法更新参数了,一直处于不激活状态
解决方法,初始化的时候尽量小心,或者用LeakyRelu

Leaky Relu

\(LeakyRelu(x)=\begin{cases} x & x >0\\ \gamma x & x\le 0\\ \end{cases}=max(0,x)+\gamma min(0,x)\)

ELU-近似的零中心化的非线性函数

\(ELU(x)=\begin{cases} x & x >0\\ \gamma(e^x-1) & x\le 0\\ \end{cases}=max(0,x)+min(0,\gamma(e^x-1) )\)

softplus

\(Softplus(x)=log(1+e^x)\)

复合函数

Swish函数:张一红自门控(Self-Gated)激活函数

\(swish(x)=x\sigma(\beta x),\beta 允许多少信息通过,\beta越大,越逼近Relu,\beta=0就是线性函数\)

高斯误差线性单元 (Gaussina Error Linear Unit,GELU)

和Swish函数比较类似
\(GELU(x)=xP(X\le x)\)
\(其中P(X \le x)是高斯分布N(\mu,\sigma^2 )的累积分布函数\)
\(其中\mu,\sigma为超参数,一般设\mu = 0,\sigma = 1即可\)
没有解析函数,用其他函数近似
由于高斯分布的累积分布函数为S型函数,因此GELU可以用Tanh函数或Logistic函数来近似
\(GELU(x)\approx 0.5 x(1+tanh(\sqrt{\frac{2}{\pi}}(x+0.044715 x^3)))\)
\(GELU(x)\approx x\sigma(1.702 x)\)

简单总结

激活函数 函数 导数
Logistic函数 \(f(x)=\frac{1}{1+e^{-x}}\)                                    \(f'(x)=f(x)(1-f(x))\)                                   
Tanh函数 \(f(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}}\) \(f'(x)=1-f(x)^2\)
ReLU函数 \(max(0,x)\) \(f'(x)=I(x>0)\)
ELU函数 \(max(0,x)+min(0,\gamma(e^x-1) )\) \(f'(x)=I(x>0)+I(x\le 0)\cdot \gamma e^x\)
SoftPlus \(f(x)=log(1+e^x)\) \(f'(x)=\frac{1}{1+e^{-x}}\)

标签:le,frac,函数,ReLU,激活,sigma,gamma,神经元
来源: https://www.cnblogs.com/boyknight/p/15760814.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有