【深度学习】——激活函数(sigmoid、tanh、relu、softmax)

目录

激活函数

1、作用

2、常用激活函数

3、衡量激活函数好坏的标准:

4、不同的激活函数

1)sigmoid

2)tanh函数

 3)RULE函数和leak-relu函数

4)softmax函数


激活函数

1、作用

如果只是线性卷积的话,会导致无法形成复杂的表达空间,因此需要激活函数来进行非线性映射,这样可以得到更高语义的信息,提升整个神经网络的表达能力。

2、常用激活函数

sigmoid、tanh、relu、softmax

3、衡量激活函数好坏的标准:

1)是否0-均值输出:即是否关于零点中心对称,这样可以使得收敛加速(不太理解)

2)是否会出现梯度消失现象:梯度消失现象主要是因为在反向传播时,由于链式求导原则,使得梯度从后一层传到前一层会出现减小的情况,如果网络深的话,传播到前面时,梯度变成了0

以BP后向传播为例,在求w11的导数时,若W1求值为[0,1],激活函数φ的导数小于1时会出现梯度消失

3)激活函数表达式是否会很复杂:若计算表达式出现幂运算、指数运算等,一般计算量都很大

4、不同的激活函数

1)sigmoid

sigmoid函数可以作为0-1二分类的分类器,也可以作为层数较少的神经网络的激活函数

优缺点如下:

2)tanh函数

tanh函数适用于激活函数,相较于sigmoid函数做到了零均值输出以及缓解了梯度消失

优缺点如下:

 3)RULE函数和leak-relu函数

RELU函数因为其在正空间为线性的缘故,因此适用于深度很深的神经网络中,比如VGG16的实现。但是因为其在负空间直接将值置为0,导致导数为0,使得会出现参数不更新的情况,称之为Dead ReLU Problem,基于此,出现了leak-rule函数,它是给了一个非常小的系数,使得在负空间的导数接近于零而不等于零,优缺点如下:

注意(个人理解):在大量的实验种,发现relu函数会优于后者,原因可以是relu起到了一定的dropout的作用,可以有效地避免过拟合。因为relU在小于0的时候,梯度是0的,也就是有一部分神经元的参数是不会发生改变,所以这也相当于这部分神经元在训练的时候被丢弃了,只有一部分神经元参与到了训练当中。每次迭代都有不一样的神经元的参数不发生改变,这样的话就导致了多次训练得到了不一样的神经网络结构,相当于dropout的作用。

区别在于:dropout方法随即丢弃神经元,随机性更强,而relu的话因为导数为0这部分主要是集中在负半区,使得每次迭代“丢弃”的神经元种有大部分其实是相同的,因此效果没有直接用dropout来的好。

4)softmax函数

适用于多分类情景,是一个离散函数,输入是每一类的得分,输出是每一类的概率

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255837.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习】——分类损失函数、回归损失函数、交叉熵损失函数、均方差损失函数、损失函数曲线、

目录 代码 回归问题的损失函数 分类问题的损失函数 1、 0-1损失 (zero-one loss) 2、Logistic loss 3、Hinge loss 4、指数损失(Exponential loss) 机器学习的损失函数 Cross Entropy Loss Function(交叉熵损失函数) 交叉熵优点 Mean Squared E…

【转】应用架构一团糟?如何将单体应用改造为微服务

概述 将单体应用改造为微服务实际上是应用现代化的过程,这是开发者们在过去十年来一直在做的事情,所以已经有一些可以复用的经验。 全部重写是绝对不能用的策略,除非你要集中精力从头构建一个基于微服务的应用。虽然听起来很有吸引力&#xf…

Linux 解决ssh连接慢的问题

备份文件 cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak 编辑文件 vi /etc/ssh/sshd_config 输入/ 查找GSSAPIAuthentication 设置如下 GSSAPIAuthentication no # 是否允许使用基于 GSSAPI 的用户认证。默认值为"no"。仅用于SSH-2 详细解释 输入/ 查找UseDNS …

【Hibernate】Hibernate系列6之HQL查询

HQL查询 6.1、概述 6.2、分页查询 6.3、命名查询 6.4、投影查询-部分字段查询 6.5、报表查询 6.6、迫切左外连接、左外连接 6.7、迫切内连接、内连接 6.8、QBC查询、本地查询 转载于:https://www.cnblogs.com/junneyang/p/5254641.html

【深度学习】——梯度下降优化算法(批量梯度下降、随机梯度下降、小批量梯度下降、Momentum、Adam)

