1 深度学习的崛起
以深度学习为代表的深度智能为什么会成为AI的热点?为什么深度学习会重塑机器学习和人工智能?为什么深度学习被认为是通往通用人工智能的关键性技术?深度学习又能否在未来智能机器攻破人类认知堡垒的过程中担当大任?
当然,这其中也有质疑的声音,并不是每个人都认为深度学习可以实现与人类智能相媲美的AI,一些批评者认为,深度学习和人工智能研究忽视了大脑本身的生物学、神经学知识,偏向于黑箱式的暴力、强力计算,因为理论基础薄弱已经处于发展瓶颈期,甚至不能解决基本的推理问题等。上述种种,可谓“仁者见仁,智者见智”,本章我们就来探讨一下以深度学习为代表的机器智能关键技术、架构、算法和发展过程中面临的各种问题。
早期AI的发展
人工智能研究六十年进展缓慢,对于许多问题,早期AI研究人员认为机器必须拥有大量的知识才能“聪明”,希望通过知识的表示和符号逻辑的推理实现机器智能,于是提出了基于规则推理的专家系统方法,比如通过计算机程序实现领域专家提供的经验规则来解决医疗诊断等问题,根据病人的数据去匹配一系列规则,如果这种疾病没有得到正确的诊断,那么专家就会增加额外的规则来缩小诊断范围。IBM的沃森(Watson)“认知”智能就是一个经典AI技术的现代升级版,沃森的核心技术是基于大量语料库和问题来构建复杂的知识库,它需要领域专家的密切参与来提供大量数据并评估其性能。这种经典的AI方法虽然能解决一些明确定义的问题,但由于系统本身难以进行自我学习和进化,谈不上真正的机器智能,离人类的智能更是相差甚远。
面对经典AI方法的缺陷,一些早期AI研究人员也在探讨人工神经元模型的思想,结合反向传播方法,很早就构建了人工神经网络(ANN),尽管当时我们还对人类生物神经元的工作方式知之甚少。所以人工神经网络的设计与真正的生物神经元网络也没有太多共同之处,设计重点从生物模拟转向了从数据中学习的思路。人工神经网络比经典AI方法更大的优势在于它能从数据中进行学习,不需要专家知识来提供规则。直到现在,人工神经网络仍然是机器学习的关键技术之一。
虽然传统的人工神经网络系统可以解决许多经典AI方法无法解决的问题,但是它们仍有较大的局限性。例如,在数据不足的情况下,学习效果很有限,另外不能处理数据动态变化的问题,而且即使当时有大量数据,也存在计算资源不足的瓶颈。这也是为什么人工神经网络在当时流行一段时间之后,又衰落下去的原因。
当然,换个角度来看,神经网络早就已经展示出了强大的学习潜力,只是在当时的数据和计算条件下,无法展示其应有的性能。用Hinton的话来讲:“神经网络提出了机器根据经验和数据进行学习的宏伟远景,就像幼儿自我学习进化一样,而不是通过人类量身定制的规则和无休止的知识灌输和监督指导。传统的经典AI方法大部分都受到了逻辑的启发,但是逻辑是人长大后才做的事情,三岁小孩学习从来不靠逻辑,很多成人做事也不讲逻辑。因此在我看来,神经网络是让我们了解智力如何运作的一个比逻辑方法更好的范例。”
“猫”“狗”AI的野蛮生长
早期的神经网络研究尽管取得了一定的成绩,但几十年来为什么没有取得大的成功,这就是笔者在第1章所讲的,因为大数据智能三要素还不具备。一是由于当时的计算能力瓶颈,使得基于神经网络的机器学习黯然失色,这种情况持续了几十年,直到GPU加速的问世;二是缺失的标注数据,尽管10年前互联网就开始充斥着大量的数据,却没有被标注,而被标注的海量数据才是神经网络最需要的燃料。这也是斯坦福大学教授李飞飞最关注的东西,她致力于数据驱动的机器学习。直到2006年,以深度学习为代表的深度智能技术才开始了崛起之路。
2006年,Hinton首次提出了深度信念网络DBN,通过无监督预训练和监督训练微调的方法在一定程度上解决了深层网络难以训练的问题,由于没有特别有效的实践验证,该论文在当时并没有引起重视。
技术洞察ImageNet的笨功夫成就了深度学习
在深度学习流行之前,很多研究人员认为无论数据如何,只有更好的算法才能做出更好的决策。但斯坦福大学的李飞飞教授认识到这一观点的局限性,那就是如果算法学习的数据不能完全反映现实世界,那么最好的算法也不会有好的学习效果。就像人脸识别问题,如果只有某人正面的照片而没有其侧面的照片,那么学习模型的适用性就会有诸多限制。针对这一问题,李飞飞从2006年开始做一件不被同行认可的事情,人工构建海量的图像数据集,称为ImageNet(见图3-1)。
图3-1 ImageNet图像数据库示例
ImageNet手工注释了超过1400万张图像,包含超过两万个类别,比如“猫”“气球”或“草莓”,并从2010年开始,发起了每年一度的基于ImageNet的大规模图像识别挑战赛(ILSVRC),各种算法互相PK以正确分类和识别图像中的目标。2012年,Hinton团队提出的深度学习算法在ImageNet挑战赛中取得重大突破,开启了深度学习的研究热潮,可以说ImageNet是当今人工智能发展热潮的重要催化剂。
2012年,可以称为深度学习元年,在这一年有几个里程碑事件:
● Hinton课题组首次参加ImageNet挑战赛,构建的CNN网络AlexNet一鸣惊人,夺得冠军,并且碾压传统机器学习方法的识别性能,从此深度学习声名鹊起,成为学术研究和企业应用研究的焦点。
● 微软首席研究员里克·拉希德(Rick Rashid)在会议上展示了基于深度残差神经网络的实时口译系统,把他的口语实时转化为英文,再翻译成中文文本,然后深度学习系统用普通话说出翻译后的语言,错误率仅为7%。
● GoogleX的“猫”AI面世,系统采用16000个CPU计算资源构建了一个具有10亿连接的深度神经网络,并让它在YouTube上浏览和寻找猫。这套基于深度学习的识别系统不需要任何人工特征信息的帮助,就能从数千万张图片中找出那些含有猫的图片。传统的人脸识别是由程序员预先将整套系统通过编程实现,再告诉计算机人脸应该是怎样的,即先设计好图像的分割和识别规则,系统再对包含同类信息的图片做出识别,而“猫”AI却是自己发现了猫的概念,之前没有人告诉过它猫是什么,也没有人类告诉它猫应该长成什么模样。
2015年的ImageNet挑战赛中,微软研究院的深度残差学习网络获得冠军,识别错误率仅为3.6%,超越一般人类的识别能力。
2016年,李飞飞团队在教会了计算机去识别图像的基础上,基于卷积神经网络(CNN)和长短时记忆网络(LSTM)的组合架构,让计算机能像幼儿一样学会看图说话,并会用“句子”进行交流,例如不只会说某张图里有“猫”,还可以说“这只猫是坐在床上的”。
2016年3月,英国伦敦的DeepMind(2014年被Google收购)数年磨一剑,AlphaGo横空出世,与李世乭人机大战4∶1获胜。
2017年5月,AlphaGo战胜柯洁,在围棋领域彻底战胜人类冠军,AlphaGo已经可以模仿人下棋的直觉,而且具备创造力,不过这些能力目前仅仅局限于围棋。
2017年10月,AlphaGo的升级版AlphaGo Zero(阿尔法狗零或阿尔法狗元)抛弃对数百万盘人类历史棋谱的训练学习,一开始就不知道何谓人类棋谱,只是自由随意地在棋盘上下棋,按设定的围棋规则和目标,靠周伯通式的左右互搏,学习能力大幅超越原版AlphaGo,被誉为“无人自学仅3天,胜过人类3000年”。
案例分析 VGG-16深度神经网络的设计
VGG-16是牛津大学计算机视觉组和Google DeepMind一起研发的深度卷积神经网络,包含许多卷积层、最大池化层和完全连接层。在ImageNet挑战赛中,VGG-16模型在1000个图像类验证集上的分类识别错误率为8.1%。VGG-16命名的16代表整个网络有16层,VGG模型的设计探索了卷积神经网络的深度与其性能之间的关系,而且网络结构很简洁规范(见图3-2),不需要太多的超参数设置,可以算是一种结构简单的深度神经网络设计。详细网络设计代码参考:https://github.com/ry/tensorflow-vgg16。
图3-2 VGG网络结构设计图
深度学习正在重塑机器智能
上述种种迹象表明,深度学习技术在加速AI的发展进程,从AI的数大门派聚焦到机器学习,从机器学习聚焦到深度学习。笔者认为深度学习已经不仅仅是传统意义上的神经网络,而是一整套基于深度架构理念的算法、模型和技术体系(从监督向无监督,从经典统计学习到深度强化学习、深度对抗学习、深度迁移学习,从生成式、判别式、融合式学习到终生学习等,深度学习架构的拓展之路才刚刚开始)。深度学习不仅仅是多层神经网络,最有价值的应该是它的各种学习结构和深度设计思想,包括融入的深度强化、迁移等学习方式。
深度学习的精华是深度架构设计思想,可以说现阶段基于大数据的深度学习已经让机器初步睁开了眼睛,能初步看图说话,能听会道,李飞飞教授所讲的当前AI已经具有4~5岁幼儿的能力,是很有道理的。深度智能下一步将会扔掉大数据,或自我创造大数据,或无监督来自我进化学习。
人工神经网络发展成为深度学习,通过利用强大计算资源和海量的训练数据,网络性能可以在某些问题的解决上逼近性能极限(见图3-3)。深度学习已经能够成功解决许多问题,如图像识别、自动驾驶、语言翻译、数据中心优化和分析基因、识别癌症等,不断进化中的深度学习技术能解决的重大问题将会越来越多。
图3-3 相比传统学习算法,深度学习能力无上限
前文曾提到,深度学习的核心技术是几十年前就提出的人工神经网络。那为什么人工神经网络换马甲为深度学习之后,能获得突破性进展(图像、语音、翻译等多个领域接近或超过人类),数据、算法和算力三个方面的天时、地利、人和发挥了关键作用。
另外我们都知道,伟大的东西往往很简单,就好比爱因斯坦的EMC方程,深度学习也是一种朴素、简单、优美而有效的方法:像小孩搭积木一样简单地构建网络结构;性能不够,加层来凑的朴素思想。这种标准化、易用性的处理架构,极大降低了机器学习技术的难度(换句话说,深度学习的更大价值,在于推动了机器学习的普及应用),当然最关键的还是效果,就某些应用领域而言,深度学习在大数据环境下的学习能力完败传统方法,当你的大数据燃料输入深度神经网络之后,不出意外的话,它比大部分传统的浅层机器学习算法效果都要好很多,这不得不让人刮目相看,而AlphaGo战胜人类顶尖高手,更是深度智能工程应用的极致案例。