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

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

激活函数的作用

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

  • 控制输出范围:激活函数常将输出限制在某个范围内,如 [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。

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在CentOS中,通过nginx访问php

其实是nginx反向代理到php-fpm,就像nginx反向代理到tomcat。 1、安装PHP-FPM 1.1 安装 yum install php yum install php-fpm php-common 这里只安装了php-fpm,根据需要安装php模块,比如需要访问mysql则添加安装 php-mysqlnd。 1.2 启动…

前端—Cursor编辑器

在当今快速发展的软件开发领域,效率和质量是衡量一个工具是否优秀的两个关键指标。今天,我要向大家推荐一款革命性的代码编辑器——Cursor,它集成了强大的AI功能,旨在提高开发者的编程效率。以下是Cursor编辑器的详细介绍和推荐理…

windows远程桌面打开rdp显卡调用

前情提要 服务器在公网环境,带宽只有30M。 远程桌面多开图形业务调试,设置RDP服务端使用GPU。 压缩传输带宽避免造成卡顿。 如果是内网,也可以用,还可以提供一个注册表键值,修改后提高fps帧率(公网不推…

使用C++和QT开发应用程序入门以及开发实例分享

目录 1、搭建开发环境(VS2010和QT4.8.2) 2、创建一个QT窗口 3、在QT窗口中添加子窗口 4、QT界面布局 5、QT信号(SIGNAL)和槽(SLOT) 6、最后 C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/…

Spark SQL大数据分析快速上手-完全分布模式安装

【图书介绍】《Spark SQL大数据分析快速上手》-CSDN博客 《Spark SQL大数据分析快速上手》【摘要 书评 试读】- 京东图书 大数据与数据分析_夏天又到了的博客-CSDN博客 Hadoop完全分布式环境搭建步骤-CSDN博客,前置环境安装参看此博文 完全分布模式也叫集群模式。将Spark目…

php:使用socket函数创建WebSocket服务

一、前言 闲来无事&#xff0c;最近捣鼓了下websocket&#xff0c;但是不希望安装第三方类库&#xff0c;所以打算用socket基础函数创建个服务。 二、构建websocket服务端 <?phpclass SocketService {// 默认的监听地址和端口private $address 0.0.0.0;private $port 8…

【YOLOv8】安卓端部署-1-项目介绍

【YOLOv8】安卓端部署-1-项目介绍 1 什么是YOLOv81.1 YOLOv8 的主要特性1.2 YOLOv8分割模型1.2.1 YOLACT实例分割算法之计算掩码1.2.1.1 YOLACT 的掩码原型与最终的掩码的关系1.2.1.2 插值时的目标检测中提取的物体特征1.2.1.3 coefficients&#xff08;系数&#xff09;作用1.…

(十八)JavaWeb后端开发案例——会话/yml/过滤器/拦截器

目录 1.业务逻辑实现 1.1 登录校验技术——会话 1.1.1Cookie 1.1.2session 1.1.3JWT令牌技术 2.参数配置化 3.yml格式配置文件 4.过滤器Filter 5.拦截器Interceptor 1.业务逻辑实现 Day10-02. 案例-部门管理-查询_哔哩哔哩_bilibili //Controller层/*** 新增部门*/Pos…

数字IC后端设计实现之Innovus place报错案例 (IMPSP-9099,9100三种解决方案)

最近吾爱IC社区星球会员问到跑place_opt_design时会报错退出的情况。小编今天把这个错误解决办法分享给大家。主要分享三个方法&#xff0c;大家可以根据自己的实际情况来选择。 数字IC后端低功耗设计实现案例分享(3个power domain&#xff0c;2个voltage domain) **ERROR: (I…

麒麟网络负载均衡与高可用方案实践

安装 teamd 包。 yum -y install teamd Copy 一、配置TEAMING 查看两个网卡信息 ifconfig Copy 注意&#xff1a;根据实际网卡设备名称情况调整代码&#xff01;不同环境下网卡名称略有不同&#xff01; 根据查询的结果&#xff0c;两张网卡设备名称分别为 enp0s2 和 enp…

【SpringBoot】26 实体映射工具(MapStruct)

Gitee 仓库 https://gitee.com/Lin_DH/system 介绍 现状 为了让应用程序的代码更易于维护&#xff0c;通常会将项目进行分层。在《阿里巴巴 Java 开发手册》中&#xff0c;推荐分层如下图所示&#xff1a; 每层都有对应的领域模型&#xff0c;即不同类型的 Bean。 DO&…

深述C++模板类

1、前言 函数模板是通用函数的描述&#xff0c;类模板是通用类的描述&#xff0c;使用任意类型来描述类的定义。和函数模板有很多相似的地方&#xff0c;关于函数模板可以看我之前写过的一篇文章&#xff1a;简述C函数模板。这里就不过多赘述。 2、模板类的基本概念 模板类的…

利用Python爬虫获取1688搜索词推荐:技术与实践

在电子商务领域&#xff0c;关键词的选择对于产品的曝光和销售至关重要。1688作为中国领先的B2B电子商务平台&#xff0c;提供了丰富的搜索词推荐功能&#xff0c;帮助商家优化关键词策略。本文将详细介绍如何使用Python编写爬虫程序&#xff0c;获取1688平台的搜索词推荐&…

Flink Lookup Join(维表 Join)

Lookup Join 定义&#xff08;支持 Batch\Streaming&#xff09; Lookup Join 其实就是维表 Join&#xff0c;比如拿离线数仓来说&#xff0c;常常会有用户画像&#xff0c;设备画像等数据&#xff0c;而对应到实时数仓场景中&#xff0c;这种实时获取外部缓存的 Join 就叫做维…

从Stream的 toList() 和 collect(Collectors.toList()) 方法看Java的不可变流

环境 JDK 21Windows 11 专业版IntelliJ IDEA 2024.1.6 背景 在使用Java的Stream的时候&#xff0c;常常会把流收集为List。 假设有List list1 如下&#xff1a; var list1 List.of("aaa", "bbbbbb", "cccc", "d", "eeeee&qu…

wsl虚拟机中的dockers容器访问不了物理主机

1 首先保证wsl虚拟机能够访问宿主机IP地址&#xff0c;wsl虚拟机通过vEthernet (WSL)的地址访问&#xff0c;着意味着容器也要通过此IP地址访问物理主机。 2 遇到的问题&#xff1a;wsl虚拟机中安装了docker&#xff0c;用在用到docker容器内的开发环境&#xff0c;但是虚拟机…

华为VPN技术

1.启动设备 2.配置IP地址 [FW1]int g1/0/0 [FW1-GigabitEthernet1/0/0]ip add 192.168.1.254 24 [FW1-GigabitEthernet1/0/0]int g1/0/1 [FW1-GigabitEthernet1/0/1]ip add 100.1.1.1 24 [FW1-GigabitEthernet1/0/1]service-manage ping permit [FW2]int g1/0/0 [FW2-Gi…

【Swift】运算符

文章目录 术语赋值运算符算数运算符基本四则算术运算符求余运算符一元负号运算符一元正号运算符 比较运算符三元运算符空合运算符区间运算符闭区间运算符半开区间运算符单侧区间运算符 逻辑运算符逻辑非运算符逻辑与运算符逻辑或运算符逻辑运算符组合计算 位运算符运算符优先级…

二手手机回收小程序,一键便捷高效回收

随着科技的不断升级&#xff0c;智能手机也在快速进行更新换代&#xff0c;出现了大量的闲置手机&#xff0c;这为二手手机市场提供了巨大的发展空间&#xff01; 经过手机回收市场的快速发展&#xff0c;二手手机回收已经成为了消费者的新选择&#xff0c;既能够减少手机的浪…

网安瞭望台第2期:零日漏洞密集爆发、2024年常见网络安全漏洞类型及分析

国内外要闻 Ubuntu 服务器 Needrestart 软件包惊现严重安全漏洞 近日&#xff0c;Ubuntu 服务器&#xff08;自 21.04 版本起默认安装&#xff09;的 Needrestart 软件包被曝存在多个可追溯至数十年前的安全漏洞。这些漏洞允许本地攻击者在无需用户交互的情况下获取根…