文章目录

  • 一、什么是激活函数?
  • 二、激活函数的种类
  • 2.1 Sigmoid
  • 2.2 tanh(z)
  • 2.3 ReLU
  • 2.4 Leaky ReLu
  • 2.5 ELU
  • 三、激活函数、输出函数的比较
  • 3.1 sigmoid和tanh激活函数的区别
  • 3.2 sigmoid作为网络中间激活层和输出层的区别
  • 3.3 sigmoid输出函数和softmax输出函数的区别



一、什么是激活函数?

       激活函数是来向神经网络中引入非线性因素的,通过激活函数,神经网络就可以拟合各种曲线。

二、激活函数的种类

2.1 Sigmoid

● 公式

最新激活函数 激活函数怎么算_深度学习


● 示意图

最新激活函数 激活函数怎么算_深度学习_02

● 改变权重w发生的情况
权重w使得sigmoid函数可以调整其倾斜程度,下面这幅图是当权重变化时,sigmoid函数图形的变化情况:


最新激活函数 激活函数怎么算_激活函数_03

最新激活函数 激活函数怎么算_激活函数_04

● 改变偏移量b的情况
       下面我们改变偏移量b,它不会改变曲线大体形状,但是改变了数值结果:


最新激活函数 激活函数怎么算_激活函数_05

最新激活函数 激活函数怎么算_权重_06

2.2 tanh(z)

● 公式

最新激活函数 激活函数怎么算_深度学习_07

● 图形

最新激活函数 激活函数怎么算_权重_08

2.3 ReLU

● 公式

       f(x) = max(0, x)

● 图形

最新激活函数 激活函数怎么算_激活函数_09

2.4 Leaky ReLu

● 公式
       f(x) = max(0.1x, x)

● 图形

最新激活函数 激活函数怎么算_权重_10

2.5 ELU

● 公式

最新激活函数 激活函数怎么算_权重_11


● 图形

最新激活函数 激活函数怎么算_激活函数_12

三、激活函数、输出函数的比较

3.1 sigmoid和tanh激活函数的区别

  1. 值域不同,sigmoid值域为(0,1),tanh值域是(-1,1)。
  2. 导数(梯度)不同,sigmoid的导数最大是0.25,(y*( 1-y) ) ,tanh的导数最大是1, ( 1-(y^2)).
  3. 作为激活而言,提供的非线性能力不同,tanh的非线性能力要强于sigmoid的非线性能力。
  4. 作为输出函数,代表的意义不同,经过sigmoid输出的是一个概率值 ,而经过tanh输出的是一个带有方向性的分布值。

3.2 sigmoid作为网络中间激活层和输出层的区别

       sigmoid作为网络中间层提供模型的非线性能力,提高模型稳定性。而作为输出层的作用是压缩数据,让输出的实数值变成概率值。

3.3 sigmoid输出函数和softmax输出函数的区别

  1. softmax输出函数的作用是进行多分类,它将输入的多个实数值转化成一组慨率值,将输入最大的实数转化为最大的概率值,而将其他的实数压缩为更小的概率值,这一组概率值的总和为1。所以这一组概率值之间是有关系的。
  2. sigmoid输出函数的作用是分类,它只输出一个值,表示的是概率。首先sigmoid输入的是一个实数, 然后输出的时候将这个实数转化为一个概率值,如果概率值趋近于0,表示这个类别, 如果概率趋近于1,表示另个类别。
  3. 如果在sigmoid输出函数中传入多个实数值, 输出的多个概率结果之间是没有任何关系的。当所要处理的问题是二分类的时候softmax和sigmoid二者之间可以替换。