机器学习中的激活函数作用

https://blog.csdn.net/a6333230/article/details/80887062

https://blog.csdn.net/newmemory/article/details/86654706
神经网络的激活函数必须使用非线性函数。换句话说,激活函数不能使

用线性函数。为什么不能使用线性函数呢?因为使用线性函数的话,加深神

经网络的层数就没有意义了。

https://www.cnblogs.com/nhdmmdxq/p/9553428.html
可以看出,如果用线性激活函数,或者叫恒等激活函数,那么神经网络只是把输入的线性组合再输出.

后续的例子中会看到,如果使用线性激活函数或者不使用激活函数,那么无论你的神经网络有多少层,一直在做的只是计算线性激活函数,所以不如直接去掉全部隐藏层。因为这种算法和没有任何隐藏层的标准逻辑logistic回归是一样的。

只有一个地方可以使用线性激活函数g(z) = z 就是如果你要机器学习的是回归问题,所以y是一个实数,比如说,你想预测房地产价格,所以y不是0和1,而是一个实数,那么用线性激活函数也许可行。但是隐藏单元不能用线性激活函数,通常是非线性函数,它们可以用ReLU或者tanh或者带泄露的ReLU或者别的东西。
所以唯一可以用线性激活函数的地方通常是输出层。

激活函数的意义(需要激活函数的理由)
激活函数是神经网络的一个重要组成部分。如果不用激活函数(即相当于激活函数为f(x)=x),在这种情况下,网络的每一层的输入都是上一层的线性输出,因此,无论该神经网络有多少层,最终的输出都是输入的线性组合,与没有隐藏层的效果相当,这种情况就是最原始的感知机。
正因为上面的原因,才需要引入非线性函数作为激活函数,这样深层神经网络才有意义,输出不再是输入的线性组合,就可以逼近任意函数。


更多精彩内容