常用激活函数及其导数
- Sigmoid函数
- 形式
\[f(z)=\frac{1}{1+\exp(-z)}\] - 导数
\[f^{'}(z)=f(z)(1-f(z))\]
- 形式
- Tanh激活函数
- 形式
\[f(z)=tanh(z)=\frac{e^z - e^{-z}}{e^z + e^{-z}}\] - 导数
\[f^{'}(z)=1-(f(z))^2\]
- 形式
- ReLU激活函数
- 形式
\[f(z) = \max(0, z)\] - 导数:略
- 形式
- GTU激活函数
- 形式
\[f(X) = tanh(X \cdot W+b)\cdot \sigma(X \cdot V+c)\] - 结构:tanh激活单元+sigmoid激活单元
- 存在梯度消失问题
- 形式
- GLU激活函数
- 形式
\[f(X) = (X\cdot W+b) \cdot \sigma(X \cdot V+c)\] - 结构:ReLU激活单元+sigmoid激活单元
- 不会存在梯度消失问题
- 形式
- SELU (scaled exponential linear units)激活函数
- 形式
\[\begin{aligned} \text{selu}(z) = \lambda \begin{cases} z \quad &\text{if} \ z > 0 \\ \alpha e^z - \alpha \quad &\text{if} \ z \le 0 \end{cases} \end{aligned}\] - 具有自归一化功能。其中\(\alpha, \lambda\)是两个常数
- 形式
- Swish激活函数
- 形式
\[f(z)=z\cdot \sigma(z)\] - 导数
\[f^{'}(z)=f(z) + \sigma(z)(1-f(z))\]
- 形式
Sigmoid和Tanh梯度消失问题
- Sigmoid函数在\(z\)很大或者很小时,导数趋近于0,造成梯度消失
- Tanh函数相当于Sigmoid的平移,梯度消失问题类似
\[\tanh(x)=2sigmoid(2x)-1\]
ReLU优缺点
- 优点
- 不需要计算指数,方便
- 非饱和性有效解决梯度消失问题,提供相对宽的激活边界
- 单侧抑制提供了网络的稀疏表达能力
- 局限性
- 神经元死亡问题
- 负梯度在经过该ReLU单元时被置为0,且在之后不被激活,梯度永远为0
- 如果学习率设置较大,会导致一定比例的神经元不可逆死亡,进而参数梯度无法更新
- 改进
- Leaky ReLU
\[f(z)=\begin{cases} z, z > 0 \\ az, z < 0 \end{cases}\]
一般\(a\)为小常数,既实现单侧抑制,又保留了部分负梯度,但\(a\)的选择增加了问题难度 - PReLU
- 将负轴部分斜率\(a\)作为网络中的可学习参数
- Random ReLU
- 训练过程中,\(a\)作为一个满足某种分布的随机采样
- 测试时固定
- Leaky ReLU
- 神经元死亡问题
标签:函数,导数,cdot,梯度,ReLU,激活 来源: https://www.cnblogs.com/weilonghu/p/11922739.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。