激活函数总结(六):ReLU系列激活函数补充(RReLU、CELU、ReLU6)

news2024/11/27 12:57:13

激活函数总结(六):ReLU系列激活函数补充

  • 1 引言
  • 2 激活函数
    • 2.1 RReLU激活函数
    • 2.2 CELU激活函数
    • 2.3 ReLU6 激活函数
  • 3. 总结

1 引言

在前面的文章中已经介绍了介绍了一系列激活函数 (SigmoidTanhReLULeaky ReLUPReLUSwishELUSELUGELUSoftmaxSoftplusMishMaxoutHardSigmoidHardTanhHardswishHardShrinkSoftShrinkTanhShrink)。在这篇文章中,会接着上文提到的众多激活函数继续进行介绍,给大家带来更多不常见的激活函数的介绍。这里放一张激活函数的机理图:
在这里插入图片描述

最后,对于文章中没有提及到的激活函数,大家可以通过评论指出,作者会在后续的文章中进行添加补充。

2 激活函数

2.1 RReLU激活函数

论文链接:Empirical Evaluation of Rectified Activations in Convolutional Network

RReLU激活函数是基于Leaky ReLU的一种扩展形式。与传统的Leaky ReLU不同,RReLU引入了随机性,允许在训练过程中随机设置泄漏的斜率。其数学表达式和数学图像分别如下所示:
R R e L U ( x ) = { x i f x > = 0 a x o t h e r w i s e RReLU(x)=\left\{ \begin{matrix} \quad \quad \quad x \quad \quad \quad if \quad x >= 0 \\ \quad \quad \quad ax \quad \quad \quad otherwise \quad \end{matrix} \right. RReLU(x)={xifx>=0axotherwise在这里插入图片描述
a是一个随机数,服从均匀分布U(lower,upper)。在pytorch中,nn.RReLU默认参数是(lower=1/8, upper=1/3)。参数a在训练时随机,测试时固定(lower + upper) / 2

优点:

  • 减少过拟合:对于RReLU而言,参数a是随机选择的,这样可以减少过拟合带来的风险

缺点:

  • 效果不好:相对ReLU而言,RReLU往往效果不是很好
  • 运算速度慢:RReLU增加了计算的参数量,因此运算速度较慢

RReLU虽然在训练时效果表现很差,但是在测试时表现很好。但是,现在仍处于几乎没有人使用的情况。。。

2.2 CELU激活函数

论文链接:https://arxiv.org/abs/1704.07483

CELU 激活函数是 ELU激活函数的变体,与 ELU 不同,CELU 是一个连续可导的激活函数,旨在在保持ELU的非线性特性的同时消除其在某些点上不可导的问题。其数学表达式和数学图像分别如下所示:
C E L U ( x ) = m a x ( 0 , x ) + m i n ( 0 , α ∗ ( e x p x / α − 1 ) ) CELU(x)=max(0,x)+min(0,α∗(exp^{x/α}−1)) CELU(x)=max(0,x)+min(0,α(expx/α1))在这里插入图片描述
优点:

  • 连续可分:对于ELU激活函数而言, α \alpha α 不等于1时,其相对于其输入不是连续可微的;而CELU对于所有 α \alpha α 都是连续可微的,使整流器更容易推理,并使 α \alpha α容易调整

缺点:

  • 计算复杂度高:负数部分引入了指数函数的计算,增加了计算的复杂性
  • 增加了超参数:增加了超参数,用于调整激活函数在负值区域的斜率。选择合适的 α \alpha α 值仍然是一个挑战,不同的数据集和任务可能需要不同的参数设置。

实验发现 CELU 具有不错的效果,在许多网络中都有应用。可以作为一种常用激活函数!!!

2.3 ReLU6 激活函数

论文链接:cs.utoronto.ca/~kriz/conv-cifar10-aug2010.pdf

ReLU6 激活函数是 ReLU 激活函数的变种之一。ReLU6 激活函数在负值区域与普通的ReLU相同,而在正值区域则进行了剪裁将正值限制在一个较小的范围内,通常是[0, 6]。(这里设置为6,是因为在论文中经过实验,设置为6取得的效果最好)其数学表达式和数学图像分别如下所示:
R e L U 6 ( x ) = m i n ( m a x ( x , 0 ) , 6 ) ReLU6(x) = min(max(x, 0), 6) ReLU6(x)=min(max(x,0),6)在这里插入图片描述

优点:

  • 稀疏性:由于ReLU6的截断属性,使得激活函数存在一定的稀疏性。可以降低模型的计算复杂度
  • 低精度分辨率:对于一些低精度的数据,具有很好的分辨率。例如 float16 无法准确描述出较大数据,因此会导致一定的精度损失,而使用ReLU6激活函数不会存在这样的问题。

缺点:

  • 信息丢失:截断属性可能带来一定的信息丢失
  • 超参数选择:对于ReLU6而言,其截断范围也是可以被选择的,可以通过对该超参数进行选择来调节效果。

ReLU6激活函数具有一定的效果,在当前诸多领域都有应用,是一个比较常用的激活函数!!!!

3. 总结

到此,使用 激活函数总结(六) 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。如果存在没有提及的激活函数也可以在评论区提出,后续会对其进行添加!!!!

如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。

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

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

相关文章

用python写一个简单的贪吃蛇游戏

入门教程、案例源码、学习资料、读者群 请访问: python666.cn 大家好,欢迎来到 Crossin的编程教室 ! 不知道有多少同学跟我一样,最初接触编程的动机就是为了自己做个游戏玩? Python 虽然并不是一个“为游戏而生”的语言…

给QT添加图片

给QT添加图片 第一步: 添加图片资源文件。

基于深度学习的3D城市模型增强【Mask R-CNN】

在这篇文章中,我们描述了一个为阿姆斯特丹 3D 城市模型自动添加门窗的系统(可以在这里访问)。 计算机视觉用于从城市全景图像中提取有关门窗位置的信息。 由于这种类型的街道级图像广泛可用,因此该方法可用于较大的地理区域。 推荐…

LinearAlgebraMIT_9_LinearIndependence/SpanningASpace/Basis/Dimension

这节课我们主要学习一下(Linear Independence)线性无关,(spanning a space)生成空间,(basis)基和(dimension)维度。同时我们要注意这四个很重要的基本概念的描述对象,我们会说向量组线性无关,由一个向量组生成的空间,子…

哪些CRM的报价公开且透明?

企业在选型时,会发现很多品牌的CRM系统价格并不透明,往往都是需要跟产品顾问沟通后才能了解。下面推荐一款价格实在的CRM系统,所有报价公开透明,那就是Zoho CRM。 Zoho CRM是什么? Zoho CRM是一款在线CRM软件&#x…

将十进制(整数型)转换为二进制(字符串型)numpy.binary_repr()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将十进制(整数型)转换为 二进制(字符串型) numpy.binary_repr() [太阳]选择题 下列代码最后一次输出的结果是? import numpy as np…

从键盘输入一些字符,并逐个把它们送到磁盘上去,直到用户输入一个“#”为止

题为c程序设计(第五版)谭浩强 例10.1 目录 文章目录 前言 一、题目复现 二、实现步骤 1.思路分析 2.具体实现 总结 前言 这篇博客,让我们一起学习顺序读写数据文件。 什么是顺序读写呢?顺序读写就是对文件读写数据的顺序和数据在…

云端的“人机之恋”,离我们还有多远?

不同于人与人之间复杂而多变的关系,AI与人的关系往往简单却又微妙。 在往来的语句对话中,AI通常通过文本语言的训练与学习去面对被抛出的问题。延伸至技术领域,主流的Transformer架构也仅仅是通过数据对物理世界的压缩来实现自我智能的涌现&a…

101. 对称二叉树

题目 原题链接 : 101.对称二叉树 题面 : 对于这一题呢,题目要求给出递归和迭代两种方式来解决!!! 注 : 这一题不仅仅是判断左右两个子节点是否对称,而是要遍历两棵树而且要比较内侧和外侧节点 递归 先确认递归三要素 : 确定递归函数的参数和返回值 bool …

gitee(码云)如何生成并添加公钥配置用户信息

一,简介 在使用Gitee的时候,公钥是必须的,无论是克隆还是上传。本文主要介绍如何本地生成和添加公钥到服务器,然后配置自己的用户信息,方便日后拉取与上传代码。 二,步骤介绍 2.1 本地生成公钥 打开git ba…

Linux上安装温度监控软件

文章目录 Linux上安装温度监控软件IDRAC设置 Linux上安装温度监控软件 服务器的温度是影响服务器性能重要条件,怎么监控机器的温度呢,这里知道的有两种方式 通过管理界面,查看机器的温度通过机器上安装监监控软件来监控温度 在物理机上怎么…

Go把Map转成对象

最近使用了Redis的Hash,把一个对象给存储到了hash里面,具体如下: 现在需要从RedisHash缓存里面把结果给取出来,同时赋值到一个对象上面 result, err : global.GVA_REDIS.HGetAll(context.Background(), key).Result() 问题是resul…

接触式静电压测试仪的使用场景和注意事项

接触式静电压测试仪是一种用于测量物体表面静电电势的工具。它使用金属接触针或传感器接触待测试物体表面,通过测量传感器和地面之间的电势差来确定物体表面的静电电势。 接触式静电压测试仪通常用于以下场景: 1. 静电防护:在静电敏感环境中…

腾讯云轻量和CVM有什么区别?不都是服务器吗?

腾讯云轻量服务器和云服务器有什么区别?为什么轻量应用服务器价格便宜?是因为轻量服务器CPU内存性能比云服务器CVM性能差吗?轻量应用服务器适合中小企业或个人开发者搭建企业官网、博客论坛、微信小程序或开发测试环境,云服务器CV…

机器学习深度学习——从编码器-解码器架构到seq2seq(机器翻译)

👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——注意力提示、注意力池化(核回归) 📚订阅专栏:机器学习&a…

UDP服务器—实现数据通信

目录 前言 1.接口介绍 2.编写服务器 3.编写客户端 4.测试 总结 前言 在这篇文章中为大家介绍如何通过编码实现数据通信,实现思路是根据前面介绍的网络编程函数编写一个服务端和客户端,实现客户端和服务端双方通信 1.接口介绍 创建套接字 #include…

前端:Vue.js学习

前端:Vue.js学习 1. 第一个Vue程序2. Vue指令2.1 v-if、v-else-if、v-else2.2 v-for2.3 事件绑定 v-on:2.4 v-model 数据双向绑定2.5 v-bind 绑定属性 3. Vue组件4. Vue axios异步通信5. 计算属性6. 插槽 slots7. 自定义事件内容分发 1. 第一个Vue程序 首先把vue.js拷贝到本地…

腾讯云服务器CVM实例族标准型/内存/高IO/大数据/GPU有什么区别?

腾讯云服务器CVM有多种实例族,如标准型S6、标准型S5、SA3实例、高IO型、内存、计算型及GPU型实例等,如何选择云服务器CVM实例规格呢?腾讯云服务器网建议根据实际使用场景选择云服务器CVM规格,例如Web网站应用可以选择标准型S5或S6…

关于fastjson序列化失败的问题

com.alibaba.fastjson2.JSONArray cannot be cast to com.alibaba.fastjson2.JSONArray 问题 我们使用若依的架子把common抽离出来一个jar包,导致从redis中序列化出错 这是由于springboot-devtools 使用restartClassLoader加载了JSONArray 而上层controller中的JSO…

Dataloader数据集的制作

数据集Dataloader制作 如何自定义数据集: 1.数据和标签的目录结构先搞定(得知道到哪读数据)2.写好读取数据和标签路径的函数(根据自己数据集情况来写)3.完成单个数据与标签读取函数(给dataloader举一个例子) 咱们以花朵数据集为例: 原来数据集都是以…