《大数据智能》之知识图谱

《大数据智能——互联网时代的机器学习和自然语言处理技术》是一本介绍大数据智能分析的科普书籍,旨在让更多的人了解和学习互联网时代的机器学习和自然语言处理技术,以期让大数据技术更好地为我们的生产和生活服务。通过本篇文章相信您会收获到书中所讲的更多知识图谱的相关内容。

作者:宫载军

知识图谱--机器大脑中的知识库

互联网时代,搜索引擎是人们获取信息和知识的重要工具。用户输入一个查询词,搜索引擎返回与之最相关的网页。从诞生之日起,搜索引擎就是这样的模式。

2012年5月,谷歌首次引入“知识图谱”:用户除了得到搜索网页链接外,还看到与之有关的更加智能化的答案。

从杂乱的网页到结构化的实体知识,搜索引擎利用知识图谱为用户提供更具条理的信息,甚至顺着知识图谱可以探索更深入、广泛和完整的知识体系,让用户发现他们意想不到的知识。

谷歌知识图谱一出激起千层浪,美国的微软必应、中国的百度、搜狗等纷纷宣布了各自的“知识图谱”产品,如百度“知心”、搜狗“知立方”等。

谷歌高级副总裁艾米特·辛格博士一语道破知识图谱的重要意义:“构成这个世界的是实体,而非字符串(things,not strings)”。

知识图谱的典型应用

查询理解(Query Understanding)

谷歌等搜索引擎巨头之所以致力于构建大规模知识图谱,其重要目标之一就是能够更好地理解用户输入的查询词。用户查询词是典型的短文本(short text),往往仅由几个关键词构成。传统的关键词匹配技术没有理解查询词背后的语义信息,查询效果可能会很差。

例如,对于“李娜大满贯”,如果仅用关键词匹配的方式,搜索引擎根本不懂用户到底希望寻找哪个“李娜”,只会机械地返回所有含有这个关键词的网页。但通过识别查询词中的实体及其属性,搜索引擎将能够更好地理解用户搜索意图。现在,我们到谷歌中查询“李娜大满贯”,会发现:

首先谷歌会利用知识图谱在页面右侧呈现网球运动员李娜的基本信息

同时,谷歌不仅像返回匹配的网页,更会直接在页面最顶端返回李娜赢得大满贯的次数

自动问答(Question Answering)

人们一直在探索比关键词查询更高效的互联网搜索方式。很多学者预测,下一代搜索引擎将能够直接回答人们提出的问题,这种形式被称为自动问答。

一个可以理解用户问题,从网络信息中抽取事实,并最终选出一个合适答案的搜索引擎,才能将我们带到信息获取的制高点。目前搜索引擎已经支持对很多查询直接返回精确答案,而非海量网页而已。

知识图谱的重要应用之一就是作为自动问答的知识库。在搜狗推出“知立方”的时候,曾经以回答“梁启超的儿子的太太的情人的父亲是谁?”这种近似脑筋急转弯似的问题作为案例,来展示其知识图谱的强大推理能力。

无论是理解用户查询意图,还是探索新的搜索形式,都毫无例外地需要进行语义理解和知识推理,而这都需要大规模、结构化的知识图谱的有力支持,因此知识图谱成为各大互联网公司的必争之地。

文档表示(Document Representation)

经典文档表示方案已经在实际应用中暴露出很多缺陷,例如无法考虑词汇之间的复杂语义关系,无法处理对短文本(如查询词)的稀疏问题。人们一直在尝试解决这些问题,而知识图谱的出现,为文档表示带来新的希望,那就是基于知识的文档表示方案。一篇文章不再只是由一组代表词汇的字符串来表示,而是由文章中的实体及其复杂语义关系来表示。

一种最简单的基于知识图谱的文档表示方案,可以将文档表示为知识图谱的一个子图,即用文档中出现或涉及的实体及其关系所构成的图表示该文档。这种知识图谱的子图比词汇向量拥有更丰富的表示空间,也为文档分类、文档摘要和关键词抽取等应用提供了更丰富的可供计算和比较的信息。

知识图谱的主要技术

实体链指(Entity Linking)

手工建立实体链接关系非常费力,因此如何让计算机自动实现实体链指,成为知识图谱得到大规模应用的重要技术前提。

实体链指的主要任务有两个,实体识别(Entity Recognition)与实体消歧(Entity Disambiguation),都是自然语言处理领域的经典问题。

关系抽取(Relation Extraction)

构建知识图谱的重要来源之一是从互联网网页文本中抽取实体关系。

典型的开放信息抽取方法采用自举(bootstrapping)的思想,按照“模板生成=>实例抽取”的流程不断迭代直至收敛。例如,最初可以通过“X是Y的首都”模板抽取出(中国、首都、北京)、(美国、首都、华盛顿)等三元组实例;然后根据这些三元组中的实体对“中国-北京”和“美国-华盛顿”可以发现更多的匹配模板,如“Y的首都是X”、“X是Y的政治中心”等等;进而用新发现的模板抽取更多新的三元组实例,通过反复迭代不断抽取新的实例与模板。

