如果神经网络中没有引入非线性层,那么神经网络就变成了了线性层的堆叠。而多层线性网络的堆叠本质上还是一个线性层,我们以两层线性网络的堆叠为例:
我们用f(x)表示第一层线性网络,g(x)表示第二层线性网络,则两层网络的堆叠表示为:
我们令:
那么原来的表达式就变为:
可以看出,h(x)还是一个线性函数。而我们知道线性函数的表现力是有限的,它只能表示特征与目标值之间比较简单的关系,相反带有非线性层的神经网络被证明可以表示任何函数。所以为了使得网络设计发挥作用,并且提高网络的表现力,必须要在神经网络中引入非线性。