激活函数总结(十一):激活函数补充(Absolute、Bipolar、Bipolar Sigmoid)

news2024/12/28 20:52:20

激活函数总结(十一):激活函数补充

  • 1 引言
  • 2 激活函数
    • 2.1 Absolute激活函数
    • 2.2 Bipolar激活函数
    • 2.3 Bipolar Sigmoid激活函数
  • 3. 总结

1 引言

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

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

2 激活函数

2.1 Absolute激活函数

Absolute(绝对值)激活函数是一种基于绝对值非线性激活函数,它将输入值映射到其绝对值上。该函数在输入从负向正变化的过程中保持连续性。在输入为负时,绝对值激活函数输出与输入值相同的正值;在输入为正时,输出仍然是输入值。其数学表达式和数学图像分别如下所示:

A b s o l u t e ( x ) = ∣ x ∣ Absolute(x) = |x| Absolute(x)=x在这里插入图片描述
优点:

  • 无梯度消失问题: 绝对值激活函数在所有输入范围内的梯度都为常数(1或-1),因此不存在类似于Sigmoid或Tanh等函数那样的梯度消失问题。这意味着在训练过程中梯度可以更容易地传播,特别是在深层神经网络中。
  • 线性性质:绝对值激活函数是一个分段线性函数,其输出在不同的区间内是线性的。这可以在某些问题中提供适度的非线性性质,对于某些任务可能是有用的。
  • 稳定性: 绝对值激活函数对于输入中的大幅度变化有一定的鲁棒性,因为它总是返回非负的输出,避免了负数的抑制性影响。

缺点:

  • 缺乏灵活性:绝对值激活函数是非常简单的线性函数,它没有类似于Sigmoid、ReLU等激活函数引入的非线性特性。这可能限制了其在某些复杂任务上的表现能力。
  • 信息损失: 由于绝对值激活函数直接舍弃了输入的符号信息,它可能无法区分正负值对任务的影响,这可能导致在某些情况下丢失有用的信息。
  • 非可导连续:绝对值激活函数在0处不可微分,表现出导数不连续的状况。

这个激活函数十分简单,也因其简单的性质现在很少使用。。。

2.2 Bipolar激活函数

