激活函数

激活函数

Sigmoid

σ ( x ) = 1 1 + e − x \sigma(x)=\dfrac{1}{1+e^{-x}} σ(x)=1+ex1

导数

σ ′ ( x ) = ( 1 − σ ( x ) ) σ ( x ) \sigma'(x)=(1-\sigma(x))\sigma(x) σ(x)=(1σ(x))σ(x)

优点
  • 将数值压缩到 ( 0 , 1 ) (0,1) (0,1)之间
  • 曲线平滑,便于求导
缺点
  • 容易饱和输出,导致回传梯度消失,参数无法更新
  • 不是零均值, w i w_i wi的梯度都是正数或者负数,梯度“之字形”更新,收敛满
  • exp函数计算复杂度高
tanh

t a n h ( x ) = e x − e − x e x + e − x tanh(x)=\dfrac{e^x-e^{-x}}{e^x+e^{-x}} tanh(x)=ex+exexex

优点
  • 将数值压缩到 ( − 1 , 1 ) (-1,1) (1,1)之间
  • zero-centered
  • 曲线平滑,便于求导
缺点
  • 容易饱和输出
  • exp计算复杂度高
ReLU

f ( x ) = m a x ( 0 , x ) f(x)=max(0,x) f(x)=max(0,x)

优点
  • 在正区间不会饱和
  • 计算复杂度极低
  • 收敛速度比sigmoid和tanh快
缺点
  • 不是零均值
  • 不压缩数据,数据幅度会随着网络加深不断增大
  • 神经元坏死(Dead ReLU)(采用合适的参数初始化和调整学习率可以缓解这种现象)
Leaky ReLU

f ( x ) = m a x ( 0.01 x , x ) f(x)=max(0.01x,x) f(x)=max(0.01x,x)

优点
  • 不会造成饱和
  • 计算复杂度低
  • 收敛速度比Sigmoid和tanh快
  • 近似零均值
  • 解决ReLU的神经元坏死问题
缺点
  • 数值幅度不断增大
  • 实际表现不一定比ReLU好
ELU (Exponential Linear Units)

f ( x ) = { x α ( e x p ( x ) − 1 ) x ≤ 0 f(x)=\begin{cases} x&\\ \alpha(exp(x)-1)&x\le0 \end{cases} f(x)={xα(exp(x)1)x0

优点
  • 不会造成饱和
  • 收敛速度比Sigmoid和tanh快
  • 近似零均值
  • 解决ReLU的神经元坏死问题
缺点
  • exp计算复杂度高
  • 实际表现不一定比ReLU好
激活函数的选择
  • 首选ReLU,但是要注意初始化和学习率设置
  • 不要使用Sigmoid
  • 可以使用tanh,不过效果一般不太好
  • 其他激活函数可以尝试
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值