目录 梯度 梯度下降 常用的梯度下降算法(BGD,SGD,MBGD) 梯度下降的详细算法 算法过程 批量梯度下降法(Batch Gradient Descent) 随机梯度下降法(Stochastic Gradient Descent&#xff09…

双工位机器人 焊接夹具注意事项 o(╯□╰)o

焊接夹具设计注意事项 一套完美的夹具,需要机械设计人员正确的设计思想,良好的配件质量,钳工负责认真的装配质量,卡具在使用中不断的修磨和改进,才会达到好的效果。 本人非机械设计,只是在使用焊接卡具过程中遇到了很多卡具设计上…

【机器学习】——《机器学习实战》面试复习

目录 一、机器学习概念 二、机器学习步骤 三、有监督学习 1、k-近邻算法 核心思想 实例:手写数字的识别 优缺点: 2、决策树 相关概念 核心思想 一些小技巧 优缺点 3、神经网络 4、SVM——支持向量机 核心思想 SVM和SVR的区别 ​ 优缺点…

ubuntu安装LDAP

参考文献: https://help.ubuntu.com/12.04/serverguide/openldap-server.html(最主要的) http://www.linuxidc.com/Linux/2011-08/40020.htm http://blog.chinaunix.net/uid-24276740-id-3360306.html 前言 在网上搜索ldap的安装配置&#xf…

ABB机器人之LOADDATA

ABB机器人之LOADDATA loaddata是用来描述连接到机器人机械接口的负载(机器人的安装法兰)。loaddata数据通常定义有效载荷或负荷(通过指令gripload设置机器人抓手负载 或mechunitload指令设置变位机负载。loaddata通常也作为tooldata的一部分&…

【深度学习】——性能指标(ROC、MAP、AUC等)

目录 一、分类任务性能指标 1、混淆矩阵 2、精确度ACCURACY 正确数/总数 3、查全率(RECALL)——真正正样本中预测正确的比例 4、查准率(precision)——预测为正样本中的预测正确的比例 5、F-score——对查准率和查全率进行结…

【深度学习】——过拟合的处理方法

目录 一、什么是过拟合?(overfitting) 二、过拟合的表现(判定方法) 训练集、测试集、验证集区别 测试集与验证集的区别 三、产生过拟合的原因 1、样本方面 2、模型方面 四、避免过拟合的方法 1、样本方面 1&…

ASP.NET页面的字符编码设置

在用ASP.NET写网上支付的接口程序时&#xff0c;遇到一个奇怪问题&#xff0c;通过表单提交过去的中文全是乱码&#xff0c;英文正常。而用asp程序进行测试&#xff0c;可以正常提交中文&#xff0c;asp页面中有这样的HTML代码&#xff1a; <meta http-equiv"Content-T…

【深度学习】——BN层(batch normalization)

目录 一、“Internal Covariate Shift”问题 二、BatchNorm的本质思想 两个参数r和β的意义——精髓所在 三、训练阶段如何做BatchNorm 四、BatchNorm的推理(Inference)过程 五、BatchNorm的好处 一般使用在卷积层后、激活层前 Batch Normalization作为最近一年来DL的重要…

JAXB vs XStream

2019独角兽企业重金招聘Python工程师标准>>> JAXB vs XStream 博客分类&#xff1a; java JAXB vs XStream 这两东东本质上是有差别的&#xff0c;JAXB称为OX binding工具&#xff0c;XStream应该算序列化工具&#xff0c;但OX binding工具也会marshall和unmarsha…

ABB 机器人 DRVIO_1通信报警

ABB 机器人DRVIO_1通信报警 2014.06.13 ABB1600弧焊机器人&#xff0c;从A地搬运到B地&#xff0c;到达B地后&#xff0c;机器人上电&#xff0c;报DRVIO_1通信故障&#xff0c;机器人进入故障停止模式。 DRVIO_1为LOCAL_GENERIC类型的ABB内部LOCAL总线类型的单元实例。 故障…

S2SH CRUD 整合

S2SH CRUD 整合 采用的框架 Struts2Spring4Hbiernate4. 目录结构 &#xff1a; EmployeeAction: 1 package com.xx.ssh.actions;2 3 import java.io.ByteArrayInputStream;4 import java.io.InputStream;5 import java.io.UnsupportedEncodingException;6 import java.util.…

ABB 机器人 添加多任务

首先&#xff0c;需要启用多任务选项的控制器。 要做到这一点&#xff0c;创建一个新的机器人控制器RobotStudio站 - >选择机器人&#xff08;控制器菜单&#xff09; - >.................. - >系统生成器 - >选择控制器 - >修改...下一页 - >下一步 - >…

分享12306抢票心得-终极秒杀思路篇

12306抢票的关键拼的就是整点出票的速度&#xff0c;快的几秒钟&#xff0c;慢的几分钟&#xff0c;本文提供终极抢票攻略&#xff0c;通过多线程扫描上万个CDN&#xff0c;来大幅度提升出票速度。准备一&#xff1a;需要了解CDN和切站的机制&#xff0c;请参考&#xff1a;分享…

JVM内幕:Java虚拟机详解

为什么80%的码农都做不了架构师&#xff1f;>>> 这篇文章解释了Java 虚拟机&#xff08;JVM&#xff09;的内部架构。下图显示了遵守 Java SE 7 规范的典型的 JVM 核心内部组件。 上图显示的组件分两个章节解释。第一章讨论针对每个线程创建的组件&#xff0c;第二章…

ABB机器人 系统参数配置

系统参数用于定义系统配置并在出厂时根据客户的需要定义。 可使用 FlexPendant 或 RobotStudio Online 编辑系统参数。 此步骤介绍如何查看 系统参数配置。 操作 &#xff1a; 1. 在 ABB 菜单上&#xff0c;点击控制面板。 2. 点击配置。显示选定主题的可用类型列表。 3. 点…