前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >激活函数ReLU、Leaky ReLU、PReLU和RReLU

激活函数ReLU、Leaky ReLU、PReLU和RReLU

作者头像
全栈程序员站长
发布于 2022-07-02 05:35:10
发布于 2022-07-02 05:35:10
9120
举报

大家好,又见面了,我是你们的朋友全栈君。

“激活函数”能分成两类——“饱和激活函数”和“非饱和激活函数”。

sigmoid和tanh是“饱和激活函数”,而ReLU及其变体则是“非饱和激活函数”。使用“非饱和激活函数”的优势在于两点: 1.首先,“非饱和激活函数”能解决所谓的“梯度消失”问题。 2.其次,它能加快收敛速度。 Sigmoid函数需要一个实值输入压缩至[0,1]的范围 σ(x) = 1 / (1 + exp(−x)) tanh函数需要讲一个实值输入压缩至 [-1, 1]的范围 tanh(x) = 2σ(2x) − 1 ReLU ReLU函数代表的的是“修正线性单元”,它是带有卷积图像的输入x的最大函数(x,o)。ReLU函数将矩阵x内所有负值都设为零,其余的值不变。ReLU函数的计算是在卷积之后进行的,因此它与tanh函数和sigmoid函数一样,同属于“非线性激活函数”。这一内容是由Geoff Hinton首次提出的。

ReLU 的缺点: 训练的时候很”脆弱”,很容易就”die”了 例如,一个非常大的梯度流过一个 ReLU 神经元,更新过参数之后,这个神经元再也不会对任何数据有激活现象了,那么这个神经元的梯度就永远都会是 0. 如果 learning rate 很大,那么很有可能网络中的 40% 的神经元都”dead”了。 ELUs ELUs是“指数线性单元”,它试图将激活函数的平均值接近零,从而加快学习的速度。同时,它还能通过正值的标识来避免梯度消失的问题。根据一些研究,ELUs分类精确度是高于ReLUs的。下面是关于ELU细节信息的详细介绍:

Leaky ReLUs ReLU是将所有的负值都设为零,相反,Leaky ReLU是给所有负值赋予一个非零斜率。Leaky ReLU激活函数是在声学模型(2013)中首次提出的。以数学的方式我们可以表示为:

ai是(1,+∞)区间内的固定参数。

参数化修正线性单元(PReLU) PReLU可以看作是Leaky ReLU的一个变体。在PReLU中,负值部分的斜率是根据数据来定的,而非预先定义的。作者称,在ImageNet分类(2015,Russakovsky等)上,PReLU是超越人类分类水平的关键所在。 随机纠正线性单元(RReLU) “随机纠正线性单元”RReLU也是Leaky ReLU的一个变体。在RReLU中,负值的斜率在训练中是随机的,在之后的测试中就变成了固定的了。RReLU的亮点在于,在训练环节中,aji是从一个均匀的分布U(I,u)中随机抽取的数值。形式上来说,我们能得到以下结果:

总结 下图是ReLU、Leaky ReLU、PReLU和RReLU的比较:

PReLU中的ai是根据数据变化的;

Leaky ReLU中的ai是固定的;

RReLU中的aji是一个在一个给定的范围内随机抽取的值,这个值在测试环节就会固定下来。

关于激活函数比较优秀的博客

1、https://blog.csdn.net/Leo_Xu06/article/details/53708647

(补充,对于sigmoid函数,权重w越大,曲线越倾斜)

2、https://blog.csdn.net/guorongronghe/article/details/70174476

3、https://blog.csdn.net/weixin_42057852/article/details/84644348

