美文网首页深度学习-推荐系统-CV-NLP
神经网络中常见激活函数及特点

神经网络中常见激活函数及特点

作者: sudop | 来源:发表于2019-03-20 00:01 被阅读80次

从最开始的逻辑回归到后来的CNN,RNN,我们经常会听到激活函数这个词,也经常会听到sigmod函数会造成神经网络梯度消失,BN为什么能缓解梯度消失问题,这些都和激活函数相关,接下来我们来讲解下激活函数。
学习激活函数前,我们带着这几个问题?
1.什么是激活函数


在神经网络中,神经元的前向传播计算如上图所示,
  • (2)tanh 函数


  • (3)Relu函数


  • (4)Leaky ReLU函数


  • (5)ELU 函数


    image.png
  • (6)MaxOut函数
    4.怎么选择合适的激活函数?
    3.什么是梯度爆炸和梯度消失?

    • 深层神经网络在使用梯度下降法进行反向传播时会出现梯度消失和梯度爆炸问题,网络越深,梯度消失和梯度爆炸风险越大。
  • 梯度消失:


    假设在一个4层单神经元的网络模型中。
    y_i=σ(w_ix_i+bi)
    σ(x)=\frac{1}{1+e^-x}
    \frac{∂c}{∂y_1}=\frac{∂c}{∂y_4}\frac{∂y_4}{∂z_4}\frac{∂z_4}{∂x_4}\frac{∂x_4}{∂z_3}\frac{∂z_3}{∂x_3}\frac{∂x_3}{∂z_2}\frac{∂z_2}{∂x_2}\frac{∂x_2}{∂z_1}\frac{∂z_1}{∂x_z}=\frac{∂c}{∂y_4}*σ'(z_4)*w_4*σ'(z_3)*w_3*σ'(z_2)*w_2*σ'(z_1)*w_1
    σ(x)为sigmod函数
    0<=σ'(x)=σ'(x)*(1-σ'(x))=-(σ'(x)-\frac12)+\frac14<=\frac14
    因此每次进行梯度更新时,传到前面网络的梯度值会越来越小,导致梯度消失,浅层的参数更新缓慢甚至无法更新,使用其他激活函数,其导函数值也是[0,1]之间,因此同样存在梯度消失问题,sigmod函数最为明显,同时如wi过大时,反向求导时会发生梯度爆炸
  • 在神经网络中,梯度消失更容易出现。

  • 怎么解决梯度消失和梯度爆炸

    • 用ReLU、Leaky ReLU、PReLU、RReLU、Maxout等替代sigmoid函数。
    • 用Batch Normalization。
    • 可以通过添加正则项,避免梯度爆炸,压缩wi权重大小。
    • LSTM的结构设计也可以改善RNN中的梯度消失问题。
    • 使用残差结构
    • 使用更有的初始化方式,或者采用pre_train,fine_tuning模式
  • 未完成,待完善
    参考文章:
    https://cloud.tencent.com/developer/article/1335704
    https://blog.csdn.net/tyhj_sf/article/details/79932893
    https://www.cnblogs.com/makefile/p/activation-function.html

    相关文章

    • 神经网络中常见激活函数及特点

      从最开始的逻辑回归到后来的CNN,RNN,我们经常会听到激活函数这个词,也经常会听到sigmod函数会造成神经网络...

    • 3. 深度学习- 常用的激活函数

      在学习神经网络中,我们会常常碰到激活函数这个名词。那么什么是激活函数?激活函数激活的是什么?在神经网络中,有什么用...

    • 机器学习笔记(五)——激活函数

      激活函数区别和作用 本质:    激活函数是来向神经网络中引入非线性因素,通过激活函数,神经网络就可以拟合各种曲线...

    • 机器学习常见面试问题及答案汇总

      一些常见的机器学习面试题(不定时更新)。 激活函数的作用?激活函数为神经网络提供了非线性。如果不使用激活函数,每一...

    • 机器学习中常见函数

      1、激活函数 常用于神经网络,激活函数增加了神经网络模型的非线性特征 2、损失函数 机器学习过程中中,我们期望样本...

    • 神经网络的激活函数总结

      导言 激活函数在神经网络中具有重要的地位。在SIGAI之前的公众号文章“理解神经网络的激活函数”中,我们回答了3个...

    • 常见激活函数特点分析

      一. 什么是激活函数 神经网络中,输入神经元线性组合后,传入的非线性函数就是激活函数(大多是非线性的)。 二. 激...

    • 神经网络

      单层神经元模型 激活函数 BP神经网络(误差逆向传播) 示意图 其他常见神经网络 1.RBF 深度学习

    • 深度学习中的激活函数

      激活函数: 神经网络神经元中,输入的 inputs 通过加权,求和后,还被作用了一个函数,这个函数就是激活函数 A...

    • ReLU和Dropout

      概述 从解决最小的问题开始。 1 激活函数 ReLU家族的激活函数通常是神经网络中激活函数的首选项,其优点在于: ...

    网友评论

      本文标题:神经网络中常见激活函数及特点

      本文链接:https://www.haomeiwen.com/subject/eepomqtx.html