神经网络激活函数--Sigmoid、Tanh、Relu、Softmax

这篇具有很好参考价值的文章主要介绍了神经网络激活函数--Sigmoid、Tanh、Relu、Softmax。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文主要总结了Sigmoid、Tanh、Relu、Softmax 四种函数;给出了函数的形式,优缺点和图像。

sigmoid和Tanh函数的导数简单,但是可能出现梯度弥散。

ReLU函数仅保留正元素,有良好的特性。

Softmax一般是用于分类最后一层的归一化。

目录

1.Sigmoid 函数

2.Tanh函数 

3.Relu函数

4.Softmax函数

四种函数的图像:


1.Sigmoid 函数

形式:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

特点:

Sigmoid函数通常称为挤压函数(Squashing Function),它可以将(-inf,inf)范围中的任意实数映射到(0,1)范围内,输入值越大,压缩后越趋近于1,输入值越小,压缩后越趋近0,这两种情况在物理意义上最接近生物神经元的休眠和激活状态

适用于:

Sigmoid函数可以用在深度学习模型长短期记忆(Long Short-Term Memory,LSTM)中的各种门(Gate)上,模拟门的关闭和开启状态。此外,Sigmoid函数还可以用于表示概率,并且可以用于输入的归一化处理。

优缺点:

导数简单:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

缺点:

1. 存在饱和性,即当输入数据x很大或很小时,Sigmoid函数的导数迅速趋近于0。这种情况就意味着,它很容易产生所谓的梯度弥散现象。

2. 不是以0为中心的。

2.Tanh函数 

形式:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

特点:

它将一个实数输入映射到(-1,1)范围内。当输入为0时,Tanh函数输出为0,这符合我们对激活函数的要求。

适用于:

Tanh函数也可以作为“开关”调节输入信息,在LSTM网络中也有广泛应用

优缺点:

导数:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

缺点:

Tanh函数和Sigmoid函数之间存在一定的线性关系,因此两者的形状是类似的,只是尺度和范围不同。Tanh函数存在与Sigmoid函数类似的缺点——梯度弥散,导致训练效率不高

3.Relu函数

形式:

标准的ReLU函数非常简单,即f(x)=max(x,0)。简单来说,当x>0时,输出为x;当x≤0时,输出为0。通俗地说,ReLU函数可以通过将相应的激活值设为0从而仅保留正元素,并“毫不留情”地抛弃所有负元素。

导数:

当输入为负时,ReLU函数的导数为0,而当输入为正时,ReLU函数的导数为1。值得注意的是,当输入值恰好等于0时,ReLU函数不可导。

优点:

(1)单侧抑制。当输入小于0时,神经元处于抑制状态;反之,当输入大于0时,神经元处于激活状态。ReLU函数相对简单,求导计算方便。这导致ReLU函数的随机梯度下降(Stochastic Gradient Descent,SGD)的收敛速度比Sigmoid函数或Tanh函数快得多。而且ReLU函数减轻了以往困扰神经网络的梯度弥散问题。

(2)相对宽阔的兴奋边界。观察Sigmoid函数的激活状态(Sigmoid函数的取值范围)集中在中间的狭小空间(0,1)内,Tanh函数有所改善,但也局限于(-1,1)内,而ReLU函数则不同,只要输入大于0,神经元就一直处于激活状态。

(3)稀疏激活。相比Sigmoid之类的激活函数,稀疏性是ReLU函数的优势所在。Sigmoid函数将处于抑制状态的神经元设置为一个非常小的值,但即使这个值再小,后续的计算也少不了它们的参与,这样的操作计算负担很大。但ReLU函数直接将处于抑制状态的神经元“简单粗暴”地设置为0,这样一来,这些神经元不再参与后续的计算,从而使网络保持稀疏性。

4.Softmax函数

形式:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

适用于:

对于多分类(设为k分类数)任务,神经网络的最后一个全连接线性层通常会给出k个输出值,通常也称为logits[插图],这个logits值有大有小,有正有负。人们对这个值的大小正负并不那么在乎,更在乎的是分类概率的大小,然后择其大者作为分类判定的依据。

对于一个长度为k的logits向量[z1,z2,…,zk],利用Softmax函数可以输出一个长度为k的向量[q1,q2,…,qk]。如果一个向量想成为一种概率描述,那么它的输出至少要满足两个条件:一是每个输出值qi(概率)都在[0,1]之间;二是这些输出值之和∑iqi=1。

四种函数的图像:

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习

