神经网络中常用的激活函数(公式 + 函数图像)

        激活函数是人工神经网络中的一个关键组件,负责引入非线性,从而使神经网络能够学习和表示复杂的非线性关系。没有激活函数,神经网络中的所有计算都是线性变换,而线性模型的表达能力有限,无法处理复杂的任务。

激活函数的作用

  • 引入非线性:通过将线性输入映射到非线性输出,使神经网络具备表示复杂函数的能力。

  • 控制输出范围:激活函数常将输出限制在某个范围内,如 [0,1] ,有助于稳定训练过程。

  • 提供梯度信息:激活函数对输入的导数用于反向传播,通过调整参数来优化网络性能。

常见激活函数

(一)ReLU(Rectified Linear Unit)

公式:

 f(x) = \max(0, x)

 

特点:

  • 输出范围:[0,+∞)

  • 优点:计算简单,高效;缓解了梯度消失问题。

  • 缺点:可能导致“神经元死亡”(Dead Neurons)问题,尤其是输入为负时。即当权重更新导致某些神经元输出恒为0时,这些神经元可能永远不被激活。

(二)Sigmoid

公式:

f(x) = \frac{1}{1 + e^{-x}}

特点:

  • 输出范围:(0,1)

  • 非线性且平滑,对输入做“压缩”,将其映射到 (0,1)区间

特点:

  • 输出范围:(0,1)(0, 1)(0,1)

  • 常用于二分类问题的输出层。

  • 优点:平滑,可解释为概率。

  • 缺点:梯度在接近 0 和 1 时趋近于 0(梯度消失问题)。

(三)Tanh(Hyperbolic Tangent)

公式

f(x) = \tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}}

 

特点:

  • 输出范围:(−1,1)(-1, 1)(−1,1)。

  • 优点:输出均值接近 0,适合深层网络的梯度传播。

  • 缺点:和 Sigmoid 一样,容易出现梯度消失问题。

(四)LReLU(Leaky ReLU)

公式:

f(x) = \begin{cases} x & \text{if } x > 0 \\ \alpha x & \text{if } x \leq 0 \end{cases}

特点:

  • 输出范围:[ -∞, +∞ )。
  • 优点:解决了 ReLU 的“神经元死亡”问题。
  • 缺点:引入了一个额外的超参数 α ,默认为 0.1。

(五)PReLU(Parametric ReLU)

公式:

f(x) = \begin{cases} x & \text{if } x > 0 \\ \alpha x & \text{if } x \leq 0 \end{cases}

特点:

  • 是 Leaky ReLU 的扩展版本, 斜率 α 是可学习的参数

  • 提高模型的灵活性和表现力。

(六)ELU(Exponential Linear Unit)

公式

f(x) = \begin{cases} x & \text{if } x > 0 \\ \alpha (e^x - 1) & \text{if } x \leq 0 \end{cases}

(α>0,  通常为 1)

特点:

  • 输出范围:(−α,+∞)。

  • 优点:缓解梯度消失问题;负输出使均值更接近 0。

(七)Softmax

公式

f_i(x) = \frac{e^{x_i}}{\sum_{j=1}^n e^{x_j}}

特点:

  • 用于多分类问题的输出层。

  • 将输出归一化为概率分布

(八)Swish

公式

f(x) = x \cdot \sigma(x) = x \cdot \frac{1}{1 + e^{-x}}

特点:

  • 输出范围:(−∞,+∞)。

  • 优点:平滑,可微;在某些任务中表现优于 ReLU。

  • 缺点:计算稍复杂。

(九)GELU(Gaussian Error Linear Unit)

公式

f(x)=x\cdot \Phi (x)

Φ(x) 为标准正态分布的累积分布函数

特点:

  • Swish 的一种改进。

  • 常用于自然语言处理中的 Transformer 模型。

常用激活函数总结

隐藏层:常用 ReLU 或其变体(Leaky ReLU、PReLU、ELU)。

  • 简单网络:可以尝试 ReLU 或 Leaky ReLU。

  • 深度网络:推荐 Swish、GELU 或 ELU。

