背景
9月11日,习近平总书记在京主持召开科学家座谈会并发表重要讲话,提出“希望广大科学家和科技工作者肩负起历史责任,坚持面向世界科技前沿、面向经济主战场、面向国家重大需求、面向人民生命健康,不断向科学技术广度和深度进军。”
为了帮助青年科学家与青年企业家加强沟通、凝聚共识以应对挑战,9月25日,2020年中国科技峰会系列活动的青年科学家沙龙推出最新一期—“AI学术生态与产业创新”。
活动伊始,清华大学计算机系长聘教授、计算机系副主任、清华-工程院知识智能联合实验室主任唐杰教授以“认知推理:AI的下一个浪潮”为题做了主题报告,详细介绍了AI的发展历史、认知智能的现状及发展方向、第三代AI、意识AI等重磅前沿领域的发展,本文是AI Time对报告主要内容的简单整理,如果想要观看完整的视频报告,请在B站关注“AI Time论道”,我们已经将活动视频上传。
什么是认知智能
为了帮助大家理解什么是认知智能、认知图谱,首先用一个例子进行了说明。
假如我们要解决一个问题“哪个导演于2003年在洛杉矶的Quality咖啡馆拍过电影(Who is the director of the 2003 film which has scenes in it filmed at The Quality Cafe in Los Angeles)”,人类可能是先搜索相关的文档(如Quality咖啡馆、洛杉矶的相关文档等),从中找到相关的电影(如Old School),在电影的介绍文档里面进一步找到该电影的导演Todd Phillips,经过比对电影的拍摄时间(2003年),最终确定答案是Todd Phillips,具体流程如下图所示。
大家可以看到,人类的大脑在思考问题、追寻答案的过程中其实有几个过程:(1)根据问题解读其中的关键信息;(2)做出判断。如果是答案正确,整个推理引擎会输出最终的答案;如果答案不正确,整个过程会继续。这就是一个经典的带推理的过程。
对于这类问题,机器该怎么做?传统的方法是会用BERT或者XLNet这样的相关模型做预训练,训练完成以后,我们会简化复杂的问题。这样的话,我们给定一个问题以后就可以直接在长文档中进行匹配,然后找到最终答案并进行输出。
但是,这样的过程其实缺乏可解释性,我们把整个回答问题的过程中变成了一个黑盒子,人很难理解整个过程中输出的一些结果。
对此,最近也有很多相关的文章试图把知识概念融入到类似BERT或者XLNet这样的预训练模型中,或者将知识图谱或者知识概念(包括逻辑推理)的一些信息融入到这些识别中。
总体来说,我们可以用图灵奖获得者Yoshua Bengio于2019年在NeurIPS大会中的主旨报告来总结:所有的这些模型都属于人脑认知中的System 1,也就是系统一的感知过程。
在人脑的认知过程中,包括系统一和系统二,系统一更多的是做一个快速的、直觉的、无意识的匹配,给定一个问题时,系统一直接匹配相关的一些答案,并且把这个答案直接输出出来。这些答案的匹配缺乏推理过程,而且直接用习惯性的结果进行匹配,目前的深度学习做的更多的是这种匹配。
但是,其实人脑认知还有一个叫System 2的过程。System 2相对比较慢,没有System 1的快速的匹配过程,但它里面带有更多的逻辑推理和序列推理的过程,我们把它叫作一个有意识的带规划、带认知的一个过程。这也是Bengio提倡的:希望深度学习模型在未来更多地朝着认知、推理来做。
认知图谱的理论基础
有了此背景,我们重新思考一下刚才的推理过程。假如我们用System 2(认知过程)来做,这个过程应该怎么做呢?
我们可以把这个问题跟人的认知过程进行匹配。前面提到了人类认知的双通道过程,与之对应的,认知科学中还存在双通道理论,即人有两个系统:System 1、System 2。基于此知识,我们在求解过程中用System 1模拟知识扩展过程,即找到关键信息,并对关键信息进行直觉扩展;然后把System 2变成一个决策过程,即判断信息是不是我们需要的。具体如下图所示。
下面我们解释一下怎么用System 1和System 2来求解问题。我们把这个工具叫作认知图谱(Cognitive Graph)。
对于刚才的问题,认知图谱更加像一个迭代的过程,它里面有两个系统:一个系统对应System 1,它会抽出里面几个关键词,从外部资源中找到相关的信息,再从里面抽取出重要的信息;另一个系统对应System 2,它会判断抽取的信息是否有用,或者本身就是最终的答案。如果不是答案,但有用,System 2就会把这些相关的信息放到System 1中,而System 1会继续做这种扩展,System 2会继续做判断,最终输出我们要的答案,结束整个推理过程就,如下图所示。
对System 1,可以用原来已有的机器学习的模型,如BERT、XLNet、GPT-3等,先做一个预训练,然后在预训练模型的基础上做一个匹配,最后直接从匹配的结果来做这样的知识的扩展。
有了System 1以后,可以参考人类的推理过程做System 2。人在拿到相关的信息以后会把这些信息建造成一个知识网络,然后在知识网络的基础上做决策,发现最终要的答案。在这样的思路上,我们可以用图神经网络对所有的信息进行建模,然后决策、判断得到的信息是不是我们所要的。
用认知图谱解决问题的具体过程
对于System 1,我们就直接用BERT来实现,如下图所示。
对于System 2,我们直接用图神经网络把System 1输出的最相关的信息构造成一个网络,然后基于每个NTT的上下文信息来做决策,如下图所示。
为了验证效果,我们参加了HotpotQA这个多跳、带推理的竞赛。大概在2019年2月份到5月份,我们通过把 BERT和图神经网络结合起来构造一个双通道的认知过程,最终效果相比于使用BERT的系统提高了50%,如下图所示。我们开放了相关代码,感兴趣的读者可以尝试。
更有意思的是我们发现这个模型的推理能力很强,它可以在多跳的方面取得相对于传统方法更大的优势,如果用传统的方法且跳数(特别是推理的跳数)特别少时,传统的方法跟我们的方法相差不是特别大,但是如果推理过程、跳数很多时,我们的方法相对于传统的方法的优势就非常加明显。
此外,还有一个很重要的效果:这个方法对于传统的方法可以有很强的可解释性。如针对下面的问题,整个模型可以输出一个推理的数出来,这个推理数既可能包含这个事实,也可能包含在推理过程中可能得到的一些不正确的答案,比如说这里包含120。所以大家可以看到在这个过程中系统带有很强的可解释性,我们把它叫做推理链的过程。这时候这个用户可以把推理过程中正确答案、可能错误的答案(次优答案)进行对比。因为人在认知的过程中并不是每一次决策一定要选最优的,所以整个推理过程对整个人的认知和后续的作用是非常有用的。
当然,推理过程其实还可以有效的帮助后续的预测,比如说假如我们没有做任何推理,而是直接用第一个信息来做推理的话,可能很难判断。但是通过一层推理拿了更多信息以后,我们可以构造出一个图神经网络,这时候我们就有可能很精准地判断出最重要的答案。所以,可以看到图神经网络还可以给出更多的信息,使得我们在推理的过程中有了更多的信息,从而提高了推理的精度,这是另外一方面的优势。
还有一个优势就是在推理过程中加上这个模型以后,我们可以做反馈、做错误纠正。比如说这个问题其实是真实的一个例子,我们在这个过程中发现推理出来的结果其实是不对的,这个时候可以通过这个模型给出一个可解释性的推理路径。最后,大家可以看到在整个推理路径中看到哪些因素导致推理错误,哪些是最终使得我们推理得到目前结果的关键信息,这个时候用户可以通过这样的一个推理路径来识别和判断产生推理错误的原因。
关于认知图谱的小结
总结来看,整个模型有几个很重要的信息:
1、它其实是一个迭代的框架,它里面包含两个过程,一个是叫作System 1的信息扩展或者信息匹配的过程,另一个是叫作System 2的带决策和推理的过程。
2、它最大的优势是可以从外面不断的获取新的信息,有很强的可解释性。
3、它利用了双通道理论中的System 2的推理过程,从感知过程推进到了认知过程。
这样的过程是不是只能在QA这个问题上用?答案是否定的。因为人的认知推理并不是简单的只是在QA上体现,所以这个模型是通用的,我们也在其他很多应用上进行了尝试,比如说知识图谱的扩展。
这个是不是只能做问答?也不是。它既可以做问答,也可以做知识图谱的补齐,下图左边是一个知识图谱,右边是基于刚才的模型来做知识图谱的一个补齐,这是一个基本的一个思路。整个认知图谱破有很多相关的一些应用,在我们后续中可以大量的进行使用。
AI的下个十年
我们非常有信心认为认知图谱就是AI下个十年非常重要的过程。如果追溯AI的发展历史,会发现AI的发展包括计算机的整个发展历程,从早期的以存储和计算为主发展到了当下以感知为主。比如,如果给定一个文本,我们可以快速知道文本中相关内容到底有什么样的语义信息等,但是,目前的感知都缺少认知。
认知的第一个要素是能够组织和生成知识,这是非常重要的一个内容。但是目前的认知智能还缺少推理过程,有些同学也许会讲GPT-3目前其实已经体现了一定的推理过程,但其实它离人的推理过程还差得很远。因此,AI发展的下一步的关键也就是认知,怎么把AI从感知推进到认知是目前一个非常重要的发展趋势。
如果我们再回顾一下整个机器学习的发展历程,会梳理出下图所示的内容。
从机器学习发展历程的几个重要的里程碑来看,可以看到基于BERT的预训练模型,其实把机器学习从传统的有监督学习、无监督学习、强化学习这样的模型推到了一个新的高度,也就是通过在大规模数据、大算力的基础上预训练完了以后,可以把它微调到很多子任务上,在子任务上可以不再进行大规模训练就得到很好的效果。这是一个非常重要的一个进展。
最近在图形上还有一些自监督学习,比如何恺明等人在2019年提出的MoCo,这时候自监督模型的分类结果可能比有监督学习的结果还要好。
我们在这个idea的基础上做了图形化数据的直接学习,这是我们今年做的一个工作。我们给定一个图、一个网络以后,可以在网络的基础上自动找到网络的正例,比如说对于当前节点可以通过一个随机游走找到一个子图,我们把它叫作查询子图,同时在这个节点上再做一次随机游走,这时候肯定会找到另外一个不相关、不完全一样、但是跟刚才的子图非常相似的子图,我们把两个字图匹配形成的度叫作正力度。同时,我们在网络中随机找到另外一个节点,然后从这个节点上随机做一个子图的随机游走,这时候形成了另外一个子图和查询子图,形成匹配,我们就这个叫做负力。通过正力、负力,我们就可以做一个对比学习。最终我们通过这样的方法就可以构造一个图形化数据的自监督学习模式,这样的模型就可以大大增强认知推理过程中System 1快速匹配的过程。
当然,在刚才讲的认知推理过程中,System 2的认知推理过程还有所欠缺。用图神经网络来实现整个过程还是缺少推理过程,它更多地表现出的是决策过程,这是下一步研究应该重点关注的东西。
第三代AI
如果回顾一下AI的几个阶段,会发现:
第一代的符号AI在当时构造了符号模型、规则模型和感知机。
第二代AI更多的是做感知智能,通过在大数据上做统计学习。目前我们初步实现了这种感知智能和识别,这都是System 1做的事情。
在此背景下,张钹院士在2016年提出了第三代AI的雏形,当时的思想把数据和知识推理两个融合起来,与人脑认知融合起来,来做下一代的AI。目前急缺的是高质量的超大规模的知识图谱(其实也是一个AI的基础设施),以及面向已经面向知识的一个理解能力(面向认知的深度学习算法)。
那么,AI未来更多地要做什么呢?在国际上,Yoshua Bengio及DeepMind等在推动怎么把认知的过程跟深度学习结合起来做下一代的AI。一个很简单的思路是把原来的符号系统跟深度学习结合起来,这是超越深度学习的一个最简单的思路。这个空间非常大,它里面要研究的东西也非常多,我们也需要在里面做更深层次的一些相关的研究。
下一个十年AI最重要的一个方向就是做认知推理,它是实现大数据到知识、到智能的一个关键,这也是实现之前知识工程两个最有代表性的图灵奖获得者推崇的从知识到智能的一个关键的转变。
而30年以后的挑战,应该是让计算机具有自我意识,我们称其为意识AI。这里面推崇的核心内容是把认知推理跟人的记忆模型、计算机的自我意识联合起来,他其实联合了认知心理学中的全局工作理论(GWT),我把他的整个思想做了一个解读,具体如下图所示。
这其实相当于用计算机模拟了人的全局工作理论的过程。这个方面其实还在进行很多相关的一些研究,还没有真正输出一个很有意思的最终的结果。这个方面大家如果有兴趣,也可以加入这方面的研究,来一起做相关的一些探索。
最后,我们最近也有一些相关的Paper,大家当然如果有兴趣的话,也可以看看。
本次活动由中国科学技术协会主办,清华大学计算机系、AI TIME、智谱·AI承办,并得到了清华-中国工程院知识智能联合研究中心、清华大学AI研究院、北京市智源AI研究院、阿里巴巴、微众银行、学术头条、学堂在线等组织的大力支持。