1.2 深度学习沉浮史
喜欢一个人,就应该去了解她的过去,感受她的曾经。想要学习深度学习,不妨也粗略地了解下它的过去,下面我们列出了一些深度学习的关键趋势。
- 深度学习拥有悠久的历史,曾经几度“改嫁”,反映着不同的哲学观点,并且流行度也是几度兴衰。
- 深度学习随着可训练数据的不断增长变得更加有用。
- 随着计算机硬件,软件基础设施的提高,深度学习模型尺寸正在变大。
- 随着精确度不断地提高,深度学习已经开始应用于越来越复杂的领域。
“滚滚长江东逝水,浪花淘尽英雄,是非成败转头空,青山依旧在,几度夕阳红……”许多读者或许已经听说过深度学习作为一种令人激动的新技术,刺激着整个人工智能领域的发展,并且让整个社会前所未有地讨论着人工智能这一话题。但事实上,深度学习最早可以追溯到二十世纪四十年代。深度学习之所以似乎是新的,是因为其流行度几经沉浮,说得严重些,深度学习以前是遭到同行鄙视的。深度学习历经多次“良妻改嫁”并跟随“夫君”改名多次,并且只是最近才称为“深度学习”。其实这个领域已经更名了许多次,其也映射出不同学者,不同思想对该领域的影响。
泛泛地说,深度学习的发展有三段起伏:在1940—1960年,深度学习被称为控制论,随着生物学习理论的发展,以及感知机模型的实现,爆发了第一波热潮。第二波浪潮为1980—1995年,开始于联结主义[6]方法,随着使用反向传播算法训练1~2个隐藏层的神经网络而迅速“膨胀”。而当前以深度学习之名复苏是始于2006年,由于使用逐层贪婪非监督式预训练[4]方法初始化深层神经网络权重,使得网络在数据集较少时依然可以有效地训练深层的神经网络,而在2012年后深度学习彻底被工业界所接纳,大量的公司及科研人员开始关注了深度学习。
1.2.1 模拟生物大脑的疯狂远古时代
大浪淘沙,如今洗尽铅华的一些算法是模拟生物学习的计算模型。深度学习过去的名字也被称为人工神经网络(ANNs)[7]。深度学习模型也可以说是受生物大脑(无论人类大脑还是动物大脑)启发的工程系统。并且,用于机器学习的神经网络有时也用于帮助理解大脑的功能。神经网络的思考方式主要基于两种观点,一种观点是,大脑证明了智能行为是可能的,那么去构建智能最直接的方式就是模拟大脑,复制其功能;另一种观点则相反,期望通过神经网络去理解人类智慧及其原则。因此,神经网络模型除了解决工程问题外,还试图解释人类智慧等基本科学问题。
现代的术语“深度学习”已经超出了神经科学在当前机器学习模型上的观点,其引出了一个更通用的学习原则,即多层次组合的原则,这个原则能够应用于不拘泥于神经元启发的机器学习框架。
现代深度学习的鼻祖是受神经科学观点启发的简单线性模型。该模型如上述的“黄焖鸡模型”一样,使用一组n维输入值x1,…,xn作为数据,然后将它们与输出y关联起来。该模型能够学习一组权重w1,…,wn并且计算它们的输出。
神经网络研究的第一个高潮以控制论著称。麦卡洛克–皮茨神经元[8]是一种早期的脑功能模型,该线性模型通过测试f(x,w)值的正负,能够识别两种不同的输入分类。当然,为了该模型符合期望的分类定义,其权重需要正确设置,但这些权重需要通过人类操作设置。在20世纪50年代,感知机[9]成为第一个从给定的输入样例中学习分类权重的模型。大约在相同时期,自适应线性单元(ADALINE)[10]同样能够自动地学习预测数字数据。这些成就虽然很简单,但给了当时的人工智能领域很大的冲击。因为当时的主流思想是计算机能够做正确的逻辑推理将本质上解决人工智能问题。一时间神经网络受到了大量的关注与投资,但其中也有许多不切实际的想法,因此也受到了许多学者的“仇视”。MIT人工智能实验室创始人Marvin Minsky和Seymour Papert就是持怀疑态度的两位学者。1969年,他们在一本开创性著作中表达了这种质疑,书中严谨分析了感知机的局限性,书名很贴切,就叫《感知机》,其理论证明了感知机无法学习异或函数。看到线性模型中这些缺陷的批评者们,掀起了强烈反对生物启发学习的浪潮,这也导致了神经网络的第一次主要衰败。
但这些简单的学习算法深远地影响了现代机器学习的格局。用于学习自适应线性单元权重的训练算法是随机梯度下降算法的特例,而随机梯度下降算法的稍微修改版本仍然是如今深度学习领域统治级的训练算法。
如今,对于深度学习研究而言,神经科学被当作是一种重要的灵感源泉,但其不再是该领域主要的指导了。而神经科学在深度学习领域中被削弱的主要原因在于我们对大脑还没有足够的认知,并使用其作为指导。
神经科学给了我们理由去期望,一个单独的深度学习算法能够解决许多不同的任务。神经科学家已经发现,如果雪貂的大脑被重新连接,将视觉信号传送到听觉处理区域,雪貂就能通过它们大脑的听觉处理区域学习“看”。我们也许可以假设,大多数哺乳动物大脑可能使用一个单独的算法去解决大脑中的大多数不同任务。在这假设之前,机器学习研究是碎片化的,不同的研究社区研究自然语言处理、视觉、运动以及语音识别任务。如今,这些应用领域仍然分离,但对于深度学习研究团体来说,同时研究许多甚至是全部应用领域是常见的。
我们能够从神经科学中获得一些粗糙的指导方针,如神经认知机[11]受到哺乳动物视觉系统的启发,引入了一种强大的图像处理模型结构,并在之后成为卷积神经网络[12]的基础。虽然神经科学是深度学习重要的灵感来源,但并不需要将其作为一种刚性指南,真实神经元相比于神经元模型来说复杂得多,但使用更真实的神经元并没有提高机器学习的性能。同时,虽然神经科学已经成功地启发了一些神经网络结构,但由于我们对于生物学习还没有足够多的了解,神经科学还无法给我们训练这些结构提供太多的指导。
各种宣传经常强调深度学习与大脑的相似性。虽然深度学习研究相比于其他的机器学习研究,如核函数机或贝叶斯统计,确实更像去模拟大脑工作,但并不应该仅仅把深度学习作为模拟大脑的一种尝试。现代深度学习灵感来源于许多领域,尤其是应用数学基础,像是线性代数,概率论,信息论及数值优化等。虽然有一些深度学习研究以神经科学作为重要的灵感来源,但其他一些完全和神经科学无关。
需要注意的是,在算法级别努力理解大脑如何工作依然是盛行的,这种努力主要以“计算神经学”著称,并且是深度学习的一个单独的研究领域,研究人员反复地在这两个领域移动是很平常的。深度学习领域主要关心怎样构建计算机系统,来成功地解决所需的智能任务;计算神经学领域主要关心构建更精确模型,模拟大脑如何真实工作。
1.2.2 联结主义近代
在20世纪80年代,出现了第二波神经网络研究高潮,并被称为联结主义或并行分布处理[3]。认知科学是以一种跨学科的方法组合多个不同水平的分析去理解思维,而联结主义就出现在认知科学的这一背景下。在20世纪80年代早期,大多数认知科学家研究符号推理模型,尽管当时非常流行,但符号模型非常难于解释大脑如何能够真实地使用神经元执行这些符号。因此联结主义开始研究能够依据神经元执行的认知模型[13]。联结主义的核心思想是大量简单的计算单元连接在一起能够完成智能行为,这种观点同样适用于生物神经系统的神经元及计算模型的隐藏单元。并且在20世纪80年代随着联结主义兴起的一些关键概念,仍然是如今深度学习的核心。
其中之一是分布式表征[14]。这种观点是系统的高级或抽象特征由多个子特征组合而来,并且通过组合不同的子特征,系统可以构造不同的高级特征。例如,假设需要有一个视觉系统能够识别汽车、卡车和鸟,并且这些对象可能是红色、绿色或蓝色。一种表述方式是使用独立神经元:红卡车、红汽车、红鸟、绿卡车等。这需要9个不同的神经元,并且每个神经元必须独立地学习颜色或对象概念。另一种提高的方式是使用分布式表征,三个神经元描述颜色,三个神经元描述对象。这仅仅需要6个神经元而不是9个,并且描述红色的神经元能够学习汽车,卡车以及鸟类图像中的红色,不仅仅局限于特定对象的分类图片。
联结主义的另一个成就是成功地使用反向传播算法[3]训练深度神经网络。该算法的流行度也是跌宕起伏,但如今依然是训练深度模型统治级的方法。
神经网络研究的第二个高潮持续到20世纪90年代中期,当基于神经网络和其他AI技术的投资者寻找投资时,又开始表现不切实际的雄心壮志,当智能研究无法满足这些不合理的期望时,投资者非常的失望。同时,其他机器学习模型也在飞速地发展,如核函数机[15],概率图模型[16]都在许多重要任务中取得了良好的结果。这两个因素导致了神经网络流行度的衰退,这种衰退一直持续到了2007年。
虽然处于低迷期,但一些人仍然没有将其放弃。加拿大高级研究所(CIFAR)通过其神经计算与自适应感知机(NCAP)研究计划保持神经网络研究的存活。该项目联合了由多伦多大学的Geoffrey Hinton,蒙特利尔大学的Yoshua Bengio以及纽约大学的Yann LeCun领导的机器学习研究团队,并且还囊括了一大批顶尖的神经科学,人类和计算机视觉方面专家。
1.2.3 百花齐放,层次结构主导,模型巨大的当代
神经网络研究的第三波高潮开始于2006年的重大突破。Geoffrey Hinton展示了一种名叫深度置信网络(Deep Belief Networks,DBN)[17]的神经网络,它通过使用逐层贪婪预训练的方式能够高效地训练网络。其他的CIFAR附属研究机构也迅速地展示了同样的策略可以应用在许多其他的深度网络中,并且系统地提高了测试样例的泛化能力。这波神经网络的研究,通俗化地使用深度学习术语来强调深层概念的重要性。相比之前,研究者能够训练更深的神经网络,并且关注深度理论。这时,深度神经网络性能远远超过了基于其他机器学习技术的智能系统和手工设计的功能。时间到了2012年,Hinton领导的深度学习小组使用ALexNet[18]网络,在ImageNet计算机视觉挑战赛上,将当时最佳图像识别性能提高了一倍。从此引爆了学术界及工业界,并且ALexNet网络和传统的CNN网络并没有本质区别,其核心只是选用了更简单的ReLU神经元并使用GPU进行加速学习。人们开始重新审视一大批以前遭到抛弃的深度学习模型,并且各大公司也开始了超大规模深度模型的研究,超大规模数据集的“军备竞赛”也正在上演。
如今,神经网络的第三个高潮依然持续着,但深度学习研究的焦点在这波高潮期间已经戏剧化地改变了,第三波高潮开始关注新非监督学习技术以及深度模型在小数据集的泛化能力。但这些高级主题还处在实验室研究之中,由于篇幅有限,本文仅介绍被成熟应用于工业界的监督式学习算法,有兴趣的读者可以参阅Ian Goodfellow所著的Deep Learning的高级研究主题。
总之,深度学习是机器学习的一个重要分支,并且随着过去几十年的发展,已经吸收了大量神经科学,统计学以及应用数学的知识。在最近几年中,由于计算机更强的能力,更大的数据集以及一些训练深度网络的新技术兴起,其流行度已经获得了极大的增长。但正如这些年神经网络的跌宕起伏一样,目前深度学习虽然处于上升期,但有可能会来到一个梦想破碎的蛰伏期,没有人能说得准,甚至还有大量的科学家开始担忧起人工智能可能会是一个潘多拉魔盒。
但勇敢不是不畏惧,而是心怀恐惧,仍然向前。我们使用图灵于1950年《机器与智能》论文中的最后一句话,作为我们的开始,接下来,我们就将正式进入本书的学习。
We can only see a short distance ahead,but we can see plenty there that needs to be done.
——Alan Mathison Turing