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

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

激活函数的作用

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

  • 控制输出范围:激活函数常将输出限制在某个范围内,如 [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.xdnf.cn/news/20671.html

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

相关文章

mysql复习题(实验7-8)

建立一个学生入学信息管理(x_y)数据库,设计其数据库模式为: 学生表(学号,姓名,性别,入学成绩,籍贯,院系编号) 院系表(院系编号&…

n个整数后移m个位置

题目描述 有n个整数,使前面各数顺序向后移m个位置,最后m个数变成前面m个数,见图。写一函数:实现以上功能,在主函数中输入n个数和输出调整后的n个数。 输入描述 输入数据的个数n n个整数 移动的位置m 输出描述 移动后的…

Python——面向过程和面向对象

一.两大编程思想 面向过程:事情比较简单,可以用线性的思维去解决问题。例:c语言。 面向对象:事情比较复杂,使用简单的线性思维无法解决。例:python。 二.面向对象 1.类和对象 类和对象:由无…

【机器学习】---神经架构搜索(NAS)

这里写目录标题 引言1. 什么是神经架构搜索(NAS)1.1 为什么需要NAS? 2. NAS的三大组件2.1 搜索空间搜索空间设计的考虑因素: 2.2 搜索策略2.3 性能估计 3. NAS的主要方法3.1 基于强化学习的NAS3.2 基于进化算法的NAS3.3 基于梯度的…

图像上显示中文文本 - python 实现

该示例是在图像上显示中文文本,并用opencv的显示方式显示。 注意:SimHei.ttf(黑体字体)为字体文件,Windows 默认字体路径:C:/Windows/Fonts/SimHei.ttf 具体实现代码如下: # -*-coding:utf-8…

dotnet:依赖注入

依赖注入的基本概念 依赖&#xff1a;一个类依赖于另一个类或接口来完成其功能。注入&#xff1a;依赖项由外部提供给类&#xff0c;而不是由类自己创建。 builder.Services.AddScoped<IMyDependency, MyDependency>(); 这行代码使用 AddScoped 方法将 IMyDependency 接…

JAVA题目笔记(十七)TreeSet对象排序+Map集合练习

一、TreeSet对象排序&#xff1a; 需求&#xff1a; public class Student implements Comparable<Student>{private String name;private int age;private int grade_Yu;private int grade_Shu;private int grade_Yin;private int sumthis.grade_Yinthis.grade_Shuthis…

w046基于web的古典舞在线交流平台的设计与实现

&#x1f64a;作者简介&#xff1a;多年一线开发工作经验&#xff0c;原创团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339;赠送计算机毕业设计600个选题excel文…

【迅为】瑞芯微-RK3568开发板Linux+HAL启动测试

迅为iTOP&#xff0d;RK3568开发板AMP AMP SDK支持Rockchip平台异构多系统AMP&#xff08;非对称多核架构&#xff09;的开发软件包&#xff0c;支持Linux(Kernel)、Standalone(Hal)、RTOS(RT-Thread)组合AMP构建形式。可以满足一些特定行业应用&#xff0c;如电力物联网、电…

渗透测试--Windows系统下的文件传输手段

很多情况下&#xff0c;我们渗透测试都面临需要上传和下载文件的文件传输需求。本文专门探讨Windows服务器或主机上实施文件传输的各种方案。该专题比较敏感&#xff0c;该文章仅供学习使用&#xff0c;不要用于非法用途。 编码方法 Linux检查文件MD5 md5sum id_rsa Linux编…

视觉常用Backbone大全:VisionTransformer(ViT)

视觉常用Backbone大全 今天介绍的主干网络模型叫VisionTransformer&#xff0c;是一种将 Transformer 架构应用于计算机视觉任务的模型&#xff0c;通过将图像进行切块&#xff0c;将图片转变为self-attention认识的token输入到Transformer模块中&#xff0c;实现了Transformer…

星海智算:Stable Diffusion3.5镜像教程

Stable Diffusion3.5 模型介绍 Stable Diffusion 3.5是由Stability AI推出的最新图像生成模型&#xff0c;它是Stable Diffusion系列中的一个重大升级。这个模型家族包括三个版本&#xff0c;分别是Stable Diffusion 3.5 Large、Stable Diffusion 3.5 Large Turbo和Stable Dif…

[JavaWeb] 尚硅谷JavaWeb课程笔记

1 Tomcat服务器 Tomcat目录结构 bin&#xff1a;该目录下存放的是二进制可执行文件&#xff0c;如果是安装版&#xff0c;那么这个目录下会有两个exe文件&#xff1a;tomcat10.exe、tomcat10w.exe&#xff0c;前者是在控制台下启动Tomcat&#xff0c;后者是弹出GUI窗口启动To…

【Unity基础】认识Unity中的包

Unity中的包是一个核心概念&#xff0c;像Unity本身的功能的扩展&#xff0c;或者项目中资源的管理&#xff0c;都是通过包的形式来实现的。 一、什么是包&#xff1f; 一个包包含满足您项目各种需求的功能。这可以包括编辑器安装过程中附带的任何核心Unity功能&#xff0c;也…

elment-ui的折叠tree表单实现纯前端搜索,展开收起功能

好久没更新博客了~ 记录一下本次做的一个很扯的需求 纯前端去实现这个查询的功能,后台返回的是个数组对象,前端要给他包装成树结构先展示 之后参考代码路径src\views\goods\category\index.vue 需求描述: 搜索输入任何一个关键字,都会展开他的父级,两个栏目都包含了,那么两个父…

linux先创建文件夹后指定创建文件夹用户

1、创建文件夹&#xff0c;然后创建用户并指定用户目录&#xff0c;然后修改目录所有权给该目录 # 创建 /home/test 目录 mkdir /home/test # 设置权限&#xff08;确保有适当的读写权限&#xff09; chown root:root /home/test chmod 700 /home/test # 创建 xl 用户并指定家…

大模型(LLM)全参数微调有哪些技巧,常用的轻量级微调有哪些,微调策略应该如何选择?

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下大模型(LLM)全参数微调有哪些技巧&#xff0c;常用的轻量级微调有哪些&#xff0c;微调策略应该如何选择&#xff1f;本文将从大模型(LLM)全参数微调技巧&#xff0c;常用的轻量级微调方法&#xff0c;微调策略应该…

蓝牙电话-如何自动切换手机SIM卡(预研方向)

蓝牙电话-如何自动切换手机SIM卡&#xff08;预研方向&#xff09; 一、前言 最近突然有客户问说&#xff0c;蓝牙电话的app既然已经能统计手机里面插了多少张卡&#xff0c;那能不能做双卡的SIM卡自动切换&#xff1f;即&#xff1a;设置一个呼叫策略和频率&#xff0c;当打…

【蓝桥杯C/C++】C语言和C++的常量概念与区别分析

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: 蓝桥杯C/C 文章目录 &#x1f4af;前言&#x1f4af;常量的概念和作用&#x1f4af;C语言中 const 的应用与限制#define 和 enum 的使用方法 &#x1f4af;C 中 const 的计算方法和处理&#x1f4af;代码实例和应用区别&#x1f…

全面解析亚马逊云服务器(AWS):功能、优势与使用指南

亚马逊云服务器&#xff08;AWS&#xff09;概述 亚马逊云服务器&#xff08;Amazon Web Services&#xff0c;简称AWS&#xff09;是全球领先的云计算平台&#xff0c;提供一系列强大且灵活的云服务&#xff0c;帮助企业和开发者通过云基础设施实现数据存储、计算、分析和机器…