今天,智能算法研究中心的黄翰教授并不打算跟大家重谈人工智能的发展历史或者目前人工智能目前的广泛应用,而是想和大家聊一聊人工智能的本质到底是什么。黄老师认为,人工智能的本质是知识的表示。也就是说,不管是从应用还是表征上看,人工智能这种人为制造的智能形式,本质应该都是知识的表示。人工智能表现出的人为制造的智能的这种形式,它的本质应该都是知识的表示。
首先,由于现在很多的人工智能都是用电子计算机或者移动终端来实现的,因此我们在讨论人工智能的本质时,应该要去思考它是怎么被编码到计算机中的。前面提到,人工智能的本质是知识的表示。这意味着,,一个人工智能之所以能够被成功地被编码到计算机中,成为大家看得见、摸得着、用得上的应用,并且服务于社会,这与离不开它成功的知识表示是密不可分的。简而言之,人工智能被成功编码到计算机中就是知识被成功地编码到计算机中。
人工智能的很多问题都可以从知识表示的角度去解释与回答。接下来,我们简单举几个人工智能的例子。1997年,IBM公司生产的计算机“深蓝”(DeepBlue)((DeepBlue))战胜了人类世界的象棋冠军卡斯帕罗夫。“深蓝”是使用C语言编码,、运行在AIX操作系统上的计算机,其运算速度可以达到每秒2亿步棋。本次比赛意味着,人工智能可以使最能代表人类智慧的一项运动——棋类运动,可以用被人工智能——呈现出惊人的人机博弈的技术效果。
图1计算机“深蓝”与国际象棋世界冠军卡斯帕罗夫对战实况图
当时,在第一局比赛中,“深蓝”战胜了人类的世界级国际象棋冠军卡斯帕罗夫,这使人们大受震撼,。但是,从第二局比赛开始后,卡斯帕罗夫好像从第二局比赛开始就抓住了“深蓝”的弱点,在后面的几局中取得了连胜最终以4:2取胜,成功反杀计算机。因此,这次人机大战虽然有一定的影响力,但并不如后来的AlphaGo彻底击败了人类的超级计算机令人印象深刻。
人类能反杀计算机并不是因为“深蓝”这个AI不够“聪明”,而是因为它受到当时设备水平的约束限制,运算能力不足以支撑国际象棋的知识表示。对于国际象棋的棋谱,我们一般会用离散数学中的一个叫做博弈树(GameTree)的经典模型作为它的知识表示,再将其转化为计算机编码。
图2国际象棋博弈树模型示例图
一个棵博弈树对应一局棋局,包括每一个棋步及其后续对弈的情况,因此这种博弈树的规模往往比较庞大。设想一下,如果你下了一步棋后,对方有八招可以应对,那么此时博弈树就有8个分支;对方选取八招之一应对后,每一招你可能有至少五招应对,也就是那么博弈树至少有8×5=40种分支的可能;然后针对你的棋步,对方又有多招应对,接着乘下去,这可能出现的棋局将是一个指数级的组合,因此计算量特别大。然而,那时当时最好的计算机的计算能力甚至比不上现在的一个智能手表,远远达不到国际象棋的知识表示的需求。在这种情况下,我们可以合理猜测,在第一局中,卡斯帕罗夫在第一局中失败的原因可能是轻敌了,而到了第二局,卡斯帕罗夫,他开始认真集中精神对战,AI就却由于算力不足而“思虑不周”,在人类面前节节败退。
图3AlphaGo与围棋世界冠军李世石对弈实况图
至此,大家可能会想:AlphaGo之所以表现出色,是不是因为它真的比“深蓝”聪明很多?其实,从知识表示的角度来说,围棋棋谱的知识跟国际象棋棋谱的知识在模型表示上具有共通性,它们本质上都可以用博弈树进行建模。但是相比与国际象棋相比,围棋棋盘更大,棋步的排列组合数量更多,这使得其博弈树模型的规模更大,所以在这数据计算和存储方面AlphaGo会遇到比“深蓝”更大的困难。但AlphaGo诞生的时代是于“深蓝”问世近20年后,此时已经出现了算力非常强大的超级计算机与廉价的海量存储,这为AlphaGo的搜索能力提供了重要的高性能设备支持。此外,随着5G时代的到来,通讯手段的增强也为AlphaGo的下棋思路提供了强大的技术支持。但实际上,AlphaGo在知识表示上并没有太大的突破,算法本质上还是依托博弈树模型的思想,主要是算力的突破将使AlphaGo它取得了推向了最终的成功。即便AlphaGo在算法上有所改进,那也是因为算力不同,就像做菜一样,原材料和厨具不同,做菜的条件发生改变,烹饪的手法自然也会产生变化。
图4《人类灭亡报告书》电影剧照图
我们先不说AI能超过人类的可能性有多大,而是就只是聚焦当下,看看AlphaGoZero到底做了些什么。要想知道AlphaGoZero做了些什么,还要从AlphaGo说起。AlphaGo利用数据驱动的方式,通过训练可以得到一棵博弈树,它是一个离散数学里的图(Graph)的模型,该模型包含节点、边、权重的计算关系。图的模型在计算机中常用的表示方法有邻接表法、矩阵表示法、链表法等,其中邻接表法的实现包括线性表和数组两种形式。总之,AlphaGo是用数据结构将棋步知识编码到计算机中的。而AlphaGoZero虽然没有训练数据,但它能提供一个方法让计算机生成一个图的模型,并且能够把这个图的模型编码到计算机里。两者相比,AlphaGo是通过数据驱动去得到一个模型,而AlphaGoZero是通过自动生成去得到一个模型。
大家可能会问:如何实现自动生成是如何实现的呢怎么做?计算机中有一个名为搜索算法的技术。一般来说,搜索算法技术需要一个评估目标,即搜索结果。对于一个图的模型,搜索算法主要是搜索图的节点、边和权重,这是它是一个比较复杂的组合优化问题。组合优化问题中都会有一个目标函数,。AlphaGoZero中的目标函数是一个小型的验证数据集,比如AlphaGo的用过的数据集,即用数据来测试计算机搜索得到的模型的好坏。从机器学习角度来说,这不叫训练,但其实它跟为数据标记正确答案和错误答案,然后拿去训练的本质是相同的。这有点像我们去找东西或者做东西的时候,每做一个方案就拿回来给人家评价一下是好还是不好。
图5包含AlphaGoZero的《Nature》杂志示意图
AlphaGoZero本质上就是以搜索算法或者优化算法的方式,利用计算机自动生成和AlphaGo类似的博弈树图模型。假设AlphaGo是用一亿个棋局的数据训练出来的,那么AlphaGoZero可以在AlphaGo搜索结果的基础上,通过自动搜索得到更多的图模型的组合,除非理论上AlphaGo的图模型已经是最优的图模型,即它可以在世界上所有的棋局中取胜。但很显然,棋局的排列组合方案的数目是一个超出个人类没有办法计算能力之外算完的天文数字,这一亿个棋局远远不能代表全部的棋局。而AlphaGoZero可以用搜索算法的方式搜索到AlphaGo通过数据学不到的东西,这个技术在现在的机器学习领域被称为神经架构搜索(NeuralArchitectureSearch,NAS)技术。AlphaGoZero的成功,本质上是用计算机去搜索更优的知识表示编码,例如树的结构和图的模型等,还是离不开知识的表示。
然后,我们将目光转向大家所熟知的计算机视觉。计算机视觉是人工智能中非常重要的一个分支,。我们现在使用的人脸识别、图像检测、医学图像分析等都是跟计算机视觉有关的应用。计算机视觉的输入数据一般是图像或者视频,那么如何表征视觉的知识呢?研究者们采用了一种叫分类器的模型,。我们可以把它简单理解成一种复杂的多级的图的模型,它的节点、边和权重都有运算意义,比如说像Adaboost这种级联弱分类器等。
图6AdaBoost算法流程图
机器视觉模型的本质是建立一个图的模型,语音识别也是与之类似。语音识别是一种信号,这种信号的知识表示一般是表示音频的信号和语音字库的一种对应关系,用语言的符号来呈现。语言的符号会涉及另外一个名为自然语言处理的分支,它的知识表示一般采用一些词袋模型、词向量模型等。
图7语音识别示意图
图8蒙面检测示意图
图9烟雾检测示意图
总的来说,知识的表示就是人工智能的本质。无论你是是研究自动推理、深度学习、知识图谱、图模型、神经网络结构还是运算,都是人工智能知识表示的一种方式。从知识的表示的角度去看人工智能来看,人工智能的成功与否其实就在于知识表示的成功与否。
参考文献
[1]SilverD.Silver,J.SchrittwieserJ,K.SimonyanK,etal."MasteringthegameofGowithouthumanknowledge",[J].Nature,vol.550,no.7676,pp.354-359,2017.
2017,550(7676):354-359.
[2]Y.Lin,F.Lv,S.Zhu,etal."Large-scaleimageclassification:FastfeatureextractionandSVMtraining",inProceedingsofComputerVisionPatternRecognition(CVPR),pp.1689-1696,2011.
[3]A.Krizhevsky,I.Sutskever,andG.Hinton."ImageNetclassificationwithdeepconvolutionalneuralnetworks",inProceedingsofNeuralInformationProcessingSystems(NIPS),vol.25,pp.1097-1105,2012.
[4]C.Szegedy,W.Liu,Y.Jia,etal."Goingdeeperwithconvolutions",arXivpreprintarXiv:1409.4842,2014.
[5]K.Simonyan,andA.Zisserman."Verydeepconvolutionalnetworksforlarge-scaleimagerecognition",arXivpreprintarXiv:1409.1556,2014.
[6]K.He,X.Zhang,S.Ren,etal."Delvingdeepintorectifiers:Surpassinghuman-levelperformanceonimagenetclassification",inProceedingsoftheIEEEInternationalConferenceonComputerVision,pp.1026-1034,2015.