深度学习基础篇:常用的激活函数

还记得的另外一篇博客逻辑回归里面提到的Sigmoid激活函数吗?
这里我详细的聊聊Sigmoid和其它计算机视觉中常用的激活函数

那激活函数干什么的呢?我们可以这样感性的理解:

  • 在逻辑回归(二分类问题)中,激活函数可以根据传入的值,判断这个事物属于哪一类
  • 在深度学习的神经元中,可以根据传入的值的大小,判断这个神经元是否能继续传递值(不能传递,就是死了,不激活嘛)

Sigmoid激活函数

作用

逻辑回归里面提到,它能将函数的值域R,映射(0 ,1)之间,大于0.5是一个类别,小于0.5就是另外一个类别了
公式:

σ(t) = 1 1 + e t \frac{1}{1+e^t} 1+et1

  • 当t趋近于正无穷时候,值域趋近于1
  • 当t趋近于负无穷时候,值域趋近于0
  • 当t > 0 时: p ^ \hat{p} p^ > 0.5
  • 当t < 0 时: p ^ \hat{p} p^ < 0.5
    sigmod函数
优点
  • 它是非线性的,可以拟合样本中非线性关系的模型
  • 它将数据映射到了(0,1)之间,相当于做了归一化处理
  • 它的导数:σ‘(t) = σ(t)[ 1 - σ(t) ],导数非常容易计算
缺点
  • 函数计算相对耗时
  • Sigmoid函数2侧无限的趋近于0和1,从而导致的问题是,在深度学习中,即使自变量非常大(因为映射后最大也就是1),反向传播的修正值变化也不大(也就是你犯了很大的错,惩罚也很轻),这就造成了梯度弥散。从而影响了整个模型的收敛速度

Softmax激活函数

它主要用于处理多分类问题,它可以用来表面每一个类别对应的输出概率是多少,那么概率最大的,就是本次的输出结果。

公式:

S i = e V i ∑ j m e V j S_{i} = \frac{e^{V_{i}}}{ \sum_{j}^{m} e^{V_{j}}} Si=jmeVjeVi

  • V j V_{j} Vj:分类器前级网络的输出结果,j表示索引
  • V j V_{j} Vj:表示当前要被分类的特征值
  • m:表示分类的总个数
  • S i S_{i} Si:表示当前元素被分类器选中的概率
性质
  • 其实仔细分析一下就可以得出:所有分类的概率结果相加为1
  • 相对于直接按照大小进行占比,Softmax利用 e x e^x ex,的特性,更能突出概率更大的类别
  • softmax 和交叉熵的结合,使损失梯度在网络最后一层的回传变得十分简洁
RELU激活函数

RELU激活函数,即修正线性单元(Rectified linear unit),在深度学习中已经替代Sigmoid激活函数。

  • 是一种线性的激活函数
  • 他它具有仿生学原理,当传入值小于0时,改神经单元就“死”了,不再传导信息
    在这里插入图片描述
    公式:
    R(x) = max(0,x)
总结

由于Relu函数不存在Sigmoid的饱和区,也就不会造成梯度弥散问题,从而加快了模型训练时候的收敛速度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值