5分钟了解神经网络激活函数(一)

简介: 5分钟了解神经网络激活函数(一)

机器学习是一个使用统计学和计算机科学原理来创建统计模型的研究领域,用于执行诸如预测和推理之类的主要任务。这些模型是给定系统的输入和输出之间的数学关系集。学习过程是估计模型参数的过程,以便模型可以执行指定的任务。学习过程会尝试使机器具有学习能力,而无需进行显式编程。这是ANN的作用。

image.png

什么是人工神经网络?

典型的人工神经网络(ANN)是受人脑工作启发而设计的受生物启发的计算机程序。这些ANN称为网络,因为它们由不同的功能组成,这些功能通过使用过去称为训练示例的经验来检测数据中的关系和模式来收集知识。数据中的学习模式通过适当的激活函数进行修改,并作为神经元的输出呈现,如下图所示:

image.png

典型的受生物启发的神经元

什么是激活函数?在神经网络模型中怎么使用?

激活函数是神经网络中用于计算输入和偏差的加权和的函数,用于确定神经元是否可以释放。它通常通过梯度下降法的某种梯度处理来操纵数据,然后产生神经网络的输出,该输出包含数据中的参数。有时这些激活函数通常称为传递函数

激活函数具有改善数据学习模式的能力,从而实现了特征检测过程的自动化,并证明它们在神经网络的隐藏层中的使用合理性,并且对于跨领域进行分类很有用。

激活函数可以是线性的,也可以是非线性的,具体取决于它所代表的功能,并用于控制我们的神经网络的输出,其范围从对象识别和分类到语音识别,分段等更多领域

激活函数如何修改线性模型使用的学习模式?

对于线性模型,在大多数情况下,通过隐式变换可以给出输入函数到输出的线性映射,如在每个标签的最终评分最终预测之前在隐藏层中执行的那样。输入向量x转换由下式给出:

image.png

其中x =输入,w =权重,b =偏差。

此外,神经网络从等式1.1的映射生成线性结果,因此需要激活函数,首先将这些线性输出转换为非线性输出以进行进一步计算,尤其是学习模式。这些模型的输出如下

image.png

每层的这些输出都将导入多层网络(如深度神经网络)的下一个后续层,直到获得最终输出为止,但默认情况下它们是线性的预期的输出确定要在给定网络中部署的激活功能的类型。但是,由于输出本质上是线性的,因此需要非线性激活函数才能将这些线性输入转换为非线性输出。这些激活函数是传递函数,可应用于线性模型的输出以生成转换后的非线性输出,以备进一步处理。应用AF后的非线性输出如下

image.png

其中α是激活函数

那么激活函数有什么需求?

对这些激活函数的需求包括将线性输入转换为非线性输出,这有助于更深层网络学习高阶多项式。非线性激活函数的一个特殊属性是它们是可微的,否则它们在深度神经网络的反向传播期间将无法工作。深度神经网络是具有多个隐藏层和一个输出层的神经网络。了解多个隐藏层和输出层的构成是我们的目标。下方显示了深度学习模型的框图,该框图显示了构成基于DL的系统的三层,其中有些标出了激活函数的位置,这些函数由各个模块中的深色阴影区域表示。

image.png

基于DL的系统模型的框图,显示了激活功能

输入层接受用于训练神经网络的数据,该数据有来自图像,视频,文本,语音,声音或数字数据的各种格式,而隐藏层主要由卷积和池化层组成,其中卷积层从图像中以阵列状形式处理前一层数据中的模式和特征,而池化层将相似特征合并为一个。输出层显示网络结果,这些结果通常由激活函数控制,尤其是分类或预测的相关的概率。

激活函数在网络结构中发挥的功能取决于其在网络中的位置,因此,将激活函数放置在隐藏层之后时,它将学习到的线性映射转换为非线性形式以便传播,而在输出层中则执行预测功能。

只是永远记住要做:

“输入乘以权重,添加偏差并激活”

激活函数的类型及其分析

本节重点介绍了激活函数的不同类型及其分析:

  1. Sigmoid函数

Sigmoid有时被称为逻辑函数。Sigmoid是非线性激活函数,主要用于前馈神经网络。它是一个有界的可微分实函数,为实数输入值定义,到处都有正导数,并具有一定程度的平滑度。

Sigmoid函数由以下关系给出:

image.png

Sigmoid出现在深度学习架构的输出层中,它们可用于预测基于概率的输出,并已成功应用于二分类问题,建模逻辑回归任务以及其他神经网络领域。

Sigmoid激活函数的主要缺点包括反向传播期间从较深的隐藏层到输入层的尖锐阻尼梯度,梯度饱和,收敛缓慢和非零的中心输出,从而导致梯度更新沿不同方向传播。

image.png

目录
相关文章
|
1天前
|
机器学习/深度学习 算法 Serverless
神经网络的激活函数(二)
本文介绍了神经网络中的激活函数,特别是tanh和ReLU。tanh函数将输入映射到(-1,1),以0为中心,加快了训练速度,但两侧导数为0可能导致梯度消失。ReLU函数在正区间的导数为1,解决了梯度消失问题,常用于隐藏层。softmax函数用于多分类,将输出转换为概率分布。文章还包含了代码示例,展示了这些函数的图形和导数。
|
4天前
|
机器学习/深度学习 人工智能 Serverless
【深度学习】神经网络中的激活函数:释放非线性的力量
【深度学习】神经网络中的激活函数:释放非线性的力量
14 1
|
1天前
|
机器学习/深度学习 算法
神经网络的激活函数(一)
人工神经网络( Artificial Neural Network, 简写为ANN)也简称为神经网络(NN),是一种模仿生物神经网络结构和功能的 计算模型。人脑可以看做是一个生物神经网络,由众多的神经元连接而成。各个神经元传递复杂的电信号,树突接收到输入信号,然后对信号进行处理,通过轴突输出信号。
|
1月前
|
机器学习/深度学习 人工智能 算法
【AI 初识】激活函数在神经网络中的作用是什么?
【5月更文挑战第2天】【AI 初识】激活函数在神经网络中的作用是什么?
|
1月前
|
机器学习/深度学习 人工智能 算法
神经网络中的神经元和激活函数介绍
神经网络中的神经元和激活函数介绍
24 0
|
1月前
|
存储 算法 网络协议
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
【探索Linux】P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )
28 0
|
1月前
|
机器学习/深度学习 数据可视化 TensorFlow
Python用线性回归和TensorFlow非线性概率神经网络不同激活函数分析可视化
Python用线性回归和TensorFlow非线性概率神经网络不同激活函数分析可视化
|
1月前
|
存储 Unix Linux
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
深入理解 Linux 系统下的关键网络接口和函数,gethostent,getaddrinfo,getnameinfo
19 0
|
10天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】26.卷积神经网络之AlexNet模型介绍及其Pytorch实现【含完整代码】
【从零开始学习深度学习】26.卷积神经网络之AlexNet模型介绍及其Pytorch实现【含完整代码】
|
10天前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】28.卷积神经网络之NiN模型介绍及其Pytorch实现【含完整代码】
【从零开始学习深度学习】28.卷积神经网络之NiN模型介绍及其Pytorch实现【含完整代码】

热门文章

最新文章