机器学习常用激活函数

简介: 机器学习常用激活函数

机器学习常用激活函数



摘要: 激活函数就是神经网络输出端的一个节点,来连接两个神经网络。本文主要介绍激活函数的功能以及激活函数类型。



什么是激活函数?


激活函数就是神经网络输出端的一个节点,来连接两个神经网络。



为什么要在神经网络中使用激活函数


激活函数用来确定神经网络的输入,比如“是”或“否”,将结果映射为[0,1]或[-1,1]之间,根据函数的曲线,可分为两种类型:线性激活函数、非线性激活函数。


1.线性激活函数(恒等激活函数)


如下图所示,函数是线性的,函数的输出范围为(-∞,+∞)。


image.png


线性激活函数


方程式:f(x) = x


取值范围:(-∞,+∞)



2.非线性激活函数


非线性激活函数是最常用的激活函数,其曲线如下图所示:


image.png



非线性激活函数


使用非线性激活函数,模型可以更容易进行自我调整,并区分不同的输出。非线性激活函数中的主要术语有:


1.导数或微分:y轴随x轴的变化,称为斜率。


2.单调函数:完全递增或完全递减的函数。



根据取值范围,非线性激活函数可分为以下几种:Sigmoid激活函数、Tanh激活函数、ReLU激活函数、


1.Sigmoid激活函数(Logistic激活函数)


Sigmoid激活函数的曲线呈“S”形。


image.png



Sigmoid激活函数


sigmoid函数很受大众的欢迎,其主要原因是:它的输出处于[0,1]范围内,特别适用于输出概率的模型。由于任何概率的取值在0和1范围之间,因此,sigmoid激活函数是最好的选择。



该函数是可微的,也就是说,我们可以得到“S”曲线上任意两点之间的斜率。这个函数是单调的,但是其导数不是,sigmoid 激活函数可能会导致神经网络在训练的时候卡住。


Softmax函数是一种更通用的逻辑激活函数,用于多类分类。



2.Tanh激活函数


tanh激活函数和sigmoid激活函数类似,但是要比sigmoid激活函数好。tanh激活函数的取值范围是(-1,1),曲线也呈“S”形。

image.png



sigmoid激活函数和tanh激活函数



tanh激活函数的优点在于,如果输入为负数,则输出也为负数,输入为0,则输出也近似为0。


该函数是可微分、单调的,但其导数不单调。tanh激活函数主要用于分类。


tanh和sigmoid激活函数都可用于前馈网络。



3.ReLU激活函数(Rectified Linear Unit)


在神经网络中,使用最多的激活函数是ReLU激活函数,它几乎可用于所有卷积神经网络或深度学习中。


image.png


ReLU激活函数和Sigmoid激活函数



如上图所示,在ReLU激活函数中,当z<0时,f(z)=0;当z>0时,f(z)=z。取值范围为[0,+∞]


ReLU激活函数及其导数都是单调的。


但这存在一个问题:当输入为负值时,输出立刻变为0,这就降低了模型拟合或训练数据的能力。反过来说,为了不影响结果,就不能映射负值输入。




4. Leaky ReLU激活函数


Leaky ReLU激活函数的出现,试图解决ReLU激活函数中出现的死亡问题。

image.png



ReLU激活函数和Leaky ReLU激活函数



Leaky ReLU激活函数扩大了ReLU激活函数的取值范围,如上图所示,通常,a的值为0.01左右。取值范围:(-∞,+∞)。


当a不是0.01时,该函数称为Randomized ReLU。


本质上来说,Leaky  ReLU函数和Randomized ReLU函数都是单调的。 而且,它们的导数也单调。



为什么要使用导数和微分?


在更新曲线时,我们要知道哪个方向上会发生变化,或者是根据斜率来更新曲线。这就是我们要在机器学习和深度学习的每个部分都使用微分的原因。

image.png




激活函数汇总

image.png




激活函数的导数曲线图汇总


相关文章
|
6月前
|
机器学习/深度学习 资源调度
【机器学习】高斯分布-概率密度函数
【1月更文挑战第23天】【机器学习】高斯分布-概率密度函数
【机器学习】高斯分布-概率密度函数
|
6月前
|
机器学习/深度学习 算法 Python
【Python机器学习】神经网络中常用激活函数、损失函数、优化方法(图文解释 附源码)
【Python机器学习】神经网络中常用激活函数、损失函数、优化方法(图文解释 附源码)
232 0
|
6月前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
169 1
|
1月前
|
机器学习/深度学习 算法 知识图谱
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
【机器学习】逻辑回归原理(极大似然估计,逻辑函数Sigmod函数模型详解!!!)
|
1月前
|
机器学习/深度学习 算法 PyTorch
【机器学习】揭开激活函数的神秘面纱
【机器学习】揭开激活函数的神秘面纱
|
3月前
|
机器学习/深度学习
【机器学习】如何判断函数凸或非凸?(面试回答)
文章介绍了如何判断函数是凸函数还是非凸函数,包括凸函数的定义、几何意义、判定方法(一元函数通过二阶导数判断,多元函数通过Hessian矩阵的正定性判断),以及凸优化的概念和一些经典的凸优化问题。
162 1
【机器学习】如何判断函数凸或非凸?(面试回答)
|
3月前
|
机器学习/深度学习 人工智能 算法
"揭秘机器学习背后的魔法:函数的力量如何塑造智能预测的奇迹之旅"
【8月更文挑战第16天】机器学习是人工智能的关键分支,通过算法和统计模型使计算机能从数据中学习并预测。本文介绍核心函数的应用及实现:线性回归预测连续值;逻辑回归处理二分类问题;决策树依据简单规则分类或预测;支持向量机寻找最优边界分类。使用Python的`scikit-learn`库实现这些函数,帮助理解机器学习算法的工作原理及其应用场景。
62 1
|
5月前
|
机器学习/深度学习 人工智能 算法
【机器学习】深度探索:从基础概念到深度学习关键技术的全面解析——梯度下降、激活函数、正则化与批量归一化
【机器学习】深度探索:从基础概念到深度学习关键技术的全面解析——梯度下降、激活函数、正则化与批量归一化
59 3
|
4月前
|
机器学习/深度学习 XML 计算机视觉
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习库,它提供了大量的函数和工具,用于处理图像和视频数据。
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习库,它提供了大量的函数和工具,用于处理图像和视频数据。
|
5月前
|
机器学习/深度学习 算法
技术经验解读:【机器学习】代价函数(costfunction)
技术经验解读:【机器学习】代价函数(costfunction)
下一篇
无影云桌面