反向传播法根据神经网络输出层的计算误差来调整网络的权值,直到计算误差收敛为止[4]。但是,反向传播法训练具有多隐含层的深度网络的网络参数的学习性能并不好,因为具有多隐含层的深度网络的网络参数的训练问题是一个非凸问题,基于梯度下降的反向传播法很容易在训练网络参数时收敛于局部极小值。此外,反向传播法训练网络参数还存在很多实际问题,比如需要大量的标签样本来训练网络的权值,多隐含层的神经网络权值的训练速度很慢,权值的修正随着反向传播层数的增加逐渐削弱等。
面对采用反向传播法来训练具有多隐含层的深度网络的网络参数时存在的缺陷,一部分研究人员开始探索通过改变感知器的结构来改善网络学习的性能,由此产生了很多著名的单隐含层的浅层学习模型,如SVM、logistic regression、Maximum entropy model和朴素贝叶斯模型等。浅层学习模型能够有效地解决简单或者具有复杂条件限制的问题,但受限于只含一个隐含层,所以浅层学习模型特征构造的能力有限,不能有效处理包含复杂特征的问题[5]。为了同时解决具有多隐含层的深度网络在参数训练时存在的缺陷和浅层网络特征构造能力有限的问题,一些研究人员开始尝试采用新的参数训练方法来训练多隐含层的深度网络。
1984年,日本学者福岛邦彦提出了卷积神经网络的原始模型神经感知机(Neocognitron)[7]。1998年,燕·勒存(Y. LeCun)提出了深度学习常用模型之一卷积神经网络(Convoluted Neural Network, CNN)[3,7]。2006年,杰弗里·辛顿(G. Hinton)提出了深度学习的概念,随后与其团队在文章《A fast Learning Algorithm for Deep Belief Nets》中提出了深度学习模型之一,深度信念网络,并给出了一种高效的半监督算法:逐层贪心算法,来训练深度信念网络的参数,打破了长期以来深度网络难以训练的僵局[5,6]。从此,深度学习的大门打开,在各大政府、高校和企业中掀起了研究深度学习的大浪潮。2009年,Yoshua Bengio提出了深度学习另一常用模型:堆叠自动编码器(Stacked Auto-Encoder,SAE),采用自动编码器来代替深度信念网络的基本单元:限制玻尔兹曼机,来构造深度网络。
约翰·霍普菲尔德(John Hopfie