导航:首页 > 编程大全 > 神经网络激活函数有哪些

神经网络激活函数有哪些

发布时间:2023-03-15 18:05:39

Ⅰ bp神经网络选择激活sigmoid函数,还有tansig函数的优缺点求告知

(1)对于深度神经网络,中间的隐层的输出必须有一个激活函数。否则回多个隐层的作用和没有隐层答相同。这个激活函数不一定是sigmoid,常见的有sigmoid、tanh、relu等。
(2)对于二分类问题,输出层是sigmoid函数。这是因为sigmoid函数可以把实数域光滑的映射到[0,1]空间。函数值恰好可以解释为属于正类的概率(概率的取值范围是0~1)。另外,sigmoid函数单调递增,连续可导,导数形式非常简单,是一个比较合适的函数
(3)对于多分类问题,输出层就必须是softmax函数了。softmax函数是sigmoid函数的推广

Ⅱ 神经网络中常见激活函数总结

在多层神经网络中,上一层节点的输出和下一层节点的输入之间具有一个函数关系,这个函数就是激活函数。

如果没有激活函数,再多层数的神经猛凳网络也是线性的,这就和原始的感知简知亩机一样了拦森。所以激活函数为神经网络引入的非线性,神经网络强大的拟合能力,激活函数起到了举足轻重的作用。这也说明激活函数都是非线性的。

数学表达式:
几何图像:

缺点:

数学表达式:
几何图像:

特点:
相比sigmoid函数,解决了非 zero-centered 问题。但是梯度消失和和幂运算的问题依然存在。

数学表达式:
几何图像:

优点:

缺点:

尽管存在两个问题,但是Relu仍是目前最常用的激活函数。

数学表达式:

Leaky Relu激活函数就是针对Relu的Dead Relu Problem提出的。负半轴是 而不是0, 通常是一个很小的数。

Ⅲ 神经网络之Sigmoid、Tanh、ReLU、LeakyReLU、Softmax激活函数

使用tensorflow实现

Tanh 函数能够将𝑥 ∈ 𝑅的输入“压缩”到[−1,1]区铅毕脊间,tanh 激活函数可通过Sigmoid 函数缩放槐渗平移后实现。

使用tensorflow实现

它具有单侧抑制、相对宽松的兴奋边界等特性。ReLU 函数的设计源自神经科学,计算十分简单,同时有着优良的梯度特性,在大量的深度学习应用中被验证非常有效,是应用最广泛的激活函数之一。

使用tensorflow实现

其中𝑝为用户自行设置的某较小数值的超参数,如0.02 等。当𝑝 = 0时,LeayReLU 函数退化为ReLU 函数;当𝑝 ≠ 0时,𝑥 < 0能够获得较数歼小的梯度值𝑝,从而避免出现梯度弥散现象。

用tensorflow实现

输出总和为1

为了避免求exp(x)出现溢出的情况,一般需要减去最大值

内容参考:《TensorFlow2深度学习》

Ⅳ 激活函数 sigmoid、tanh、relu

激活函数(activation functions)的目标是,将神经网络非线性化。激活函数是连续的(continuous),且可导的(differential)。

常见的激活函数:sigmoid,tanh,relu。

sigmoid是平滑(smoothened)的阶梯函数(step function),可导(differentiable)。sigmoid可以将任何值转换为0~1概率,用于二分类。细节可以 参考 。

公式:

导数:

导数2:

图(红色原函数,蓝色导函数):

当使用sigmoid作为激活函数时,随着神经网络隐含层(hidden layer)层数的增加,训练误差反而加大。表现为:

这种现象就是梯度弥散(vanishing gradient)。而另一种情况,梯度爆炸(exploding gradient),则是前面层的梯度,通过训练变大,导致后面层的梯度,以指数级增大。

由于sigmoid的导数值小于1/4,x变化的速率要快于y变化的速率,随着层数的增加,连续不断执行sigmoid函数,就会导致,前面更新较大的幅度,后面更新较小的幅度,因此,网络在学习过程中,更倾向于,更新后面(靠近输出层)的参数,而不是前面的参数(靠近输入层)。

sigmoid缺点:

参考1 、 参考2

tanh,即双曲正切(hyperbolic tangent),类似于幅度增大sigmoid,将输入值转换为-1至1之间。tanh的导数取值范围在0至1之间,优于sigmoid的0至1/4,在一定程度上,减轻了梯度消失的问题。tanh的输出和输入能够保枯庆持非线性单调上升和下降关系,符合BP(back propagation)网络的梯度求解,容错性好,有界。

公式:

导数:

图(红色原函数,蓝色导函数):

sigmoid和tanh:

参考1 、 参考2 、 参考3

relu,即Rectified Linear Unit,整流线性单元,激活部分神经元,增加稀疏性,当x小于0时,输出值为0,当x大于0时,输出值为x.

公式:

图:

导数:

图:

relu对比于sigmoid:

relu的缺点:

在训练的时候,ReLU单元比较脆弱并且可能“死掉”。举例来说,当一个很大的梯度没晌握,流过ReLU的神经元的时候,可能会导致梯度更新到一种特别的状态,在这种状态下神经元将无法被其他任何数据点再次激活。如果这种情况发生,那么从此所以流过这个神经元的梯度将都变成0。也就是说,这个ReLU单元在训练中将不可逆转的死亡,因为这导致了数据多样化的丢失。

如果学谨数习率设置得太高,可能会发现网络中40%的神经元都会死掉(在整个训练集中这些神经元都不会被激活)。通过合理设置学习率,这种情况的发生概率会降低。

在神经网络中,隐含层的激活函数,最好选择ReLU。

关于RNN中为什么选择tanh,而不是relu, 参考 。

阅读全文

与神经网络激活函数有哪些相关的资料

热点内容
excel表格如何同时操作多个文件 浏览:789
linux打开zip文件 浏览:620
微信表情大全流口水 浏览:389
为什么网络连接打印机每次重启要重装驱动 浏览:598
华为信息存储在手机哪个文件夹中 浏览:952
手机最好用的清理app有哪些 浏览:668
word如何调底色 浏览:409
苹果描述过期文件 浏览:271
当日冲账密码 浏览:691
u盘文件被吃掉了怎么恢复 浏览:440
电脑光标总是打开同一个文件 浏览:178
数据删除怎么表示 浏览:672
苹果用什么清理缓存文件 浏览:248
数据科学之路是什么 浏览:857
哪个app贷款好 浏览:826
iphone支持桥接吗 浏览:16
dnf85版本首饰熟练度还有用么 浏览:201
commonconfigcfg配置文件 浏览:973
如何将wps文件拉入苹果手机里面 浏览:456
高中学什么编程 浏览:342

友情链接