输出层

  • 二分类问题:Sigmoid。

  • 多分类问题:Softmax。

  • 回归问题:线性激活函数(或不使用激活函数)。

#  若文章对大噶有帮助的话,点个赞支持一下叭!

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

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

相关文章

Redis——Raft算法

Raft使用较为广泛的强一致性、去中心化、高可用的分布式协议,即使在网络、节点故障等情况下,多个节点依然能达到一致性。 其中redis、etcd等都用到了这种算法 在Redis集群中,采取的主从复制结构,当主节点宕机后,哨兵会…

C 语言复习总结记录二

C 语言复习总结记录二 一 控制语句 1、语句的分类 表达式语句函数调用语句复合语句控制语句空语句 控制语句 控制程序的执行流程,实现程序的各种结构方式 C 语言支持三种结构 :顺序结构、选择结构、循环结构,由特定的语句定义符组成C语言…

网络无人值守批量装机-cobbler

网络无人值守批量装机-cobbler 一、cobbler简介 ​ 上一节中的pxe+kickstart已经可以解决网络批量装机的问题了,但是环境配置过于复杂,而且仅针对某一个版本的操作系统进批量安装则无法满足目前复杂环境的部署需求。 ​ 本小节所讲的cobbler则是基于pxe+kickstart技术的二…

基于深度学习CNN算法的花卉分类识别系统01--带数据集-pyqt5UI界面-全套源码

文章目录 基于深度学习算法的花卉分类识别系统一、项目摘要二、项目运行效果三、项目文件介绍四、项目环境配置1、项目环境库2、环境配置视频教程 五、项目系统架构六、项目构建流程1、数据集2、算法网络Mobilenet3、网络模型训练4、训练好的模型预测5、UI界面设计-pyqt56、项目…

HarmonyOs鸿蒙开发实战(20)=>一文学会基础使用组件导航Navigation

敲黑板,以下是重点技巧。文章末尾有实战项目效果截图及代码截图可参考 1.概要 Navigation是路由导航的根视图容器Navigation组件主要包含​导航页(NavBar)和子页(NavDestination),导航页不存在页面栈中&am…

tcpdump抓包 wireShark

TCPdump抓包工具介绍 TCPdump,全称dump the traffic on anetwork,是一个运行在linux平台可以根据使用者需求对网络上传输的数据包进行捕获的抓包工具。 tcpdump可以支持的功能: 1、在Linux平台将网络中传输的数据包全部捕获过来进行分析 2、支持网络层…

已阻止加载“http://localhost:8086/xxx.js”的模块,它使用了不允许的 MIME 类型 (“text/plain”)。

记录今天解决的一个小bug 在终端启动8080端口号监听后,打开网址http://localhost:8080,发现不能正确加载页面,打开检查-控制台,出现如下警告:已阻止加载“http://localhost:8086/xxx.js”的模块,它使用了不…

使用 helm 部署 gitlab

一、下载 Gitlab chart 进入 artifacthub 官网 选择你想要的版本(我选择的chart版本是 8.4.0 , gitlab 版本是17.4.0 ) 进入到控制台,添加helm仓库 如果你想不改任何配置,你可以执行安装命令,等待安装即可helm instal…

若依-一个请求中返回多个表的信息

背景 主表是点位表关联子表 需要知道对应 合作商的信息关联子表 需要直到对应 区域的信息关联子表 需要直到对应 设备数量 实现的方案 关联实体相关的标签

C++注释

目录 1. 什么是注释 2. 语法 2.1 单行注释 2.2 多行注释 2.3 示例 3. 注释源代码的方法 3.1 使用多行注释 3.2 使用预处理器指令 #if #endif 3.3 使用条件判断语句 if (false) 4. 不能用宏定义,组成注释 5 // \ 会将源代码中的下一行也被当作注释中的一部…

使用itextpdf进行pdf模版填充中文文本时部分字不显示问题