4、https://blog.csdn.net/u011684265/article/details/78039280

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147876.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
深度学习下的医学图像分析(二)
AI 研习社按:本文由图普科技编译自《Medical Image Analysis with Deep Learning Part2》,是最近发表的《深度学习下的医学图像分析(一)》的后续文章。雷锋网
AI研习社
2018/03/19
1K0
深度学习下的医学图像分析(二)
学习笔记:ReLU的各种变形函数
在ReLU函数的基础上,又出现了几种变形函数。这里我们暂且不讨论这些函数作为激活函数的优势与不足。
Lauren的FPGA
2020/03/12
4.8K0
常见激活函数总结 | 深度学习笔记2
01激活函数概览 基本上,入门深度学习的第一件事情就是了解”神经元”的构造,激活函数算是最基本的一个”部件”了吧.那激活函数到底有什么用呢?为什么需要激活函数?激活函数的定义是什么呢? 下面这篇论
用户1332428
2018/03/08
1K0
常见激活函数总结 | 深度学习笔记2
关键词学习——激活函数
当激活函数是线性的,一个两层的神经网络就可以基本上逼近所有的函数。但如果激活函数是恒等激活函数的时候,即f(x)=x,就不满足这个性质,而且如果MLP使用的是恒等激活函数,那么其实整个网络跟单层神经网络是等价的;
计算机视觉研究院
2022/01/28
4140
关键词学习——激活函数
从零开始深度学习(十):激活函数
文章首发于本人CSDN账号:https://blog.csdn.net/tefuirnever
我是管小亮
2020/04/20
1K0
激活函数其实并不简单:最新的激活函数如何选择?
如今,机器学习领域的科学进步速度是前所未有的。除非局限在一个狭窄的细分市场,否则要跟上时代的步伐是相当困难的。每天都有新论文出现并声称自己取得了一些最先进的成果。但是这些新发现中的大多数从来没有成为默认的首选方法,有时是因为它们没有最初希望的那么好,有时只是因为它们最终在新进展的洪流中崩溃了。
deephub
2021/09/15
1.3K0
激活函数其实并不简单:最新的激活函数如何选择?
深度学习基础知识(一)--激活函数
在神经网络中加入激活函数存在的意义就是为网络增加非线性因素,比如全卷积神经网络,不加入激活函数,就是一堆线性操作矩阵运算,对于复杂任务仅用线性操作而不用复杂的函数表示肯定效果不会好。
languageX
2022/05/04
4.7K1
一文带你读懂激活函数
Sigmoid函数本质上是一种常用的激活函数,是神经元最重要的组成部分。那什么是激活函数呢?激活函数有什么作用呢?常见的激活函数都有哪些?以及如何选择合适的激活函数?这次我们将重点对上述问题进行讨论。 线性模型在处理非线性问题时往往手足无措,这时我们需要引入激活函数来解决线性不可分问题。激活函数(Activation function),又名激励函数,往往存在于神经网络的输入层和输出层之间,作用是给神经网络中增加一些非线性因素,使得神经网络能够解决更加复杂的问题,同时也增强了神经网络的表达能力和
磐创AI
2018/04/24
17.1K0
一文带你读懂激活函数
非零均值?激活函数也太硬核了!
若网络中不用激活函数,那么每一层的输出都是输入的线性组合。无论神经网络有多少层,网络的输出都是输入的线性组合,这种网络就是原始的感知机(
灿视学长
2021/05/28
2.6K0
【激活函数合集】盘点当前最流行的激活函数及选择经验
在阅读DarkNet源码的时候发现作者定义了大量从古至今流行的损失函数,本着科普的态度我打算做一个全面的总结,所以就有了这篇文章。
BBuf
2020/02/26
2.9K0
机器学习 深度学习中激活函数sigmoid relu tanh gelu等汇总整理
这篇博客主要总结一下常用的激活函数公式及优劣势,包括sigmoid relu tanh gelu
大鹅
2021/09/12
3.2K0
【深度学习】神经网络为何非激活函数不可?
激活函数是神经网络中一个至关重要的概念,决定了某个神经元是否被激活,判断该神经元获得的信息是否有用,并决定该保留还是该去掉此神经元。
zenRRan
2020/02/18
1.2K0
资源 | 从ReLU到Sinc,26种神经网络激活函数可视化
选自GitHub 作者:David Sheehan 机器之心编译 在本文中,作者对包括 Relu、Sigmoid 在内的 26 种激活函数做了可视化,并附上了神经网络的相关属性,为大家了解激活函数提供了很好的资源。 在神经网络中,激活函数决定来自给定输入集的节点的输出,其中非线性激活函数允许网络复制复杂的非线性行为。正如绝大多数神经网络借助某种形式的梯度下降进行优化,激活函数需要是可微分(或者至少是几乎完全可微分的)。此外,复杂的激活函数也许产生一些梯度消失或爆炸的问题。因此,神经网络倾向于部署若干个特定的
机器之心
2018/05/10
1.2K0
入门必看!一文读懂神经网络中的激活函数(二)
看看深度学习之激活函数 本篇接着上一篇推文入门《必看!从零开始了解到训练神经网络(一)》,在介绍完神经网络的基本原理和结构之后,继续介绍神经网络中的关键之一 —— 激活函数。 树根这一部分会给大家通俗讲一下激活函数的概念,原理以及作用,还有实际应用中各种激活函数的优缺点。因为激活函数本身就是一种数学函数,推文中出现数学公式在所难免,但是树根力求讲得通俗清晰,让初学者都能读懂,轻松入门深度学习。 1 感知机 Percrptron Activation Function 感知机由Rosenblatt于1957年
企鹅号小编
2018/01/31
3K0
入门必看!一文读懂神经网络中的激活函数(二)
一文讲透神经网络的激活函数
原理上来说,神经网络模型的训练过程其实就是拟合一个数据分布(x)可以映射到输出(y)的数学函数,即 y= f(x)。
算法进阶
2022/06/02
7600
一文讲透神经网络的激活函数
前馈神经网络(Feed-Forward Neural Network)
前馈神经网络(Feed-Forward Neural Network,简称FNN)是一种基本且广泛应用的人工神经网络结构。以下是关于前馈神经网络的详细解释:
jack.yang
2025/04/05
1990
前馈神经网络(Feed-Forward Neural Network)
梯度消失问题与如何选择激活函数
当我们在做反向传播,计算损失函数对权重的梯度时,随着越向后传播,梯度变得越来越小,这就意味着在网络的前面一些层的神经元,会比后面的训练的要慢很多,甚至不会变化。
杨熹
2018/08/03
9780
梯度消失问题与如何选择激活函数
激活函数 | 深度学习领域最常用的10个激活函数,详解数学原理及优缺点
激活函数是神经网络模型重要的组成部分,今天分享从激活函数的数学原理出发,详解了十种激活函数的优缺点。
计算机视觉研究院
2021/03/13
34K0
入门 | 一文概览深度学习中的激活函数
选自Learn OpenCV 机器之心编译 参与:路雪、蒋思源 本文从激活函数的背景知识开始介绍,重点讲解了不同类型的非线性激活函数:Sigmoid、Tanh、ReLU、LReLU、PReLU、Swish,并详细介绍了这些函数的优缺点。 本文介绍了多种激活函数,并且对比了激活函数的优劣。本文假设你对人工神经网络(AAN)有基本了解,如果没有,推荐先阅读机器之心介绍过的相关文章: 神经网络快速入门:什么是多层感知器和反向传播? DNN 概述论文:详解前馈、卷积和循环神经网络技术 1. 什么是激活函数? 生物神
机器之心
2018/05/10
9210
深度学习中【激活函数】存在的意义是什么?
在深度学习网络中,我们经常可以看到对于某一个隐藏层节点的激活值计算一般分为两步,如下图:
ShuYini
2019/09/02
2.4K0
深度学习中【激活函数】存在的意义是什么?
推荐阅读
相关推荐
深度学习下的医学图像分析(二)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档