一、百度百科
我们先看下百度百科的解释:
如果不用激活函数,每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合,这种情况就是最原始的感知机(Perceptron)。如果使用的话,激活函数给神经元引入了非线性因素,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。
二、举例说明
为了很好的解释为什么需要使用激活函数,我接下来以一个带有一个隐含层的感知机来进行说明,希望通过这种方式可以让大家通俗的理解。
给定一个小批量样本,其批量大小为你,输入个数为d。假设多层感知机只有一个隐含层,其中隐藏单元个数为h。记隐藏层的输出(也称为隐藏层变量或隐藏变量)为H,有
。因为隐藏层和输出层均为全连接层,可以设隐藏层的权重和偏差为Wh
和
,输出层的权重和偏差参数分别为
和
。
先来看下一种含单隐含层的多层感知机的设计。其输出 的计算为
,
。也就是将隐含层的输出直接作为输出层的输入,如果将以上两个公式l联立起来,则可以得到
。
由上面的例子可以得出,如果不使用激活函数的话,虽然我们使用了隐藏层,但是实际还是一个单元神经,所以我们需要使用激活函数。
三、各种常见的激活函数
我们常见的激活函数有sigmoid激活函数、tanh激活函数和ReLu激活函数。对于这三种激活函数的介绍及区别在我之前的博客有进行介绍,可以进去学习。博客:https://blog.youkuaiyun.com/Fhujinwu/article/details/107771639