神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习神经网络激活函数--Sigmoid、Tanh、Relu、Softmax,Python,神经网络,深度学习,机器学习文章来源地址https://www.toymoban.com/news/detail-804456.html

到了这里,关于神经网络激活函数--Sigmoid、Tanh、Relu、Softmax的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 高斯误差线性单元激活ReLU以外的神经网络

    高斯误差线性单位(GELU)激活函数由加州大学伯克利分校的Dan Hendrycks和芝加哥丰田技术研究所的Kevin Gimpel于2018年引入。激活函数是触发神经元输出的“开关”,随着网络的深入,其重要性也随之增加。最近几周,机器学习社区中的一些讨论使GELU重新成为人们关注的焦点。

    2024年02月16日
    浏览(39)
  • pytorch学习-线性神经网络——softmax回归+损失函数+图片分类数据集

            Softmax回归(Softmax Regression)是一种常见的多分类模型,可以用于将输入变量映射到多个类别的概率分布中。softmax回归是机器学习中非常重要并且经典的模型,虽然叫回归,实际上是一个分类问题         回归是估计一个连续值,分类是预测一个连续的类别  示例

    2024年02月15日
    浏览(48)
  • 神经网络基础-神经网络补充概念-20-激活函数

    激活函数是神经网络中的一个重要组成部分,它引入了非线性性质,使得神经网络可以学习和表示更复杂的函数关系。激活函数对于将输入信号转换为输出信号起到了关键作用,它在神经元的计算过程中引入了非线性变换。 Sigmoid函数: Sigmoid 函数将输入映射到一个 0 到 1 的

    2024年02月12日
    浏览(46)
  • 神经网络:激活函数

    在计算机视觉中,激活函数是神经网络中的一种非线性函数,用于引入非线性变换和非线性特性到网络中。激活函数的作用、原理和意义如下: 1. 引入非线性变换: 神经网络的线性组合层(如卷积层和全连接层)只能表示线性关系,而计算机视觉任务通常涉及到复杂的非线

    2024年02月11日
    浏览(38)
  • 神经网络 02(激活函数)

    在神经元中引入了激活函数,它的 本质是向神经网络中引入非线性因素的 ,通过激活函数, 神经网络就可以拟合各种曲线 。 如果不用激活函数,每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出 都是输入的线性组合 ; 引入非线性函数作为激活函数,那输

    2024年02月07日
    浏览(36)
  • 神经网络基础-神经网络补充概念-52-正则化网络的激活函数

    正则化是一种用于减少过拟合(overfitting)的技术,可以在神经网络的各个层次中应用,包括激活函数。激活函数的正则化主要目的是减少神经网络的复杂度,防止网络在训练集上过度学习,从而提高泛化能力。 L2 正则化(权重衰减):在网络的损失函数中引入 L2 正则化项,

    2024年02月12日
    浏览(35)
  • [深度学习入门]什么是神经网络?[神经网络的架构、工作、激活函数]

      在大多数资料中,神经网络都被描述成某种 正向传播的矩阵乘法 。而本篇博文 通过将神经网络描述为某种计算单元 ,以一种更加简单易懂的方式介绍神经网络的功能及应用。   广义上讲,神经网络就是要 在输入数据中找寻某种规律 ,就像这个经典的例子: 手写数

    2024年02月17日
    浏览(51)
  • 【深度学习】2-1 神经网络 - 激活函数

    将输入信号的总和转换为输出信号,一般称为激活函数(activation function)。激活函数作用在于决定如何来激活输入信号的总和。 对激活函数,一般要求: 非线性 :为提高模型的学习能力,如果是线性,那么再多层都相当于只有两层效果。 可微性 :有时可以弱化,在一些点

    2024年02月09日
    浏览(39)
  • 一文速学-让神经网络不再神秘,一天速学神经网络基础-激活函数(二)

    思索了很久到底要不要出深度学习内容,毕竟在数学建模专栏里边的机器学习内容还有一大半算法没有更新,很多坑都没有填满,而且现在深度学习的文章和学习课程都十分的多,我考虑了很久决定还是得出神经网络系列文章,不然如果以后数学建模竞赛或者是其他更优化模

    2024年02月11日
    浏览(37)
  • 【人工智能】神经网络、M-P_神经元模型、激活函数、神经网络结构、学习网络参数、代价定义、总代价

    ⚫ 输入:来自其它n个神经元传递过来的输入信号 ⚫ 处理:输入信号通过带权重的连接进行传递, 神经元接受到总输入值将与神经元的阈值进行比较 ⚫ 输出:通过激活函数的处理以得到输出

    2024年02月16日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包