Bipolar激活函数是一种特殊的激活函数,它是Threshold函数的一个变种。它的数学表达式如下和数学图像分别如下所示::
B i p o l a r ( x ) = { 1 i f x > = t h r e s h o l d − 1 i f x < t h r e s h o l d Bipolar(x)=\left\{ \begin{matrix} \quad \quad \quad 1 \quad \quad \quad if \quad x >= threshold \\ \quad \quad \quad -1 \quad \quad \quad if \quad x < threshold \quad \end{matrix} \right. Bipolar(x)={1ifx>=threshold1ifx<threshold在这里插入图片描述
优点:

  • 简单性: 阈值激活函数非常简单,仅基于阈值对输入进行二进制判定,因此计算效率高
  • 稳定性: 在一些特定的应用中,阈值激活函数可能会表现出稳定性,不易受到梯度爆炸等问题的影响。
  • 双极性:输出范围在-1到1之间,这可以使其在处理输入数据的正负关系时表现更好。

缺点:

  • 缺乏表达能力:阈值激活函数非常限制了神经网络的表达能力,它只能输出两种值(0和1),无法适应更复杂的数据模式。这使得神经网络很难从数据中学习到更高层次的特征表示
  • 梯度消失:阈值激活函数在大部分输入范围内的导数都为0,这导致在反向传播时,梯度会很快消失,使得网络很难学习。这个问题也在Sigmoid激活函数中存在,因此它们通常不作为主要的激活函数选择。
  • 不可导性:阈值激活函数在阈值处是不可导的,这使得它无法直接应用于使用梯度下降等基于梯度的优化算法进行训练。这会导致训练过程不稳定,并可能需要使用一些近似的方法来处理。

Bipolar同Threshold是一致的,因其特性导致很难在网络结构中使用。。。

2.3 Bipolar Sigmoid激活函数

论文链接:Mansor, Mohd Asyraf, and Saratha Sathasivam. “Activation function comparison in neural-symbolic integration.” In AIP Conference Proceedings, vol. 1750, no. 1, p. 020013. AIP Publishing LLC, 2016.

Bipolar Sigmoid激活函数是一种特殊的激活函数,它是Sigmoid函数的一个变种。它的数学表达式如下和数学图像分别如下所示::

B i p o l a r S i g m o i d ( x ) = 2 / ( 1 + e x p ( − x ) ) − 1 Bipolar Sigmoid(x) = 2 / (1 + exp(-x)) - 1 BipolarSigmoid(x)=2/(1+exp(x))1在这里插入图片描述

优点:

  • 双极性输出: Bipolar Sigmoid的输出范围在-1到1之间,这可以使其在处理输入数据的正负关系时表现更好。它适用于处理具有双极性性质的数据,例如一些情感分析任务中的正面和负面情感。
  • 连续可微性: 与标准的Sigmoid函数一样,Bipolar Sigmoid也是连续可微的。这对于使用梯度下降等优化方法进行训练和反向传播是至关重要的,因为它们要求激活函数是可微的。
  • 非线性特性: Bipolar Sigmoid是非线性的激活函数,它可以引入一定的非线性表达能力,有助于神经网络模型捕获复杂的数据关系。

缺点:

  • 饱和问题: Bipolar Sigmoid激活函数在输入远离0的时候,输出会饱和,即梯度趋近于0。这可能导致训练时的梯度消失问题,特别是在深层网络中。
  • 计算复杂性: 与标准的Sigmoid函数一样,Bipolar Sigmoid的计算开销也较大,因为它涉及到指数运算。这可能会在网络训练中导致较慢的收敛速度。

虽然Bipolar Sigmoid 在理论上具有比Sigmoid更好的效果,但是结合Sigmoid系列整体的激活函数而言,这是微不足道的!!!因此,Bipolar Sigmoid作为Sigmoid系列激活函数的一员也是很少使用的一类激活函数。。。。

3. 总结

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

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

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

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

相关文章

多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测

多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测 目录 多维时序 | MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测基本介绍模型特点程序设计参考资料 基本介绍 本次运行测试环境MATLAB2021b&#xff0c;MATLAB实现PSO-CNN-BiLSTM多变量时间序列预测。代码说明&#xff1a…

掌握渗透测试,从Web漏洞靶场搭建开始

渗透测试切忌纸上谈兵&#xff0c;学习渗透测试知识的过程中&#xff0c;我们通常需要一个包含漏洞的测试环境来进行训练。而在非授权情况下&#xff0c;对于网站进行渗透测试攻击&#xff0c;是触及法律法规的&#xff0c;所以我们常常需要自己搭建一个漏洞靶场&#xff0c;避…

【CUDA】学习记录(4)-线程束的执行

线程模型 block&#xff1a;同一个block内共享内存&#xff0c;同一block中的thread可以彼此进行通信。 block&#xff1a;block-local synchronization。同一个块内的线程可以同步。 线程&#xff0c;可以根据blockIdx和threadIdx唯一的指定。 作者&#xff1a;不会code的程序…

02-前端基础第二天-HTML5

01-HTML标签&#xff08;下&#xff09;导读 目标&#xff1a; 能够书写表格能够写出无序列表能够写出3~4个常用input表单类型能够写出下拉列表表单能够使用表单元素实现注册页面能够独立查阅W3C文档 目录&#xff1a; 表格标签列表标签表单标签综合案例查阅文档 02-表格标…

pygame第6课——贪吃蛇小游戏

今天我们开始Pygame的第六课&#xff0c;前几节课的内容在这里【点我】&#xff0c;欢迎大家前去考古&#xff1a; 今天我们一起来学习制作一个小游戏【贪吃蛇】&#xff0c;这是一个非常经典的小游戏&#xff0c;那么我们一起开始吧 1、游戏准备工作 import pygame, random,o…

常用激活函数及其优缺点的总结与比较

文章目录 1、sigmoid2、Tanh3、ReLU4、Leaky ReLU5、Softmax 1、sigmoid 优点&#xff1a;将很大范围内的输入特征值压缩到0~1之间&#xff0c;适用于将预测概率作为输出的模型&#xff1b; 缺点&#xff1a; 1&#xff09;当输入非常大或非常小的时候&#xff0c;容易导致梯度…

Hadoop的DataNode无法启动的解决方案

Hadoop重启一次&#xff0c;里面的数据需要重新导入&#xff0c;发现无法导入数据&#xff0c;查看jps发现是DataNode没有启动&#xff0c;重新启动发现也无法启动&#xff0c;原因是前面重新启动NameNode&#xff0c;里面的文件格式化一次&#xff0c;DataNode的文件不一致&am…

jmeter监听器大家都会用,但我这个妙招能让你提早一小时下班!

使用过 jmeter 的同学&#xff0c;应该都会使用监听器&#xff0c;在每个监听器中&#xff0c;都会有一个“所有数据写入一个文件”的功能&#xff0c;那这个功能应该怎么用呢&#xff1f;今天&#xff0c;我们就来讲讲这个功能的使用。 几乎所有的监听器都有这样一个功能。 那…

LTD239次升级 | 可答题获取优惠券 • 官微中心菜单可折叠• 分享页表单客户可显示分享来源

1、新增答题获取优惠券应用 2、官微中心支持左侧菜单折叠、批量上传可设置排序值 3、分享页表单客户可显示分享来源 4、iOS App支持设置名片卡片图片 5、新增一款产品列表展示模块 01 网站应用 新增答题获取优惠券应用 本次升级中&#xff0c;新增了一款答题获取优惠券的小程序…

MAC钓鱼并Root权限上线CS并权限维持,以及所有的坑如何解决

本文转载于&#xff1a;https://www.freebuf.com/articles/web/350592.html 作者&#xff1a;文鸯涂鸦智能安全实验室 制作MAC 一、下载工具 首先从github上下载CrossC2。链接&#xff1a;https://github.com/gloxec/CrossC2/releases/tag/v3.1.0。 根据你CS客户端的操作系统选…

基于 BEM 规范实现简单的 全局 scss

前言 BEM 是 css 常用的命名规范BEM &#xff1a;block(块)、 element(元素)、 modify(修饰符)以 namespace-block__element、namespace-block---modify 格式为例&#xff08;namespace 一般是 ui 库的前缀&#xff0c;如 element-ui 的 el 前缀&#xff09;scss 的使用请参考…

计算机竞赛 Yolov安全帽佩戴检测 危险区域进入检测 - 深度学习 opencv

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; Yolov安全帽佩戴检测 危险区域进入检测 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;4分 该项目较为新颖&am…

驱动 day4

通过字符设备驱动分步注册方式编写LED灯的驱动&#xff0c;应用程序使用ioctl函数编写硬件控制 mycdev.c #include <linux/init.h> #include <linux/module.h> #include <linux/fs.h> #include <linux/cdev.h> #include <linux/device.h> #inc…

【中文竞技场】大模型深度体验与测评

简介&#xff1a;本次&#xff0c;我深入体验了中文竞技场中的大语言模型&#xff0c;尝试了写作创作、代码编写和中文游戏三个领域&#xff0c;以下是我详细的评测报告。 一、开篇 在科技日新月异的今天&#xff0c;中文竞技场提供了一系列大模型供我们体验。涉及的领域包括写…

HLS实现FIR低通滤波器+System Generator仿真

硬件&#xff1a;ZYNQ7010 软件&#xff1a;MATLAB 2019b、Vivado 2017.4、HLS 2017.4、System Generator 2017.4 1、MATLAB设计低通滤波器 FPGA系统时钟 50MHz&#xff0c;也是采样频率。用 MATLAB 生成 1MHz 和 10MHz 的正弦波叠加的信号&#xff0c;并量化为 14bit 整数。把…

也许你正处于《孤注一掷》中的“团队”,要留心了

看完这部电影&#xff0c;心情久久不能平静&#xff0c;想了很多&#xff0c;倒不是担心自己哪天也成为“消失的yaozi”&#xff0c;而是在想&#xff0c;我们每天所赖以生存的工作&#xff0c;跟电影里他们的工作比&#xff0c;差别在哪里呢&#xff1f; 目录 1. 产品的本质…

【UniApp开发小程序】商品详情展示+评论、评论展示、评论点赞+商品收藏【后端基于若依管理系统开发】

文章目录 界面效果界面实现工具js页面日期格式化 后端收藏ControllerServicemapper 评论ControllerServiceMapper 商品Controller 阅读Service 界面效果 【说明】 界面中商品的图片来源于闲鱼&#xff0c;若侵权请联系删除 【商品详情】 【评论】 界面实现 工具js 该工…

即拼七人拼团模式怎么玩?如何留存消费者?

如今&#xff0c;流量稀缺&#xff0c;任何流量都需要付出一定的成本&#xff0c;商家做私域亦是如此。我们能做的就是降低预算&#xff0c;探索属于自己的方法。如何进行私域引流&#xff1f; 现阶段&#xff0c;新消费品牌提升品牌力的关键就在于构建品牌与消费者之间的信任关…

大家gobigger连接后不能调亮度(亮度不能保存)解决办法

关于gobigger连接后不能调亮度&#xff0c;会不会感觉是gobigger很爽的一点&#xff1f;其实不是&#xff0c;可以通过以下方法解决。如果解决你的问题给记得点赞&#xff0c;感谢支持。 现象&#xff1a; 数据线连接后&#xff0c;用滚轮调节亮度到最高点&#xff0c;当时是很…

JavaWeb+JSP+SQL server学生学籍管理系统设计与实现(源代码+论文+开题报告+外文翻译+答辩PPT)

需求分析 本系统主要是针对各个高校的学生学籍进行管理&#xff0c;系统满足以下几点要求&#xff1a; 系统安全性。由于此系统中的操作都是由用户操作的&#xff0c;所以对于用户的权限设置比较严格。对于数据库&#xff0c;设置了不同用户的权限&#xff0c;不同权限进入不…