神经网络与深度学习:基于TensorFlow框架和Python技术实现
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 深度学习

深度学习是机器学习领域一个新的研究方向,近年来在图像识别与检索、语言信息处理、语音识别等众多领域都取得较为成功的发展。深度学习应用的发展基础在于建立模型来模拟人类大脑的神经连接结构,在处理图像、声音和文本这些信号时,通过多个变换阶段分层对数据特征进行描述,进而给出数据的解释。

深度学习是实现机器学习的一种技术,现在所说的深度学习大多是指神经网络。神经网络的灵感,来自人类大脑神经元之间的相互连接。深度学习的概念源于对人工神经网络的研究,多隐藏层的神经网络就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层来表示属性类别或特征,以发现数据的分布式特征表示。

深度学习的概念最早由 Hinton 等人于 2006 年提出,基于深信度网(DBN)提出非监督贪婪训练逐层算法,为解决深层结构相关的优化难题带来了希望[3]。Lecun 等人提出的卷积神经网络是第一个真正多层结构的学习算法,它利用空间相对关系来减少参数数目,以提高训练性能。而源自霍普菲尔德网络并由其变化而来的循环神经网络,已成功应用于语音识别、语言模型、机器翻译等领域,用于处理和预测序列数据。目前,卷积神经网络和循环神经网络是应用最广的两种深度学习模型。

1.3.1 卷积神经网络

卷积神经网络(Convolutional Neural Network,CNN)是近年发展起来,并引起广泛重视的一种高效的识别方法。1962 年,Hubel 和 Wiesel 在研究猫脑皮层中的神经元时,提出了“卷积神经网络”。Fukushima在1980年提出的新识别机,是卷积神经网络的第一个实现网络。随后,更多的科研工作者对该网络进行了改进。其中,具有代表性的研究成果是Alexander和Taylor提出的“改进认知机”,该方法综合了各种改进方法的优点,并避免了耗时的误差反向传播。现在,卷积神经网络已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。

卷积神经网络是一种前馈神经网络,它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现得更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积神经网络是为识别二维形状而特殊设计的一个多层神经网络,这种网络结构对平移、比例缩放、倾斜或者其他形式的变形具有高度不变性。

卷积神经网络与普通神经网络的区别,在于卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,具体叙述详见第7章。

1.3.2 循环神经网络

循环神经网络(Recurrent Neural Network,RNN)源自 1982 年由 John Hopfield提出的霍普菲尔德网络。霍普菲尔德网络因为实现困难,在被提出时并且没有被合适地应用。该网络的结构于 1986 年以后被全连接神经网络以及一些传统的机器学习算法所取代。然而,传统的机器学习算法非常依赖于人工提取的特征,使得基于传统机器学习的图像识别、语音识别以及自然语言处理等问题存在特征提取的瓶颈。而基于全连接神经网络的方法也存在参数太多、无法利用数据中时间序列信息等问题。随着更加有效的循环神经网络结构被不断提出,循环神经网络挖掘数据中的时序信息以及语义信息的深度表达能力被充分利用,并在语音识别、语言模型、机器翻译以及时序分析等方面实现了突破。

循环神经网络的主要用途是处理和预测序列数据。在全连接神经网络或卷积神经网络模型中,网络结构都是从输入层到隐藏层(又称隐含层)再到输出层,层与层之间是全连接或部分连接的,但每层之间的节点是无连接的。但是如果要预测句子的下一个词语是什么,一般需要用到当前词语以及前面的词语,因为句子中前后词语并不是独立的。从网络结构上,循环神经网络会记忆之前的信息,并利用之前的信息影响后面节点的输出。也就是说,循环神经网络的隐藏层之间的节点是有连接的,隐藏层的输入不仅包括输入层的输出,还包括上一时刻隐藏层的输出。

长短时记忆(Long Short-term Memory,LSTM)网络是一种特殊类型的循环神经网络,可以学习长期依赖信息。LSTM 网络由Hochreiter 和 Schmidhuber于 1997 年提出,并在近期被Alex Graves进行了改良和推广。在很多问题上,LSTM网络都取得相当巨大的成功,并得到了广泛的使用。LSTM网络通过特别的设计来避免长期依赖问题。