我们还可以通过识别表达语义关系的短语来抽取实体间关系。例如,我们通过句法分析,可以从文本中发现“华为”与“深圳”的如下关系:(华为、总部位于、深圳)、(华为、总部设置于、深圳)、以及(华为、将其总部建于、深圳)。通过这种方法抽取出的实体间关系非常丰富而自由,一般是一个以动词为核心的短语。

我们还可以将所有关系看做分类标签,把关系抽取转换为对实体对的关系分类问题。2009年斯坦福大学提出远程监督(Distant Supervision)思想,使用知识图谱中已有的三元组实例启发式地标注训练语料。远程监督思想的假设是,每个同时包含两个实体的句子,都表述了这两个实体在知识库中的对应关系。例如,根据知识图谱中的三元组实例(苹果、创始人、乔布斯)和(苹果、CEO、库克),我们可以将以下四个包含对应实体对的句子分别标注为包含“创始人”和“CEO”关系:

我们将知识图谱三元组中每个实体对看做待分类样例,将知识图谱中实体对关系看做分类标签。通过从出现该实体对的所有句子中抽取特征,我们可以利用机器学习分类模型构建信息抽取系统。对于任何新的实体对,根据所出现该实体对的句子中抽取的特征,我们就可以利用该信息抽取系统自动判断其关系。

知识推理(Knowledge Reasoning)

推理能力是人类智能的重要特征,能够从已有知识中发现隐含知识。推理往往需要相关规则的支持,例如从“配偶”+“男性”推理出“丈夫”,从“妻子的父亲”推理出“岳父”,从出生日期和当前时间推理出年龄,等等。

这些规则可以通过人们手动总结构建,但往往费时费力,人们也很难穷举复杂关系图谱中的所有推理规则。因此,很多人研究如何自动挖掘相关推理规则或模式,目前主要依赖关系之间的同现情况,利用关联挖掘技术来自动发现推理规则。

实体关系之间存在丰富的同现信息。如下图所示,在康熙、雍正和乾隆三个人物之间,我们有(康熙、父亲、雍正)、(雍正、父亲、乾隆)以及(康熙、祖父、乾隆)三个实例。根据大量类似的实体X、Y、Z间出现的(X、父亲、Y)、(Y、父亲、Z)以及(X、祖父、Z)实例,我们可以统计出“父亲+父亲=>祖父”的推理规则。

知识表示(Knowledge Representation)

在计算机中如何对知识图谱进行表示与存储,是知识图谱构建与应用的重要课题。

如“知识图谱”字面所表示的含义,人们往往将知识图谱作为复杂网络进行存储,这个网络的每个节点带有实体标签,而每条边带有关系标签。

然而,这种基于网络的表示方法面临很多困难。首先,该表示方法面临严重的数据稀疏问题,对于那些对外连接较少的实体,一些图方法可能束手无策。此外,图算法往往计算复杂度较高,无法适应大规模知识图谱的应用需求。

最近,伴随着深度学习和表示学习的革命性发展,研究者也开始探索面向知识图谱的表示学习方案。其基本思想是,将知识图谱中的实体和关系的语义信息用低维向量表示,这种分布式表示(Distributed Representation)方案能够极大地帮助基于网络的表示方案。

前景与挑战

如果未来的智能机器拥有一个大脑,知识图谱就是这个大脑中的知识库,对于大数据智能具有重要意义。

可以看到,在未来的一段时间内,知识图谱将是大数据智能的前沿研究问题,有很多重要的开放性问题亟待学术界和产业界协力解决。我们认为,未来知识图谱研究有以下几个重要挑战。

知识类型与表示

知识图谱主要采用(实体1、关系、实体2)三元组的形式来表示知识,这种方法可以较好地表示很多事实性知识。然而,人类知识类型丰富多样,面对很多复杂知识,三元组就束手无策了。

有很多学者针对不同场景设计了不同的知识表示方法。知识表示是知识图谱构建与应用的基础,如何合理设计表示方案,更好地涵盖人类不同类型的知识,是知识图谱的重要研究问题。

知识获取

如何从互联网大数据萃取知识,是构建知识图谱的重要问题。

目前已经提出各种知识获取方案,并已经成功抽取出大量有用的知识。但在抽取知识的准确率、覆盖率和效率等方面,都仍不尽如人意,有极大的提升空间。

知识融合

从不同来源数据中抽取的知识可能存在大量噪声和冗余,或者使用了不同的语言。如何将这些知识有机融合起来,建立更大规模的知识图谱,是实现大数据智能的必由之路。

知识应用

目前大规模知识图谱的应用场景和方式还比较有限,如何有效实现知识图谱的应用,利用知识图谱实现深度知识推理,提高大规模知识图谱计算效率,需要人们不断发掘用户需求,探索更重要的应用场景,提出新的应用算法。

这既需要丰富的知识图谱技术积累,也需要对人类需求的敏锐感知,找到合适的应用之道。

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171221A0PSBF00?refer=cp_1026

扫码关注云+社区