【机器学习】027_激活函数

一、Sigmoid激活函数

Sigmoid函数是一个在生物学中常见的S型函数,也称为S型生长曲线。

在深度学习中,由于其单增以及反函数单增等性质,Sigmoid函数常被用作神经网络的激活函数,将变量映射到[ 0 , 1 ] [0, 1][0,1]之间。

Sigmoid函数的导数可以用其自身表示:

Sigmoid函数及其导数的图像:

Sigmoid激活函数对每一层激活值a的输出值都在[0, 1]之间。但假若我们想要将a取更大的正值来量化每一层的输出结果,则可以换成不同的激活函数。

二、ReLU激活函数

· 采用sigmoid等函数,算激活函数时(指数运算),计算量大。

· 对于深层网络,sigmoid函数反向传播时,很容易就会出现 梯度消失 的情况。

        梯度消失:在sigmoid接近饱和区时,变换太缓慢,导数趋于0,这种情况会造成信息丢失

· ReLu会使一部分神经元的输出为0,这样就造成了 网络的稀疏性,并且减少了参数的相互依存关系,缓解了过拟合问题的发生。

Relu函数表达形式如下:

g(z)=max(0,z)

Relu函数图像:

三、选择激活函数

1. 根据功能选择激活函数

        · Sigmoid函数:处理二元分类问题;

        · 线性激活函数:处理输出值可升可降类问题;

        · ReLU激活函数:处理输出值永不为负的问题;

2. 根据各激活函数的优缺点做权衡

对于输出层:

        · Sigmoid函数:

                优点:非线性;输出范围有限,适合作为输出层。

                缺点:在两边太平滑,学习率太低,梯度下降效率低;输出不是以0为中心。

        · ReLU函数:

                优点:不会同时激活所有的神经元,高效且易于计算。

                缺点:x<0时,梯度是零。随训练的进行,可能有神经元死亡,权重无法更新。

        · Softmax函数:

                优点:可以处理多分类问题。

对于隐藏层:

        · 建议只使用ReLU函数作为默认激活函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值