Activation Function

#激活函数 #深度学习

Requirement要求

  • 增加非线性表达 使得神经网络可以拟合任意函数
  • 连续可导的函数 可以使用梯度下降法进行参数更新
  • 定义域是 可以映射所有实数
  • 单调递增的函数 不改变输入的响应状态

饱和函数

Def

  • 导致梯度消失
    • 参数不会被更新
  • Sigmoid
  • Tanh

非饱和函数

  • Rectified Linear Unit 修正线性单元 RELU
    • 解决梯度消失问题
  • RELU Leaky ReLU, Parametric ReLU, ...

Sigmoid

Sigmoid−5−4−3−2−101234500.10.20.30.40.50.60.70.80.91
Cons
  • 非零均值函数

    • 导致参数同时(正向/反向)更新,不利于收敛
  • 导数最大值

    • 导致每层梯度被动缩小 4 倍
      • 导致开始的几层梯度几乎不变
        • 就是梯度消失现象 gradient vanishing problem

tanh

Abstract
Derivatives of tanh and tanh−10−8−6−4−20246810−1-0.8-0.6-0.4-0.200.20.40.60.81

Pros
  • 零均值函数
    • 比 Sigmoid 更快收敛
Cons
  • 饱和函数
    • 梯度消失

ReLU (Rectified Linear Unit)

Abstract
ReLU−2-1.5−1-0.500.511.5200.20.40.60.811.21.41.61.82
Pros
  • 非零均值函数
    • 收敛速度快
  • 非饱和函数
    • 避免梯度消失问题