搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
我家小花儿
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
Quartus18.1 lite免费教育版下载及安装_quartus lite
2
基于Elasticsearch构建千亿流量日志搜索平台实战
3
onlyoffice 回调传参数_【onlyoffice中文指南】9-回调处理程序
4
【考研经验】2019双非逆袭哈尔滨工业大学计算机经验分享
5
python 将字典字节类型的键转换为字符串_python dict的 key单独转str
6
Android Studio开发学习(四)——— View与ViewGroup_android viewgroup
7
前端常见问题和技术解决方案_前端项目遇到的最大困难与解决方案
8
27、Flink 的SQL之SELECT (Pattern Recognition 模式检测)介绍及详细示例(7)
9
两个双指针 的 “他“和“ 她“会相遇么? —— “双指针“算法 (Java版)
10
感性理解递归搜索(dfs)
当前位置:
article
> 正文
深度学习中的激活函数_synapses and leaky
作者:我家小花儿 | 2024-05-30 16:57:09
赞
踩
synapses and leaky
圈
摘要
: 正如我们的人脑一样,在一个层次上和神经元网络中有数百万个神经元,这些神经元通过一种称之为synapses(突触)的结构彼此紧紧相连。它可以通过 Axons(轴突),将电信号从一个层传递到另一个层。这就是我们人类学习 ...
网络
模型
机器学习
神经网络
网络技术
函数
什么是人工
神经网络
?
现在,我相信我们大家都很熟悉什么是A-NN了,但接下来请允许我按照自己的理解给A-NN下个定义——它是一个强健有力的,同时也非常复杂的
机器学习
技术,它可以模仿人类的大脑,继而模仿大脑的运作。
正如我们的人脑一样,在一个层次上和神经元网络中有数百万个神经元,这些神经元通过一种称之为synapses(突触)的结构彼此紧紧相连。它可以通过 Axons(轴突),将电信号从一个层传递到另一个层。这就是我们人类学习事物的方式。 每当我们看到、听到、感觉和思考时,一个突触(电脉冲)从层次结构中的一个神经元被发射到另一个神经元,这使我们能够从我们出生的那一天起,就开始学习、记住和回忆我们日常生活中的东西。
好的,接下来我保证大家看到的不再是生物学领域的知识了。
什么是激活函数,它在神经网络模型中是如何使用的?
激活函数(Activation functions)对于人工神经网络模型去学习、理解非常复杂和非线性的函数来说具有十分重要的作用。它们将非线性特性引入到我们的网络中。其主要目的是将A-NN模型中一个节点的输入信号转换成一个输出信号。该输出信号现在被用作堆叠中下一个层的输入。
而在A-NN中的具体操作是这样的,我们做输入(X)和它们对应的权重(W)的乘积之和,并将激活函数f(x)应用于其获取该层的输出并将其作为输入馈送到下一个层。
问题是,为什么我们不能在不激活输入信号的情况下完成此操作呢?
如果我们不运用激活函数的话,则输出信号将仅仅是一个简单的线性函数。线性函数一个一级多项式。现如今,线性方程是很容易解决的,但是它们的复杂性有限,并且从数据中学习复杂函数映射的能力更小。一个没有激活函数的神经网络将只不过是一个线性回归模型(Linear regression Model)罢了,它功率有限,并且大多数情况下执行得并不好。我们希望我们的神经网络不仅仅可以学习和计算线性函数,而且还要比这复杂得多。同样是因为没有激活函数,我们的神经网络将无法学习和模拟其他复杂类型的数据,例如图像、视频、音频、语音等。这就是为什么我们要使用人工神经网络技术,诸如
深度学习
(Deep learning),来理解一些复杂的事情,一些相互之间具有很多隐藏层的非线性问题,而这也可以帮助我们了解复杂的数据。
那么为什么我们需要非线性函数?
非线性函数是那些一级以上的函数,而且当绘制非线性函数时它们具有曲率。现在我们需要一个可以学习和表示几乎任何东西的神经网络模型,以及可以将输入映射到输出的任意复杂函数。神经网络被认为是通用函数近似器(Universal Function Approximators)。这意味着他们可以计算和学习任何函数。几乎我们可以想到的任何过程都可以表示为神经网络中的函数计算。
而这一切都归结于这一点,我们需要应用激活函数f(x),以便使网络更加强大,增加它的能力,使它可以学习复杂的事物,复杂的表单数据,以及表示输入输出之间非线性的复杂的任意函数映射。因此,使用非线性激活函数,我们便能够从输入输出之间生成非线性映射。
激活函数的另一个重要特征是:它应该是可以区分的。我们需要这样做,以便在网络中向后推进以计算相对于权重的误差(丢失)梯度时执行反向优化策略,然后相应地使用梯度下降或任何其他优化技术优化权重以减少误差。
只要永远记住要做:
“输入时间权重,添加偏差和激活函数”
最流行的激活函数类型
1.Sigmoid函数或者Logistic函数
2.Tanh — Hyperbolic tangent(双曲正切函数)
3.ReLu -Rectified linear units(线性修正单元)
Sigmoid激活函数:它是一个f(x)= 1/1 + exp(-x)形式的激活函数。它的值区间在0和1之间,是一个S形曲线。它很容易理解和应用,但使其不受欢迎的主要原因是:
·梯度消失问题
·其次,它的输出不是以0为中心。它的梯度更新在不同的方向上且走得太远。 0 <output <1,使优化更加困难。
·Sigmoids函数饱和且kill掉梯度。
·Sigmoids函数收敛缓慢。
现在我们该如何解决上述问题?
双曲正切函数——Tanh:其数学公式是f(x)= 1 - exp(-2x)/ 1 + exp(-2x)。现在它的输出是以0中心的,因为它的值区间在-1到1之间,即-1 <output <1。 因此,在该方法中优化更容易一些,从而其在实践应用中总是优于Sigmoid函数。 但它依然存在着梯度消失问题。
那么我们该如何处理和纠正梯度消失问题呢?
ReLu -Rectified linear units(线性修正单元):其实在过去几年中它就已经非常受欢迎了。最近证明,相较于Tanh函数,它的收敛性提高了6倍。只要R(x)= max(0,x),即如果x <0,R(x)= 0,如果x> = 0,则R(x)= x。因此,只看这个函数的数学形式,我们就可以看到它非常简单、有效。其实很多时候我们都会注意到,在机器学习和计算机科学领域,最简单、相容的技术和方法才是推荐,才是表现较好的。因此,它可以避免和纠正梯度消失问题。现如今,几乎所有深度学习模型现在都使用ReLu函数。
但它的局限性在于它只能在神经网络模型的隐藏层中使用。
因此,对于输出层,我们应该使用Softmax函数来处理分类问题从而计算类的概率。而对于回归问题,它只要简单地使用线性函数就可以了。
ReLu函数的另一个问题是,一些梯度在训练过程中可能很脆弱,甚至可能会死亡。它可以导致权重更新,这将使其永远不会在任何数据点上激活。简单地说ReLu可能会导致死亡神经元。
为了解决这个问题,我们引进了另一个被称为Leaky ReLu的修改函数,让它来解决死亡神经元的问题。它引入了一个小斜坡从而保持更新值具有活力。
然后,我们还有另一个变体,它形成于ReLu函数和Leaky ReLu函数的结合,我们称之为Maxout函数。
结论
问题是哪一个更好用呢?
这个问题的答案就是,现在我们应该使用只应用于隐藏层的ReLu函数。当然,如果我们的模型在训练过程中遇到死亡神经元,我们就应该使用leaky ReLu函数或Maxout函数。
而考虑到现实的情况,Sigmoid函数和Tanh函数是不适用的,因为梯度消失问题(vanishing Gradient Problem)是一个很严重的问题,会在训练一个神经网络模型中导致更多问题。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/我家小花儿/article/detail/647805
推荐阅读
article
常用
加密算法
go
实现_
go
lang
sm3
...
常用的
加密算法
,对称加密、非对称加密以及摘要算法_
go
lang
sm3
go
lang
sm3
...
赞
踩
article
基于
BERT
的
中文
命名
实体
识别
识别
实战_
bert
中文
命名
实体
识别
的
步骤...
通过这样
的
机制,CRF模型在整个序列上优化所有标签
的
联合概率,确保不仅是单个标签
的
选择合理,而且整个序列
的
标签分配也是全...
赞
踩
article
Spring
AOP
功能实现_借助
spring
的
aop
实现
的
功能...
一、
AOP
的
基本概念:1、什么是
aop
:
AOP
(Aspect Oriented Programming)称为面向切面编程...
赞
踩
article
学渣也学ML:
决策树
之笔记二_上述代码表示对
一个
测试
实例
进行
分类
,
classlabel
是
分类
结果
...
使用
决策树
执行
分类
函数功能:对
一个
测试
实例
进行
分类
参数说明:inputTree:已经生成的
决策树
labels:存储选择的...
赞
踩
article
利用
android
studio
制作简单
的
QQ
的
注册
、
登录
、忘记
密码
的
页面
_完成qq
登录
界面
和忘记密...
一、
注册
页面
效果图
注册
的
页面
布局;
[详细]
-->
赞
踩
article
VsCode
CMake
调试
QT
无法查看源码问题处理...
PDB文件:是一个包含
调试
信息的数据库,它由编译器和链接器在构建程序时生成。PDB文件记录了程序的
调试
信息,如变量类型、...
赞
踩
article
SpringBoot
项目(
百度
AI整合)——如何在
Springboot
中使用语音
文件
识别 &
amp
;...
官网:FFMPEG简介FFmpeg
的
名称来自MPEG视频编码标准,前面
的
“FF”代表“Fast Forward”,FFm...
赞
踩
article
anaconda
实现
python
环境
搭建
_
anaconda
配置
python
环境
...
anaconda
实现
python
环境
搭建
_
anaconda
配置
python
环境
anaconda
配置
python
环境
...
赞
踩
article
深度解密 5 类
大
数据
架构
及
实现
_
大
数据
架构
数据
源怎么
实现
...
前几天读到白发川的一篇文章《对比解读五种主流
大
数据
架构
的
数据
分析能力》,文中详细总结了各类
数据
架构
的应用以及原理。作为一...
赞
踩
article
uniapp辅助教学答疑
系统
微信
小
程序
python
+
java
+node.js+php...
任何
系统
都要遵循
系统
设计的基本流程,本
系统
也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步...
赞
踩
article
JavaEE
多线程
进阶...
锁策略 死锁 CAS编程
JavaEE
多线程
进阶 文章目录 ...
赞
踩
article
我来教你如何将
自己
的
网站
上传
至
服务器
并通过
域名
进行
访问
_
上传
域名
...
如何将
自己
的
网站
上传
至
服务器
并通过
域名
进行
访问
欢迎关注公众号小帅搜,获取更多内容前期准备我们想要让大家都能通过
域名
访问
自...
赞
踩
article
高校
学籍
管理系统
(
SQL
Server数据库
课程设计
)...
摘要:高校的管理工作是一项复杂且系统化的工作。而随着当代社会积极响应国家“科教兴国”的战略。高校建设规模和招生人数每年均...
赞
踩
article
Muduo
网络库源码分析
(
三)
线程
间使用
eventfd
通信和
EventLoop
::
runInLoop
...
先说第一点,
线程
(
进程)间通信有很多种方式
(
pipe,socketpair),为什么这里选择
eventfd
?eventf...
赞
踩
article
jmeter
参数化、
添加
变量
、生成随机数和导入
csv
文件
数据
_
jmeter
如何导入svn
数据
...
Remarks:本次使用
jmeter
版本为4.0 以下
数据
都在必应中演示:
添加
普通
变量
1、
添加
User Define...
赞
踩
article
2024年
华为
OD机试真题-
小华
最能
得到
多少
克
黄金
-
Python
-OD统一考试(C卷)_
小华
最多能
得...
小华
按照地图去寻宝,地图上被划分成 m 行和 n 列的方格,横纵坐标范围分别是 [0, n−1]和[0, m-1]。在横...
赞
踩
article
大
数据
为什么要选择
Spark
_
spark
平台
开发
的
目
的
是
什么...
Spark
是
一个基于内存计算
的
开源集群计算系统,目
的
是
更快速
的
进行
数据
分析。
Spark
由加州伯克利大学AMP实验室Mat...
赞
踩
article
成
区块
链
开发者
_尼克萨博
的
博文
unenumerated
...
https://zhuanlan.zhihu.com/p/33443311AI 前线导读:"加密货币、ICO、互联网催生...
赞
踩
article
常用
的
几种
大
数据
架构
剖析...
数据
分析工作虽然隐藏在业务系统背后,但是具有非常重要
的
作用,
数据
分析
的
结果对决策、业务发展有着举足轻重
的
作用。随着
大
数据
...
赞
踩
article
联软安渡
UniNXG
安全
数据交换
系统
任意文件读取
漏洞
复现_
联软安渡
漏洞
...
联软安渡
UniNXG
安全
数据交换
系统
/UniExServices/poserver.zz 接口任意文件读取
漏洞
,未...
赞
踩
相关标签
golang
开发语言
后端
bert
人工智能
深度学习
语言模型
自然语言处理
学习
机器学习
决策树
分类
android
html5
html
java
javascript
vscode
qt
ide
spring boot
百度
python
数据架构