激活函数activation function

整理时参考:
https://blog.csdn.net/u011630575/article/details/78063641
https://www.cnblogs.com/tornadomeet/p/3428843.html
https://blog.csdn.net/bbbeoy/article/details/78835496
一是什么: 在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。
二目的: 引入激活函数是为了增加神经网络模型的非线性。没有激活函数的每层都相当于矩阵相乘。就算你叠加了若干层之后,无非还是个矩阵相乘罢了。
三几种激活函数
1.linear fucntion:一条直线 step fucntion:阶梯型
2.maxout
这里写图片描述
w的shape=dxmxk,
d表示输入层节点的个数,
m表示隐藏层节点的个数,
k表示隐藏层中这k个节点都是线性输出的,而maxout的每个节点就是取这k个节点输出值中最大的那个值。(每k个输出一个最大的)
maxout的拟合能力是非常强的,它可以拟合任意的的凸函数。
3.dropout:减少过拟合
dropout的思想是训练整体深度神经网络,并平均整个集合的结果,而不是训练单个深度神经网络。网络是以概率P舍弃部分神经元,其它神经元以概率q=1-p被保留,舍去的神经元的输出都被设置为零。
下图来自https://blog.csdn.net/bbbeoy/article/details/78835496
这里写图片描述
4.sigmoid
公式:这里写图片描述
优点:输出映射在(0,1)内,单调连续,非常适合用作输出层,并且求导比较容易;
缺点:具有软饱和性,一旦输入落入饱和区,一阶导数就变得接近于0,很容易产生梯度消失。
饱和性:当|x|>c时,其中c为某常数,此时一阶导数等于0,通俗的说一阶导数就是上图中的斜率,函数越来越水平。
5.softmax
公式:这里写图片描述
如果某一个 zj 大过其他 z, 那这个映射的分量就逼近于 1,其他就逼近于 0.
softmax是sigmoid的扩展,因为,当类别数 k=2 时,softmax 回归退化为 logistic 回归。
分类问题时 sigmoid 和 softmax 是一样的,求的都是 cross entropy loss,而 softmax 可以用于多分类问题.
6.tanh为双曲正切
公式: 这里写图片描述
tanh函数也具有软饱和性。因为它的输出是以0为中心,收敛速度比sigmoid函数要快。但是仍然无法解决梯度消失问题。
7.relu
f(x)=max(0,x)
relu在x<0时是硬饱和。
由于当x>0时一阶导数为1。所以,relu函数在x>0时可以保持梯度不衰减,从而缓解梯度消失问题,还可以更快的去收敛。
但是,随着训练的进行,部分输入会落到硬饱和区,导致对应的权重无法更新。我们称之为“神经元死亡”。
8.leaky relu
leakrelu函数是relu激活函数的改进版本,解决部分输入会落到硬饱和区,导致对应的权重无法更新的问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值