所谓激活函数(Activation Function),就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端

什么是激活函数

激活函数图像怎么画 python 激活函数的定义_人工智能

图1 激活函数

激活函数(Activation functions)对于人工神经网络模型去学习、理解非常复杂和非线性的函数来说具有十分重要的作用。它们将非线性特性引入到我们的网络中。如图1,在神经元中,输入的 inputs 通过加权,求和后,还被作用了一个函数,这个函数就是激活函数。引入激活函数是为了增加神经网络模型的非线性。没有激活函数的每层都相当于矩阵相乘。就算你叠加了若干层之后,无非还是个矩阵相乘罢了。

为什么要用激活函数

如果不用激活函数,每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合,这种情况就是最原始的感知机(Perceptron)。

如果使用的话,激活函数给神经元引入了非线性因素(因为激活函数就是非线性的,所以因果关系也是非线性的),使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。

常用的激活函数

Sigmoid函数

Sigmoid(S形的)函数是一个在生物学中常见的S型函数,也称为S型生长曲线。在信息科学中,由于其单增以及反函数单增等性质,Sigmoid函数常被用作神经网络的阈值函数,将变量映射到0,1之间。公式如下

激活函数图像怎么画 python 激活函数的定义_人工智能_02

函数图像如下,阈值默认是0.5。

激活函数图像怎么画 python 激活函数的定义_深度学习_03

Sigmoid 图像

Tanh函数

Tanh是双曲函数中的一个,Tanh()为双曲正切。在数学中,双曲正切“Tanh”是由基本双曲函数双曲正弦和双曲余弦推导而来。公式如下

激活函数图像怎么画 python 激活函数的定义_人工智能_04

函数图像如下,阈值默认是0。

激活函数图像怎么画 python 激活函数的定义_激活函数_05

Tanh函数图像

ReLU函数

Relu激活函数(The Rectified Linear Unit),用于隐层神经元输出。公式如下

激活函数图像怎么画 python 激活函数的定义_激活函数图像怎么画 python_06

函数图像如下

激活函数图像怎么画 python 激活函数的定义_机器学习_07