激活函数

激活函数

如果不用激活函数,每一层的输出都是上一层的线性组合,从而导致整个神经网络的输出为神经网络输入的线性组合,无法逼近任意函数。
在这里插入图片描述
1 sigmoid
数据压缩到[0,1]之间
promblems:
1 饱和的神经元导致梯度消失, 输入非常大(10)或非常小(-10)时,其梯度接近于0
2 输出不是以0为均值
3 指数运算计算量大(问题不大)

2 tanh
数据压缩到[-1,1]之间
与Sigmoid相比,tanh是0均值的。
promblems:
与Sigmoid一样, 饱和的神经元导致梯度消失

3 ReLU
1)优点:
相比于 sigmoid/tanh,有如下优点:

  • 计算高效 ,没有饱和及梯度消失问题 ,缓解了过拟合问题的发生

  • 收敛速度比sigmoid/tanh快6倍

    2)缺点:

训练的时候很”脆弱”,很容易就”die”了,小于0就会dead, 实际操作中,如果你的Learning Rate 很大,那么很有可能你网络中的40%的神经元都”dead”了。
如果你设置了一个合适的较小的Learning Rate,这个问题发生的情况其实也不会太频繁。
实际情况下,将偏置项 置为0

当z<0时,梯度也消失了

4 Leaky-ReLU、P-ReLU

会解决ReLU挂掉的问题
在这里插入图片描述
5 ELU
优点: 所有ReLU的优点 ,不会死, 输出接近0均值
缺点:计算量大,需要指数运算

6 Maxout
maxout拥有ReLu的所有优点同时避免了神经元“死亡”的现象;但是,由于需要多训练了几组参数,网络的效率也大大降低了。

实际选择:

在这里插入图片描述

数据预处理

减去均值,除std 标准差
在这里插入图片描述

设置权重

tanh:
在这里插入图片描述
relu:
在这里插入图片描述

批量归一化

每一个输入都这小批量都做这样的操作,后计算方差,通过均值和方差进行归一化,后还有额外的缩放因子和平移因子(使用常量gamma进行缩放,因子beta进行平移,你在做的是允许你恢复恒等函数),而改进了整个网络的梯度流
在这里插入图片描述
BN的本质原理:在网络的每一层输入的时候,又插入了一个归一化层,也就是先做一个归一化处理(归一化至:均值0、方差为1),然后再进入网络的下一层。不过文献归一化层,可不像我们想象的那么简单,它是一个可学习、有参数(γ、β)的网络层。
在这里插入图片描述

跟踪训练过程

Learning Rate

  • Learning Rate太小(如1e-6),cost下降很慢

  • Learning Rate太大(如1e-6),cost增长爆炸 (cur cost > 3* originalcost)

  • 在[1e-3,1e-5]范围内比较合适
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值