机器学习 | 深入理解激活函数

news2024/11/25 3:02:25

什么是激活函数?

在人工神经网络中,节点的激活函数定义了该节点或神经元对于给定输入或一组输入的输出。然后,将此输出用作下一个节点的输入,依此类推,直到找到原始问题的所需解决方案。

它将结果值映射到所需的范围,例如0到1或-1到1等。这取决于激活函数的选择。例如,使用逻辑激活函数将把真实的数域中的所有输入映射到0到1的范围内。

二分类问题的例子

在二分类问题中,我们有一个输入x,比如一张图像,我们必须将其分类为是否正确的对象。如果它是一个正确的对象,我们将给它赋值1,否则赋值0。因此,在这里,我们只有两个输出-图像包含有效对象或不包含。这是一个二分类问题的例子。

在这里插入图片描述

当我们将每个特征乘以权重(w1,w2,…,wm)并将它们全部相加时,
节点的输出=激活(输入的加权和)。

在这里插入图片描述

一些重要的术语和数学概念

  • 传播是一个过程,反复调整权重,以最大限度地减少实际输出和期望输出之间的差异。

  • 隐藏层是堆叠在输入和输出之间的神经元节点,允许神经网络学习更复杂的特征(如XOR逻辑)。

  • 反向传播是一个过程,反复调整权重,以最大限度地减少实际输出和期望输出之间的差异。
    它允许信息通过网络从成本向后返回,以计算梯度。因此,从最后一个节点开始按反向拓扑顺序循环节点,以计算最终节点输出的导数。这样做将帮助我们知道谁对最大的错误负责,并在该方向上适当地改变参数。

  • 梯度下降在训练机器学习模型时使用。它是一种基于凸函数的优化算法,可以迭代地调整其参数,以最小化给定函数的局部最小值。梯度测量了如果你稍微改变输入,函数的输出会改变多少。
    注意:如果梯度下降正常工作,则成本函数在每次迭代后都应该减少。

激活函数的类型

激活函数基本上有两种类型:

1.线性激活函数

Equation : f(x) = x

Range : (-infinity to infinity)

在这里插入图片描述

2.非线性激活函数
这使得模型很容易对各种数据进行泛化,并区分输出。通过仿真,发现对于较大的网络,ReLU要快得多。事实证明,ReLU可以更快地训练大型网络。非线性意味着输出不能从输入的线性组合中再现。
需要理解的非线性函数的主要术语是:
1.导数:y轴相对于x轴的变化(t时间内)。它也被称为斜坡。
2.单调函数:一个完全递增或递减的函数。

在这里插入图片描述
非线性激活函数主要根据其范围或曲线划分如下:

在这里插入图片描述
让我们更深入地了解每个激活函数

1. Sigmoid:

它也被称为二分类器或Logistic激活函数,因为函数总是选择值0(假)或1(真)。
sigmoid函数产生与step函数类似的结果,输出在0和1之间。曲线在z=0处穿过0.5,我们可以为激活函数设置规则,例如:如果sigmoid神经元的输出大于或等于0.5,则输出1; 如果输出小于0.5,则输出0。
sigmoid函数在其曲线上没有加加速度。它是光滑的,它有一个非常好的和简单的导数,它在曲线上的任何地方都是可微的。

Sigmoid的推导:

在这里插入图片描述
sigmoid的一个非常常见的性质是,当神经元的激活在0或1处饱和时,这些区域的梯度几乎为零。回想一下,在反向传播过程中,这个局部梯度将乘以整个目标的这个门的输出梯度。因此,如果局部梯度非常小,它将有效地“杀死”梯度,几乎没有信号将通过神经元流向其权重并递归地流向其数据。此外,额外的惩罚将被添加到初始化S形神经元的权重以防止饱和。例如,如果初始权重太大,那么大多数神经元将变得饱和,网络将几乎无法学习。

2. ReLU(Rectified Linear Unit):

它是使用最广泛的激活函数。因为它被用于几乎所有的卷积神经网络。函数及其导数都是单调的。

f(x) = max(0, x)

接近线性的模型易于优化。由于ReLU共享了线性函数的许多属性,因此它在大多数问题上都能很好地工作。唯一的问题是导数在z = 0时没有定义,我们可以通过在z = 0时将导数赋值为0来克服这个问题。然而,这意味着对于z <= 0,梯度为零,并且再次无法学习。

3. Leaky ReLU:

Leaky ReLU是ReLU函数的改进版本。ReLU函数,对于x<0,梯度为0,这使得该区域的神经元因激活而死亡。Leaky ReLU的定义就是为了解决这个问题。我们将Relu函数定义为x的一个小的线性分量,而不是将x小于0的Relu函数定义为0。
Leaky ReLU是解决垂死ReLU问题的一种尝试。当x < 0时,函数不是零,而是一个泄漏的ReLU将具有一个小的负斜率(0.01左右)。也就是说,该函数计算:

在这里插入图片描述

