知识图谱最早的应用是提升搜索引擎的能力。随后,知识图谱在辅助智能问答、自然语言理解、大数据分析、推荐计算、物联网设备互联、可解释性人工智能等多个方面展现出丰富的应用价值。
1.辅助搜索
互联网的终极形态是万物的互联,而搜索的终极目标是对万物的直接搜索。传统搜索引擎依靠网页之间的超链接实现网页的搜索,而语义搜索是直接对事物进行搜索,如人物、机构、地点等。这些事物可能来自文本、图片、视频、音频、IoT 设备等各种信息资源。而知识图谱和语义技术提供了关于这些事物的分类、属性和关系的描述,使得搜索引擎可以直接对事物进行索引和搜索,如图1-5所示。
图1-5 知识图谱辅助搜索
2.辅助问答
人与机器通过自然语言进行问答与对话是人工智能实现的关键标志之一。除了辅助搜索,知识图谱也被广泛用于人机问答交互中。在产业界,IBM Watson 背后依托 DBpedia和Yago等百科知识库和WordNet等语言学知识库实现深度知识问答。Amazon Alex主要依靠True Knowledge公司积累的知识图谱。度秘、Siri的进化版Viv、小爱机器人、天猫精灵背后都有海量知识图谱作为支撑。
伴随着机器人和 IoT 设备的智能化浪潮的掀起,基于知识图谱的问答对话在智能驾驶、智能家居和智能厨房等领域的应用层出不穷。典型的基于知识图谱的问答技术或方法包括:基于语义解析、基于图匹配、基于模板学习、基于表示学习和深度学习以及基于混合模型等。在这些方法中,知识图谱既被用来辅助实现语义解析,也被用来匹配问句实体,还被用来训练神经网络和排序模型等。知识图谱是实现人机交互问答必不可少的模块。
3.辅助大数据分析
知识图谱和语义技术也被用于辅助进行数据分析与决策。例如,大数据公司 Palantir基于本体融合和集成多种来源的数据,通过知识图谱和语义技术增强数据之间的关联,使得用户可以用更加直观的图谱方式对数据进行关联挖掘与分析。
知识图谱在文本数据的处理和分析中也能发挥独特的作用。例如,知识图谱被广泛用来作为先验知识从文本中抽取实体和关系,如在远程监督中的应用。知识图谱也被用来辅助实现文本中的实体消歧(Entity Disambiguation)、指代消解和文本理解等。
近年来,描述性数据分析(Declarative Data Analysis)受到越来越多的重视。描述性数据分析是指依赖数据本身的语义描述实现数据分析的方法。不同计算性数据分析主要以建立各种数据分析模型,如深度神经网络,而描述性数据分析突出预先抽取数据的语义,建立数据之间的逻辑,并依靠逻辑推理的方法(如DataLog)来实现数据分析。
4.辅助语言理解
背景知识,特别是常识知识,被认为是实现深度语义理解(如阅读理解、人机问答等)必不可少的构件。一个典型的例子是Winograd Schema Challenge(WSC竞赛)。WSC由著名的人工智能专家 Hector Levesque 教授提出,2016年,在国际人工智能大会 IJCAI上举办了第一届WSC竞赛。WSC主要关注那些必须要叠加背景知识才能理解句子语义的NLP任务。例如,在下面这个例子中,当描述it是big时,人很容易理解it指代trophy;而当it与small搭配时,也很容易识别出it指代suitcase。
The trophy would not fit in the brown suitcase because it was too big(small).What was too big(small)?
Answer 0:the trophy Answer 1:the suitcase
这个看似非常容易的问题,机器却毫无办法。正如自然语言理解的先驱 Terry Winograd 所说的,当一个人听到一句话或看到一段句子的时候,会使用自己所有的知识和智能去理解。这不仅包括语法,也包括其拥有的词汇知识、上下文知识,更重要的是对相关事物的理解。
5.辅助设备互联
人机对话的主要挑战是语义理解,即让机器理解人类语言的语义。另外一个问题是机器之间的对话,这也需要技术手段来表示和处理机器语言的语义。语义技术也可被用来辅助设备之间的语义互联。OneM2M 是2012年成立的全球最大的物联网国际标准化组织,其主要是为物联设备之间的互联提供“标准化黏合剂”。OneM2M 关注了语义技术在封装设备数据的语义,并基于语义技术实现设备之间的语义互操作的问题。此外,OneM2M还关注设备数据的语义和人类语言的语义怎样适配的问题。如图1-6所示,一个设备产生的原始数据在封装了语义描述之后,可以更加容易地与其他设备的数据进行融合、交换和互操作,并可以进一步链接进入知识图谱中,以便支持搜索、推理和分析等任务。
图1-6 设备语义的封装
1.4 国内外典型的知识图谱项目从人工智能的概念被提出开始,构建大规模的知识库一直都是人工智能、自然语言理解等领域的核心任务之一。下面分别介绍早期的知识库项目、互联网时代的知识图谱、中文开放知识图谱和垂直领域知识图谱。
1.4.1 早期的知识库项目Cyc 是持续时间最久、影响范围较广、争议也较多的知识库项目。Cyc 最初的目标是要建立人类最大的常识知识库。典型的常识知识如“Every tree is a plant”“Plants die eventually”等。Cyc 知识库主要由术语(Term)和断言(Assertion)组成。术语包含概念、关系和实体的定义。断言用来建立术语之间的关系,既包括事实(Fact)描述,也包含规则(Rule)描述。最新的 Cyc 知识库已经包含有50万条术语和700万条断言。Cyc的主要特点是基于形式化的知识表示方法刻画知识。形式化的优势是可以支持复杂的推理,但过于形式化也导致知识库的扩展性和应用的灵活性不够。
WordNet 是最著名的词典知识库,由普林斯顿大学认知科学实验室从1985年开始开发。WordNet 主要定义了名词、动词、形容词和副词之间的语义关系。例如,名词之间的上下位关系,如“猫科动物”是“猫”的上位词;动词之间的蕴涵关系,如“打鼾”蕴涵着“睡眠”等。
ConceptNet最早源于MIT媒体实验室的OMCS(Open Mind Common Sense)项目。与 Cyc 相比,ConceptNet 采用了非形式化、更加接近自然语言的描述,而不是像 Cyc 一样采用形式化的谓词逻辑。与链接数据和谷歌知识图谱相比,ConceptNet 比较侧重于词与词之间的关系。从这个角度来看,ConceptNet更加接近于WordNet,但是又比WordNet包含的关系类型多。
1.4.2 互联网时代的知识图谱互联网的发展为知识工程提供了新的机遇。在一定程度上,互联网的出现帮助传统知识工程突破了在知识获取方面的瓶颈。从1998年Tim Berners Lee提出语义网至今,涌现出了大量以互联网资源为基础的新一代知识库。这类知识库的构建方法可以分为三类:互联网众包、专家协作和互联网挖掘。
Freebase 是一个开放共享的、协同构建的大规模链接数据库。Freebase 是由硅谷创业公司MetaWeb于2005年启动的一个语义网项目。2010年,谷歌收购了Freebase,并作为其知识图谱数据来源之一。Freebase 主要采用社区成员协作方式构建,主要数据来源包括Wikipedia、世界名人数据库(NNDB)、开放音乐数据库(MusicBrainz)以及社区用户的贡献等。Freebase基于RDF三元组模型,底层采用图数据库进行存储。Freebase的一个特点是不对顶层本体做非常严格的控制,用户可以创建与编辑类和关系的定义。2016年,谷歌宣布将Freebase的数据和API服务都迁移至Wikidata,并正式关闭了Freebase。
DBpedia意指数据库版本的Wikipedia,是早期的语义网项目,是从Wikipedia抽取出来的链接数据集。DBpedia 采用了一个较为严格的本体,包含人、地点、音乐、电影、组织机构、物种、疾病等类定义。此外,DBpedia还与Freebase、OpenCYC、Bio2RDF等多个数据集建立了数据链接。DBpedia采用RDF语义数据模型,总共包含30亿个RDF三元组。
Schema.org是从2011年开始,由Bing、Google、Yahoo和Yandex等搜索引擎公司共同支持的语义网项目。Schema.org支持各个网站采用语义标签(Semantic Markup)的方式将语义化的链接数据嵌入到网页中。搜索引擎自动收集和归集这些数据,快速地从网页中抽取语义化的数据。Schema.org 提供了一个词语本体,用于描述这些语义标签。目前,这个词汇本体已经包含600多个类和900多个关系,覆盖范围包括个人、组织机构、地点、时间、医疗、商品等。谷歌于2015年推出的定制化知识图谱支持个人和企业在其网页中增加包括企业联系方法、个人社交信息等在内的语义标签,并通过这种方式快速汇集高质量的知识图谱数据。谷歌的一份统计数据显示,超过31%的网页和1200万家网站已经使用了 Schema.org 发布语义化的链接数据。其他采用了部分 Schema.org 功能的还包括Cortana、Yandex、Pinterest、Siri 等。Schema.org 的本质是采用互联网众包的方式生成和收集高质量的知识图谱数据。
Wikidata 的目标是构建一个免费开放、多语言、任何人或机器都可以编辑修改的大规模链接知识库。Wikidata 由 Wikipedia 于2012年启动,早期得到微软联合创始人 Paul Allen、Gordon Betty Moore基金会以及谷歌的联合资助。Wikidata继承了Wikipedia的众包协作机制,但与 Wikipedia 不同的是,Wikidata 支持以三元组为基础的知识条目(Item)的自由编辑。一个三元组代表一个关于该条目的陈述(Statement)。例如,可以给“地球”的条目增加“<地球,地表面积是,五亿平方公里>”的三元组陈述。截至2018年,Wikidata已经包含超过5000万个知识条目。
BabelNet 是类似于 WordNet 的多语言词典知识库。BabelNet 的目标是解决 WordNet在非英语语种中数据缺乏的问题。BabelNet采用的方法是将WordNet词典与Wikipedia集成。首先建立 WordNet 中的词与 Wikipedia 的页面标题的映射,然后利用 Wikipedia 中的多语言链接,再辅以机器翻译技术,给 WordNet 增加多种语言的词汇。BabelNet3.7包含了271种语言、1400万个同义词组、36.4万个词语关系和3.8亿个从Wikipedia中抽取的链接关系,总计超过19亿个RDF三元组。BabelNet集成了WordNet在词语关系上的优势和Wikipedia在多语言语料方面的优势,成功构建了目前最大规模的多语言词典知识库。
NELL(Never-Ending Language Learner)是卡内基梅隆大学开发的知识库。NELL主要采用互联网挖掘的方法从Web中自动抽取三元组知识。NELL的基本理念是:给定一个初始的本体(少量类和关系的定义)和少量样本,让机器能够通过自学习的方式不断地从Web中学习和抽取新的知识。目前,NELL已经抽取了300多万条三元组知识。
Yago 是由德国马普研究所研制的链接数据库。Yago 主要集成了 Wikipedia、WordNet和GeoNames三个数据库的数据。Yago将WordNet的词汇定义与Wikipedia的分类体系进行了融合集成,使得 Yago 具有更加丰富的实体分类体系。Yago 还考虑了时间和空间知识,为很多知识条目增加了时间和空间维度的属性描述。目前,Yago包含1.2亿条三元组知识。Yago也是IBM Watson的后端知识库之一。
Microsoft ConceptGraph 是以概念层次体系为中心的知识图谱。与 Freebase 等知识图谱不同,ConceptGraph 以概念定义和概念之间的 IsA 关系为主。例如,给定一个概念“Microsoft”,ConceptGraph返回一组与“微软”有IsA关系概念组“Company”“Software Company”“Largest OS Vender”等,被称为概念化“Conceptualization”。ConceptGraph可以用于短文本理解和语义消歧。例如,给定一个短文本“the engineer is eating the apple”,可以利用ConceptGraph正确理解其中“apple”的含义是“吃的苹果”还是“苹果公司”。微软发布的第一个版本包含超过540万个概念、1255万个实体和8760万个关系。ConceptGraph主要通过从互联网和网络日志中挖掘数据进行构建。
LOD(Linked Open Data)的初衷是为了实现Tim Berners-Lee在2006年发表的有关链接数据(Linked Data)作为语义网的一种实现的设想。LOD 遵循了 Tim 提出的进行数据链接的四个规则,即:使用URI标识万物;使用HTTP URI,以便用户可以(像访问网页一样)查看事物的描述;使用RDF和SPARQL标准;为事物添加与其他事物的URI链接,建立数据关联。LOD 已经有1143个链接数据集,其中社交媒体、政府、出版和生命科学四个领域的数据占比超过了90%。56%的数据集对外至少与一个数据集建立了链接。被链接最多的是 DBpedia 的数据。LOD 鼓励各个数据集使用公共的开放词汇和术语,但也允许使用各自的私有词汇和术语。在使用的术语中,有41%是公共的开放术语。
1.4.3 中文开放知识图谱OpenKG 是一个面向中文域开放知识图谱的社区项目,主要目的是促进中文领域知识图谱数据的开放与互联。OpenKG.CN 聚集了大量开放的中文知识图谱数据、工具及文献,如图1-7所示。典型的中文开放知识图谱数据包括百科类的Zhishi.me(狗尾草科技、东南大学)、CN-DBpedia(复旦大学)、XLore(清华大学)、Belief-Engine(中科院自动化所)、PKUPie(北京大学)、ZhOnto(狗尾草科技)等。OpenKG 对这些主要百科数据进行了链接计算和融合工作,并通过 OpenKG 提供开放的Dump或开放访问API,完成的链接数据集也向公众完全免费开放。此外,OpenKG 还对一些重要的知识图谱开源工具进行了收集和整理,包括知识建模工具 Protege、知识融合工具 Limes、知识问答工具YodaQA、知识抽取工具DeepDive等。
图1-7 OpenKG的主网站
知识图谱 Schema 定义了知识图谱的基本类、术语、属性和关系等本体层概念。cnSchema.ORG是OpenKG发起和完成的开放的知识图谱Schema标准。cnSchema的词汇集包括了上千种概念分类(classes)、数据类型(data types)、属性(propertities)和关系(relations)等常用概念定义,以支持知识图谱数据的通用性、复用性和流动性。结合中文的特点,复用、连接并扩展了 Schema.org、Wikidata、Wikipedia 等已有的知识图谱Schema 标准,为中文领域的开放知识图谱、聊天机器人、搜索引擎优化等提供可供参考和扩展的数据描述和接口定义标准。通过 cnSchema,开发者也可以快速对接上百万基于Schema.org 定义的网站,以及 Bot 的知识图谱数据 API。cnSchema 主要解决如下三个问题:①Bots 是搜索引擎后新兴的人机接口,对话中的信息粒度缩小到短文本、实体和关系,要求文本与结构化数据的结合,要求更丰富的上下文处理机制等,这都需要 Schema的支持;②知识图谱 Schema 缺乏对中文的支持;③知识图谱的构建成本高,容易重新发明轮子,需要用合理的方法实现成本分摊。
OpenBase.AI 是 OpenKG 实现的类似于 Wikidata 的开放知识图谱众包平台。与WikiData 不同,OpenBase 主要以中文为中心,更加突出机器学习与众包的协同,将自动化的知识抽取、挖掘、更新、融合与群智协作的知识编辑、众包审核和专家验收等结合起来。此外,OpenBase 还支持将图谱转化为 Bots,允许用户选择算法、模型、图谱数据等定制生成Bots,即时体验新增知识图谱的作用。
1.4.4 垂直领域知识图谱领域知识图谱是相对于 DBPedia、Yago、Wikidata、百度和谷歌等搜索引擎在使用的知识图谱等通用知识图谱而言的,它是面向特定领域的知识图谱,如电商、金融、医疗等。相比较而言,领域知识图谱的知识来源更多、规模化扩展要求更迅速、知识结构更加复杂、知识质量要求更高、知识的应用形式也更加广泛。如表1-1所示,从多个方面对通用知识图谱和领域知识图谱进行了比较分析。下面以电商、医疗、金融领域知识图谱为例,介绍领域知识图谱的主要特点及技术难点。
表1-1 通用知识图谱与领域知识图谱的比较
1.电商领域知识图谱
以阿里巴巴电商知识图谱为例[27],最新发布的知识图谱规模已达到百亿级别。其知识图谱数据主要以阿里已有的结构化商品数据为基础,并与行业合作伙伴数据、政府工商管理数据、外部开放数据进行融合扩展。在知识表示方面,除简单的三元组外,还包含层次结构更加复杂的电商本体和面向业务管控的大量规则型知识。在知识的质量方面,对知识的覆盖面和准确性都有较高的要求。在应用形式方面,广泛支持商品搜索、商品导购、天猫精灵等产品的智能问答、平台的治理和管控、销售趋势的预测分析等多个应用场景。电商知识也具有较高的动态性特征,例如交易型知识和与销售趋势有关的知识都具有较强的时效性和时间性。
2.医疗领域知识图谱
医疗领域构建有大量的规模巨大的领域知识库。例如,仅 Linked Life Data 项目包含的RDF三元组规模就达到102亿个[3],包含从基因、蛋白质、疾病、化学、神经科学、药物等多个领域的知识。再例如国内构建的中医药知识图谱[28],通常需要融合各类基础医学、文献、医院临床等多种来源的数据,规模也达到20多亿个三元组。医学领域的知识结构更加复杂[29-31],如医学语义网络 UMLS 包含大量复杂的语义关系,GeneOnto[29]则包含复杂的类层次结构。在知识质量方面,特别涉及临床辅助决策的知识库通常要求完全避免错误知识。
3.金融领域知识图谱
金融领域比较典型的例子如 Kensho 采用知识图谱辅助投资顾问和投资研究,国内以恒生电子为代表的金融科技机构以及不少银行、证券机构等也都在开展金融领域的知识图谱构建工作。金融知识图谱构建主要来源于机构已有的结构化数据和公开的公报、研报及新闻的联合抽取等。在知识表示方面,金融概念也具有较高的复杂性和层次性,并较多地依赖规则型知识进行投资因素的关联分析。在应用形式方面,则主要以金融问答和投顾投研类决策分析型应用为主。金融知识图谱的一个显著特点是高度动态性,且需要考虑知识的时效性,对金融知识的时间维度进行建模。
由上面的例子可以看出,如图1-8所示,领域知识图谱具有规模巨大、知识结构更加复杂、来源更加多样、知识更加异构、具有高度的动态性和时效性、更深层次的推理需求等特点。
图1-8 规模化的知识图谱系统工程
文章评论(0条评论)
登录后参与讨论