深度学习采用的模型为深层神经网络(Deep Neural Networks,DNN)模型,即包含多个隐藏层(Hidden Layer,也称隐含层)的神经网络(Neural Networks,NN)。深度学习利用模型中的隐藏层,通过特征组合的方式,逐层将原始输入转化为浅层特征,中层特征,高层特征直至最终的任务目标。为什么要构造包含这么多隐藏层的深层网络结构呢?背后有一些理论依据:
一、天然层次化的特征
对于很多训练任务来说,特征具有天然的层次结构。以语音、图像、文本为例,层次结构大概如下表所示。
以图像识别为例,图像的原始输入是像素,相邻像素组成线条,多个线条组成纹理,进一步形成图案,图案构成了物体的局部,直至整个物体的样子。不难发现,可以找到原始输入和浅层特征之间的联系,再通过中层特征,一步一步获得和高层特征的联系。想要从原始输入直接跨越到高层特征,无疑是困难的。
二、仿生学依据
人工神经网络本身就是对人类神经系统的模拟,这种模拟具有仿生学的依据。1981年,David Hubel 和Torsten Wiesel发现可视皮层是分层的[8]。人类的视觉系统包含了不同的视觉神经元,这些神经元与瞳孔所受的刺激(系统输入)之间存在着某种对应关系(神经元之间的连接参数),即受到某种刺激后(对于给定的输入),某些神经元就会活跃(被激活)。这证实了人类神经系统和大脑的工作其实是不断将低级抽象传导为高级抽象的过程,高层特征是低层特征的组合,越到高层特征就越抽象。
三、 特征的层次可表示性
特征的层次可表示性也得到了证实。1995年前后,Bruno Olshausen和David Field[9]收集了很多黑白风景照,从这些照片中找到了400个16×16的基本碎片,然后从照片中再找到其他一些同样大小的碎片,希望将其他碎片表示为这400个基本碎片的线性组合,并使误差尽可能小,使用的碎片尽可能少。表示完成后,再固定其他碎片,选择更合适的基本碎片组合优化近似结果。反复迭代后,得到了可以表示其他碎片的最佳的基本碎片组合。他们发现,这些基本碎片组合都是不同物体不同方向的边缘线。
这说明可以通过有效的特征提取,将像素抽象成更高级的特征。类似的结果也适用于语音特征。