4. Tanh或双曲正切:

它将一个实数压缩到范围[-1,1]与Sigmoid一样,它的激活饱和,但与Sigmoid神经元不同,它的输出是以零为中心的。因此,双曲正切非线性总是优于S形非线性。tanh神经元只是一个缩放的sigmoid神经元。
Tanh也像logistic sigmoid,但更好。其优点是负输入将被映射到强负,零输入将被映射到双曲正切图中的近零。
函数是单调可微的,但它的导数不是单调的。tanh和logistic Sigmoid激活函数都用于前馈网络。
它实际上只是sigmoid函数的缩放版本。

 tanh(x)=2 sigmoid(2x)-1 

在这里插入图片描述

5. SoftMax:

sigmoid函数可以很容易地应用,并且ReLU不会在训练过程中消除效果。但是,当你想处理分类问题时,它们就帮不上什么忙了。sigmoid函数只能处理两个类,这不是我们所期望的,但我们想要更多。softmax函数将每个单元的输出压缩到0和1之间,就像sigmoid函数一样。并且它还划分每个输出,使得输出的总和等于1。
softmax函数的输出相当于一个分类概率分布,它告诉你任何类为真的概率。

在这里插入图片描述

其中0是输出层的输入向量(如果你有10个输出单元,那么z中有10个元素)。同样,j索引输出单元,所以j = 1,2,…,K。

Softmax函数的性质

1.计算的概率将在0到1的范围内。
2.所有概率之和等于1。

Softmax函数用法
1.用于多分类logistic回归模型。
2.在构建神经网络时,softmax函数用于不同层次和多层感知器。

例如:
在这里插入图片描述

Softmax函数将logits [1.2,0.9,0.4]转换为概率[0.46,0.34,0.20],概率之和为1。

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

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

相关文章

CSS综合案例(快报模块头部制作)

&#xff08;大家好&#xff0c;今天我们将继续来学习CSS的相关知识&#xff0c;大家可以在评论区进行互动答疑哦~加油&#xff01;&#x1f495;&#xff09; 目录 一、前述 二、案例分析 1.样例参看 2.拆分分析 三、案例实施 一、前述 案例&#xff1a;快报模块头部制…

微信小程序基本语法

官网 https://developers.weixin.qq.com/miniprogram/dev/framework/ 视频教程&#xff1a;尚硅谷微信小程序开发教程&#xff0c;2024最新微信小程序项目实战&#xff01; 仿慕尚花坊项目源码&#xff1a;https://gitee.com/abcdfdewrw/flower-workshop 目录 一&#xff0c;初…

热门软件缺陷管理工具2024:专业评测与建议

国内外主流的10款软件缺陷管理工具软件对比&#xff1a;PingCode、Worktile、禅道、Tapd、Teambition、Tower、JIRA、Bugzilla、MantisBT、Trac。 在软件开发过程中&#xff0c;管理缺陷和漏洞常常成为一项挑战&#xff0c;尤其是在项目规模庞大时。选择一个高效的软件缺陷管理…

C#实现自定义标签的设计和打印

背景:最近在进行资产盘点的时候,需要对固定资产设计标签并进行打印。 设计标签:选用的是Fastreport自带的,可拆包忌用的标签设计器;进行标签的模型设计。 软件解压后可直接进行使用。模板的设计基本都是无脑操作,拖拽控件按,放置到固定未知即可;我设计的模板如下: 说…

Vision Pro的增强视觉:企业级Unity插件包实现主摄像头访问

在AR和VR技术的快速发展中,Unity作为跨平台游戏和应用开发的首选引擎,其插件生态的丰富性一直是开发者们关注的焦点。最近,一个专为Vision Pro设计的Unity插件包——EnterpriseCameraAccessPlugin,因其能够通过企业API访问主摄像头的功能,引起了广泛关注。 一、插件背景与…

springboot+vue+mybatis鲜花管理系统+PPT+论文+讲解+售后

随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;鲜花管理系统当然也不能排除在外。鲜花管理系统是以实际运用为开发背景&#xff0c;运用软件工程开发方法&#xff0c;采用SSM技…

小阿轩yx-zookeeper+kafka群集

小阿轩yx-zookeeperkafka群集 消息队列(Message Queue) 是分布式系统中重要的组件 通用的使用场景可以简单地描述为 当不需要立即获得结果&#xff0c;但是并发量又需要进行控制的时候&#xff0c;差不多就是需要使用消息队列的时候。 消息队列 什么是消息队列 消息(Mes…

前端框架入门之Vue _el和data的两种写法 分析MVVM模型

目录 _el与data的两种写法 MVVM模型 _el与data的两种写法 查看vue的实例对象 我们在这边注释掉了el属性 这样的话div容器就绑定不了vue实例 当我们可以在这里写一个定时任务 然后再回头指定 这个mount有挂载的意思 就是把容器对象交给vue实例后 去给他挂载指定的对象 &…

MySQL 进阶(四)【锁】

