
1.3.1 深度学习的发展
深度学习的概念起源于人工神经网络的研究。深度学习其实并不是一项新技术,它的出现可以追溯到20世纪人工智能诞生的时候。1943年,美国心理学家沃伦·麦卡洛克和数理逻辑学家沃尔特·皮茨在合作的论文中提出并给出了人工神经网络的概念及人工神经元的数学模型,开创了人工神经网络研究的时代。然而,对人工神经网络更进一步的推动,是美国神经学家弗兰克·罗森布拉特提出的可以模拟人类感知能力的机器(感知机)。1957年,在康奈尔航空实验室中,他在IBM 704上成功完成了感知机的仿真。两年后,他又成功实现了能够识别一些英文字母、基于感知机的神经计算机——Mark1,并于1960年6月23日向公众展示。这在当时引起了社会上的广泛关注,很多研究者都投入人工神经网络的研究中。就连美国军方也大力资助了对人工神经网络的研究,并一直持续到了20世纪60年代末。
感知机影响了人工智能的发展,但它也存在一定问题。1969年,马文·明斯基和西摩尔·派普特(Seymour Papert)在Perceptrons一书中,仔细分析了以感知机为代表的单层神经网络系统的功能及局限,证明感知机不能解决简单的异或等线性不可分问题。这些误解和未及时地将感知机推广到多层神经网络上,导致人工神经网络的发展受到了巨大的影响,停滞不前,陷入低潮。
直到20世纪80年代,人们认识到其实多层感知机没有单层感知机固有的缺陷,而且同一时期,保罗·韦伯斯(Paul Werbos)发明并提出了反向传播算法,这种算法有效地解决了异或问题,并大幅降低了训练神经网络所需要的时间,这才让神经网络的发展得到了恢复。1987 年,Perceptrons 中的错误得到了校正,再版并更名为Perceptrons-Expanded Edition。
在20世纪80年代中期,分布式并行处理(当时称作联结主义)流行起来。分布式并行处理的核心思想是,现实世界中的知识和概念应该通过多个神经元来表达,而模型中的每一个神经元应该参与多个概念的表达。分布式并行处理加强了模型的表达能力,让神经网络从宽度延伸走向深度拓展。
神经网络的这一次高速发展持续到了20世纪90年代中期。慢慢地,人们发现使用反向传播算法求解多层神经网络似乎也存在着一些约束:随着神经元节点的增加,训练所需的时间也越来越长;神经网络中的优化函数如果是一个非凸优化函数,就会找不到全局最优解;梯度消失和梯度爆炸的问题随着网络的加深也在深层网络中暴露出来。与此同时,一些效率与精度更高的机器学习算法也陆续出现了(如支持向量机),它们掩盖了神经网络的光芒,使得神经网络的发展速度又开始慢下来。
到2010年左右,随着科技的发展,以及图形处理器(graphics processing unit,GPU)的发展,计算机性能不断提高,算力已经不是神经网络发展的障碍。云计算、大数据、互联网、移动互联网的发展也足够成熟,海量的数据也成了神经网络的“燃料”,解决了神经网络发展中在数据量上的难题。科学家们开始不断探索,在2012年的ImageNet大规模视觉识别挑战(ImageNet large scale visual recognition challenge,ILSVRC)竞赛中,杰弗里·辛顿(Geoffrey Hinton)和他的学生亚历克斯·克里泽夫斯基(Alex Krizhevsky)赢得冠军,他们使用 AlexNet 算法,构建了一个多层卷积神经网络,使用1000个类别的100万张图片进行训练,取得了分类错误率15%的成绩,这个成绩比第二名低了11%。要知道,在顶级的算法竞赛中,11%是非常大的差距,这个成绩让深度学习备受关注。2012年之后,深度学习的热度呈指数级上升,2013年,深度学习被 MIT 评为年度十大科技突破之一。2018年,“深度学习三巨头”——杨乐昆(Yann LeCun)、杰弗里·辛顿和约书亚·本吉奥(Yoshua Bengio)(见图1.9)共同获得了计算机界的最高奖项——图灵奖。今天,深度学习已经拓展到了各个领域,不仅学术界在进行积极的研究,产业界也得到了蓬勃的发展。

图1.9 杨乐昆、杰弗里·辛顿和约书亚·本吉奥(从左到右)