【Interview】activate function

Reference

https://yogayu.github.io/DeepLearningCourse/03/ActivateFunction.html
Deep Learning v1 笔记
https://mp.weixin.qq.com/s/7DgiXCNBS5vb07WIKTFYRQ
可视化神经网络中的激活函数——26 个激活函数的图示及其一阶导数

Recall that we use a step function in perceptron to transform output i.e. whether or not the neuron should be activated.

We call this kind of function which take all the inputs to transform an output as activate function.

一句话:“那么该用那种呢?”

  • 用ReLU非线性函数
    注意设置好学习率,如果单元死亡问题困扰你,就试试Leaky ReLU或者Maxout
  • 不要再用sigmoid了
  • 也可以试试tanh,效果 不如 ReLU或者Maxout

ReLU

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

  • only remain positive elements
  • setting all negative elements nodes to 0

ReLU优点

  • 对梯度下降收敛有加速作用
    相较于sigmoid和tanh函数,ReLU对于随机梯度下降的收敛有巨大的加速作用
  • 运算简单
    sigmoid和tanh神经元含有指数运算等耗费计算资源的操作,而ReLU可以简单地通过对一个矩阵进行阈值计算得到

缺点

  • 在训练的时候,ReLU单元比较脆弱并且可能“死掉”
    • 当输入为负值的时候,ReLU 的学习速度可能会变得很慢,甚至使神经元直接无效,因为此时输入小于零而梯度为零,从而其权重无法得到更新
    • 当一个很大的梯度流过ReLU的神经元的时候,可能会导致梯度更新到一种特别的状态,在这种状态下神经元将无法被其他任何数据点再次激活。如果这种情况发生,那么从此所有流过这个神经元的梯度将都变成0。也就是说,这个ReLU单元在训练中将不可逆转的死亡,因为这导致了数据多样化的丢失。例如,如果学习率设置得太高,可能会发现网络中40%的神经元都会死掉(在整个训练集中这些神经元都不会被激活)。通过合理设置学习率,这种情况的发生概率会降低。

Sigmoid

h ( x ) = 1 1 + e − x h(x) = \frac{\mathrm{1} }{\mathrm{1} + e^{-x} } h(x)=1+ex1

Sigmoid 因其在 logistic 回归中的重要地位而被人熟知,值域在 0 到 1 之间。Logistic Sigmoid(或者按通常的叫法,Sigmoid)激活函数给神经网络引进了概率的概念。它的导数是非零的,并且很容易计算(是其初始输出的函数)。然而,在分类任务中,sigmoid 正逐渐被 Tanh 函数取代作为标准的激活函数,因为后者为奇函数(关于原点对称)。

sigmoid函数缺点

  • Sigmoid函数饱和使梯度消失。sigmoid神经元有一个不好的特性,就是当神经元的激活在接近0或1处时会饱和:在这些区域,梯度几乎为0。如果初始化权重过大,那么大多数神经元将会饱和,导致网络就几乎不学习了。

  • Sigmoid函数的输出不是零中心的
    将影响梯度下降的运作

TancH

完全可微的,以0为中心,是反对称的

TancH缺点

  • 和sigmoid神经元一样,它也存在饱和问题
  • 但是和sigmoid神经元不同的是,它的输出是零中心的

Leaky ReLU

<img src="https://leanote.com/api/file/getImage?fileId=5dc15c91ab6441425d000536)是一个小的常量

经典(以及广泛使用的)ReLU 激活函数的变体,Leaky ReLU 的输出对负值输入有很小的坡度。由于导数总是不为零,这能减少静默神经元的出现,允许基于梯度的学习(虽然会很慢)

Leaky ReLU 是为解决“ReLU死亡”问题的尝试

  • ReLU中当x<0时,函数值为0
  • Leaky ReLU中当x<0时,函数值则是给出一个很小的负数梯度值,比如0.01

Maxout

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值