1、锁 1.1、锁的概述 锁就不需要多介绍了&#xff0c;多个用户访问共享数据资源&#xff0c;如何保证数据并发访问的一致性、有效性是数据库最重要的问题。同时&#xff0c;锁冲突也是影响一个数据库并发性能最重要的因素。 MySQL 中锁的划分有三类&#xff1a; 全局锁&…

敏捷营销在AI智能名片微信小程序中的应用探索

摘要&#xff1a;在数字化转型的浪潮中&#xff0c;企业面临着前所未有的挑战与机遇。AI智能名片微信小程序作为一种创新的营销工具&#xff0c;以其便捷性、智能化和高效性&#xff0c;正逐步成为企业连接客户、推广品牌的新宠。然而&#xff0c;如何在快速变化的市场环境中&a…

Automation Anywhere推出新一代AI+自动化企业系统,助力企业实现10倍商业增长

RPA厂商纷纷进军AI Agent ( AI 代理)领域&#xff0c;陆续推出创新产品。最近&#xff0c;Automation Anywhere宣布推出其新的AI 自动化企业系统&#xff0c;该系统结合AI和自动化技术&#xff0c;以实现指数级的业务成果。 在Imagine 2024大会上首次亮相的这款新产品&#xf…

机器学习中的梯度下降

本文只是简单解释一下梯度下降&#xff0c;其中涉及到的公式并没有展示说明。 1.什么是梯度&#xff1f; 梯度也可以理解为导数。 在一维空间中&#xff1a;梯度就是导数&#xff0c;或者说对于一个线性函数&#xff0c;也就是线的斜率。 2.什么是梯度下降&#xff1f; 梯度是…

字典树实现

一、字典树 字典树&#xff08;Trie树&#xff09;是一种多叉树结构&#xff0c;每条边代表一个字符&#xff0c;从根节点到其它节点的路径构成一个单词。其具有较好的查询性能&#xff0c;可以用于有效地存储大量字符串&#xff0c;并支持高效的查找、插入和删除操作。 二、…

浏览器缓存:强缓存与协商缓存实现原理有哪些?

1、强缓存&#xff1a;设置缓存时间的&#xff0c;那么在这个时间内浏览器向服务器发送请求更新数据&#xff0c;但是服务器会让其从缓存中获取数据。 可参考&#xff1a;彻底弄懂强缓存与协商缓存 - 简书 2、协商缓存每次都会向浏览器询问&#xff0c;那么是怎么询问的呢&…

java 项目使用 acitiviti 流程引擎中的人员设置

学习目标&#xff1a; 目标 [ ]了解 java 项目使用 acitiviti 流程引擎中的人员设置 知识小记&#xff1a; - [x] 1、人员选择说明 - [x] 2、分配任务候选人 任务的候选人是指有权限对该任务进行操作的潜在用户群体&#xff0c;这个用户群体有权限处理(处理、完成)该任务…

第九课:服务器发布(静态nat配置)

一个要用到静态NAT的场景&#xff0c;当内网有一台服务器server1&#xff0c;假如一个用户在外网&#xff0c;从外网访问内网怎么访问呢&#xff0c;无法访问&#xff0c;这是因为外网没办法直接访问内网&#xff0c;这时候需要给服务器做一个静态NAT。 静态NAT指的是给服务器…

学习笔记——动态路由——IS-IS中间系统到中间系统(特性之路由泄漏)

3、路由泄漏 什么是路由泄漏&#xff1f; IS-IS路由协议允许路由信息的两级层次结构。可以有多个1级区域通过连续的2级主干互连。路由器可以属于1级、2级或两者。1级链路状态数据库仅包含有关该区域的信息。第2级链路状态数据库包含有关该级别以及每个第1级区域的信息。L1/L2…

Matlab|基于蒙特卡洛法的电动汽车充电负荷计算

目录 1 主要内容 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序方法复现《V2G 模式下含分布式能源的配电网优化运行研究》第二章电动汽车无序充电模型&#xff0c;按照文章《V2G 模式下基于复杂网络的电动汽车有序充电策略》分析思路研究了不同数量电动汽车接入情况…

初识Docker及管理Docker

Docker部署 初识DockerDocker是什么Docker的核心概念镜像容器仓库 容器优点容器在内核中支持2种重要技术&#xff1a;Docker容器与虚拟机的区别 安装Docker源码安装yum安装检查Docker Docker 镜像操作配置镜像加速器&#xff08;阿里系&#xff09;搜索镜像获取镜像查看镜像信息…

【STM32 IDE】使用STM32CubeIDE创建一个工程

关于IDE的下载安装和环境配置这里暂且不介绍&#xff0c;我们直接使用STM32F407ZGT6创建工程。 这里需要注意两点&#xff1a; 创建工程时&#xff0c;默认使用最新版本的固件包&#xff08;HAL库&#xff09;&#xff0c;好像还不让更改。如果本地电脑位置没有该版本的包&…