如果在一个感知器的输入和输出之间再嵌套一层或多层的感知器,就可构成多层网络,我们称为多层感知器(Multi-Layer Perceptron,MLP)。一个功能强大的人工神经网络如同复杂的人脑神经网络一样,通常由大量的神经元相互连接构成。
图2-3(a)中每个圆圈都表示一个神经元,线条表示神经元之间的连接。从图2-3(a)中我们可以看出,人工神经网络被分成了多层,层与层之间的神经元有连接,而层内之间的神经元没有连接。最左边的层叫作输入层(input layer),负责接收输入数据;最右边的层叫作输出层(output layer),我们可以从这层获取神经网络输出数据。输入层和输出层之间的层叫作隐藏层(hidden layer)。
隐藏层比较多(至少大于2层)的神经网络我们称为深度神经网络(Deep Neural Network,DNN),如图2-3(b)所示,因此我们常常把使用DNN深层架构的机器学习方法称为深度学习。相比浅层网络,深层网络表达力更强。仅有一个隐藏层的神经网络能拟合任何一个函数,但是它需要很多的神经元。而深层网络则可用少得多的神经元拟合同样的函数。也就是为了拟合一个函数,要么使用一个浅而宽的网络,要么使用一个深而窄的网络,后者往往更节约资源。(www.zuozong.com)
深层网络的困难在于并不好训练,为了能卓有成效地利用深层神经网络,除了大量数据和强大算力外,也需要有更有效的训练算法。在深层神经网络中,多层感知器的训练经常采用误差反向传播(error Back Propagation,BP)算法,从而得到了BP深层网络结构(即BP-DNN结构),采用BP算法的多层感知器是至今为止应用最广泛的神经网络。下面我们将重点介绍BP算法。
图2-3 多层感知器模型
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。