在网上找了很多种办法 都解决不了; 最后发现是文本域字体设置出了问题; 在这不展示其他的代码 只展示重要代码; 1 引入扩展包 <dependency><groupId>com.itextpdf</groupId><artifactId>itext-asian</artifactId><version>5.2.0</v…

web——sqliabs靶场——第十三关——报错注入+布尔盲注

发现是单引号加括号闭合的 尝试联合注入 发现不太行&#xff0c;那尝试报错注入。 测试报错注入 unameadmin) and updatexml(1,0x7e,3) -- &passwdadmin&submitSubmit 爆数据库 unameadmin) and updatexml(1,concat(0x7e,database(),0x7e),3) -- &passwdadmin&a…

QT如何共享文件+拷贝文件

QString sharedFolderPathImg "\\\\" IP "/profileImage/"; // 更换为你的共享文件夹路径QDir dirImg(sharedFolderPathImg);dirImg.setFilter(QDir::NoDotAndDotDot | QDir::AllEntries);QVector<QString> curFileEntryArrayImg dirImg.entryList…

跟《经济学人》学英文:2024年11月23日这期 Why British MPs should vote for assisted dying

Why British MPs should vote for assisted dying A long-awaited liberal reform is in jeopardy in jeopardy&#xff1a;在危险中 jeopardy&#xff1a;美 [ˈdʒepərdi] 危险&#xff1b;危机&#xff1b;风险&#xff1b; 原文&#xff1a; THIS NEWSPAPER believes …

【es6进阶】vue3中的数据劫持的最新实现方案的proxy的详解

vuejs中实现数据的劫持,v2中使用的是Object.defineProperty()来实现的&#xff0c;在大版本v3中彻底重写了这部分&#xff0c;使用了proxy这个数据代理的方式&#xff0c;来修复了v2中对数组和对象的劫持的遗留问题。 proxy是什么 Proxy 用于修改某些操作的默认行为&#xff0…

D73【 python 接口自动化学习】- python 基础之正则表达式

day73 正则表达式-元字符匹配 学习日期&#xff1a;20241119 学习目标&#xff1a;正则表达式--133 正则表达式-元字符匹配 学习笔记&#xff1a; 元字符匹配 数量匹配 实践操作 总结 字符串的r标记表示&#xff0c;字符串内转移字符无效&#xff0c;作为普通字符使用正则…

Python浪漫之画明亮的月亮

目录 1、效果展示 2、完整版代码 1、效果展示 2、完整版代码 import turtledef draw_moon():# 设置画布turtle.bgcolor("black") # 背景颜色为黑色turtle.speed(10) # 设置绘制速度# 绘制月亮的外圈turtle.penup()turtle.goto(0, -100) # 移动到起始…

微信小程序包之加农炮游戏

微信小程序 - 气球射击游戏 项目简介 这是一个简单有趣的微信小程序射击游戏。玩家通过控制屏幕底部的加农炮&#xff0c;射击从上方降落的蓝色气球。游戏考验玩家的反应能力和瞄准技巧。 游戏规则 点击屏幕任意位置发射炮弹大炮会自动对准点击位置击中气球获得10分如果气球触…

autogen+ollama+litellm实现本地部署多代理智能体

autogen 是一个专门为大语言模型 (LLMs) 驱动的自治代理 (autonomous agents) 设计的 Python 库,由 Microsoft 开发和维护。它通过高度模块化和可扩展的架构,支持用户快速构建和运行多代理系统,这些代理可以在没有明确人类干预的情况下协作完成复杂任务。AutoGen 支持以最少…

分公司如何纳税

分公司不进行纳税由总公司汇总纳税“子公司具有法人资格&#xff0c;依法独立承担民事责任;分公司不具有法人资格&#xff0c;其民事责任由公司承担。”企业设立分支机构&#xff0c;使其不具有法人资格&#xff0c;且不实行独立核算&#xff0c;则可由总公司汇总缴纳企业所得税…