AI TIME欢迎每一位AI爱好者的加入!
近年来,知识图谱问答任务取得较大进展,但当问题变得复杂,涉及多个实体的比较和推理时,机器尚不能很好地解答。如何让机器像人类一样学会推理,从而处理复杂问题,是当前的一个研究热点和难点。AI TIME PhD 知识图谱专题第三期,清华大学计算机系、知识工程实验室的博士四年级研究生史佳欣,将结合知识图谱推理问答的数据集,为大家梳理主流的研究方法,分析各种方法的优缺点,并对将来的研究工作作出展望。
一、什么是推理问答
知识图谱推理问答要求计算机根据给定的知识图谱,处理实体之间的多跳、比较、集合操作等复杂问题。相较于简单问答只涉及单个实体和单个关系,推理问答的问题相对复杂,常常涉及多个实体,多个关系,多跳,比较等。简单问答,例如中国的首都是哪里?而推理问答,中国的首都和美国的首都,哪个人口更多?
简单问答只需要识别出问题中的实体和关系,链接到知识图谱中,即可查出答案。推理问答则要求计算机具备多种推理能力,具体包括:(1)处理多跳关系的能力,如“姚明的妻子的学校”;(2)数值比较的能力,如“哪个城市的人口更多”;(3)集合操作的能力,如“即是篮球运动员,又是球队老板的人有哪些”。
二、知识图谱推理问答的数据集
数据集是推理问答的基础,在本次分享中,讲者主要为大家总结了如图一所示的4个常用推理问答数据集,并从所用知识库、知识类型、问题数量、自然语言、SPARQL共5个角度加以对比。
图一 4个常用数据集对比
现有知识库主要有三种知识类型:①关系型,如(“姚明”,“出生于”,“上海”);②属性型,如(“姚明”,“身高”,“ 229 厘米”);③事实型,用于表示一个关系型事实或属性型事实的知识,如((“上海”,“人口”,“23,390,000”),“统计时间”,“2016”)。在提到的4个数据集中,MetaQA 和 CSQA 仅考虑关系型知识。
但现有数据集存在一个共同的问题,都缺乏推理过程,只给出复杂的问题以及对应的答案,没有问题解答过程。回想人类是如何学习解答复杂问题的,都是先学会解答简单问题,再学会将复杂问题分解为简单问题的组合。如果数学老师只讲答案,那么应该大部分学生都无法掌握解答问题的能力。可见问题中间的解答步骤是必要的,对于机器来说亦是如此。
基于以上考虑,清华大学知识工程实验室构造了一个新的数据集——KQA Pro,可提供之前数据集都不具备的推理过程。图二是KQA Pro数据集与之前提到4个数据集的对比情况,清楚明了地展示了其属性特征。
图二 KQA Pro与其他数据集的对比
为表示推理过程,KQA Pro