我们可能已经了解了很多机器学习和深度学习的算法,但是那似乎离我们心中的 “人工智能” 还很遥远。我们训练的模型,更像是一个具有统计知识的机器,从关联和概率的角度出发,试图在描述世界背后的 “真理”。然而,我们更希望的是,像人一样,具有分析和推理能力的机器智能。如果你问我,哪一种形式最接近我心中的 “人工智能”,我会说:知识图谱。
今天,就让我们来解决一个问题:什么是知识图谱?
知识图谱 “考古史”
2012 年 5 月 17 日,Google 正式提出了知识图谱(Knowledge Graph)的概念,其初衷是为了优化搜索引擎返回的结果,增强用户搜索质量及体验。
假设我们想知道 “王健林的儿子” 是谁,百度或谷歌一下,搜索引擎会准确返回王思聪的信息,说明搜索引擎理解了用户的意图,知道我们要找 “王思聪”,而不是仅仅返回关键词为 “王健林的儿子” 的网页:
编者按:知乎文章《为什么需要知识图谱?什么是知识图谱?——KG的前世今生》是一个很好的入门文章,感兴趣可以进一步阅读:https://zhuanlan.zhihu.com/p/31726910 。《知识图谱的技术与应用(18版)》是一个更为全面和详细的介绍,https://zhuanlan.zhihu.com/p/38056557 。
实际上,知识图谱并不是一个全新的概念,早在 2006 年就有文献提出了语义网(Semantic Network)的概念,呼吁推广、完善使用本体模型来形式化表达数据中的隐含语义,RDF(resource description framework,资源描述框架)模式和 OWL(Web ontology language,万维网本体语言)就是基于上述目的产生的。用电子科技大学徐增林教授的论文原文来说:
知识图谱技术的出现正是基于以上相关研究,是对语义网标准与技术的一次扬弃与升华。
目前,随着智能信息服务应用的不断发展,知识图谱已广泛应用于智能搜索,智能问答,个性化推荐等领域。
知识图谱定义
知识图谱,本质上,是一种揭示实体之间关系的语义网络。
如果你看过网络综艺《奇葩说》第五季第17期:你是否支持全人类一秒知识共享,你也许会被辩手陈铭的辩论印象深刻。他在节目中区分了信息和知识两个概念:
- 信息是指外部的客观事实。举例:这里有一瓶水,它现在是7°。
- 知识是对外部客观规律的归纳和总结。举例:水在零度的时候会结冰。
“客观规律的归纳和总结” 似乎有些难以实现。Quora 上有另一种经典的解读,区分 “信息” 和 “知识” 。
有了这样的参考,我们就很容易理解,在信息的基础上,建立实体之间的联系,就能行成 “知识”。当然,我认为叫事实(Fact)更为合适。换句话说,知识图谱是由一条条知识组成,每条知识表示为一个SPO三元组(Subject-Predicate-Object)。
知识图谱实际上就是如此工作的。曾经知识图谱非常流行自顶向下(top-down)的构建方式。自顶向下指的是先为知识图谱定义好本体与数据模式,再将实体加入到知识库。该构建方式需要利用一些现有的结构化知识库作为其基础知识库,例如 Freebase 项目就是采用这种方式,它的绝大部分数据是从维基百科中得到的。
然而目前,大多数知识图谱都采用自底向上(bottom-up)的构建方式。自底向上指的是从一些开放链接数据(也就是 “信息”)中提取出实体,选择其中置信度较高的加入到知识库,再构建实体与实体之间的联系。
知识图谱的体系架构
知识图谱的架构主要包括自身的逻辑结构以及体系架构,
知识图谱在逻辑结构上可分为模式层与数据层两个层次,数据层主要是由一系列的事实组成,而知识将以事实为单位进行存储。如果用(实体1,关系,实体2)、(实体、属性,属性值)这样的三元组来表达事实,可选择图数据库作为存储介质,例如开源的 Neo4j、Twitter 的 FlockDB、JanusGraph 等。模式层构建在数据层之上,主要是通过本体库来规范数据层的一系列事实表达。本体是结构化知识库的概念模板,通过本体库而形成的知识库不仅层次结构较强,并且冗余程度较小。
知识图谱的体系架构是指其构建模式的结构,如下图所示:
大规模知识库的构建与应用需要多种智能信息处理技术的支持。通过知识抽取技术,可以从一些公开的半结构化、非结构化的数据中提取出实体、关系、属性等知识要素。通过知识融合,可消除实体、关系、属性等指称项与事实对象之间的歧义,形成高质量的知识库。知识推理则是在已有的知识库基础上进一步挖掘隐含的知识,从而丰富、扩展知识库。分布式的知识表示形成的综合向量对知识库的构建、推理、融合以及应用均具有重要的意义。
知识抽取
知识抽取主要是面向开放的链接数据,通过自动化的技术抽取出可用的知识单元,知识单元主要包括实体(概念的外延)、关系以及属性3个知识要素,并以此为基础,形成一系列高质量的事实表达,为上层模式层的构建奠定基础。知识抽取有三个主要工作:
- 实体抽取:在技术上我们更多称为 NER(named entity recognition,命名实体识别),指的是从原始语料中自动识别出命名实体。由于实体是知识图谱中的最基本元素,其抽取的完整性、准确、召回率等将直接影响到知识库的质量。因此,实体抽取是知识抽取中最为基础与关键的一步;
- 关系抽取:目标是解决实体间语义链接的问题,早期的关系抽取主要是通过人工构造语义规则以及模板的方法识别实体关系。随后,实体间的关系模型逐渐替代了人工预定义的语法与规则。
- 属性抽取:属性抽取主要是针对实体而言的,通过属性可形成对实体的完整勾画。由于实体的属性可以看成是实体与属性值之间的一种名称性关系,因此可以将实体属性的抽取问题转换为关系抽取问题。
知识表示
近年来,以深度学习为代表的表示学习技术取得了重要的进展,可以将实体的语义信息表示为稠密低维实值向量,进而在低维空间中高效计算实体、关系及其之间的复杂语义关联,对知识库的构建、推理、融合以及应用均具有重要的意义。一直在关注我们公众号的朋友肯定阅读过上一篇博文,graph embedding 就是一种表示学习。
知识融合
由于知识图谱中的知识来源广泛,存在知识质量良莠不齐、来自不同数据源的知识重复、知识间的关联不够明确等问题,所以必须要进行知识的融合。知识融合是高层次的知识组织,使来自不同知识源的知识在同一框架规范下进行异构数据整合、消歧、加工、推理验证、更新等步骤,达到数据、信息、方法、经验以及人的思想的融合,形成高质量的知识库。
其中,知识更新是一个重要的部分。人类的认知能力、知识储备以及业务需求都会随时间而不断递增。因此,知识图谱的内容也需要与时俱进,不论是通用知识图谱,还是行业知识图谱,它们都需要不断地迭代更新,扩展现有的知识,增加新的知识。
知识图谱应用
知识图谱为互联网上海量、异构、动态的大数据表达、组织、管理以及利用提供了一种更为有效的方式,使得网络的智能化水平更高,更加接近于人类的认知思维。
智能搜索
如同我们在开篇介绍的例子,用户的查询输入后,搜索引擎不仅仅去寻找关键词,而是首先进行语义的理解。比如,对查询分词之后,对查询的描述进行归一化,从而能够与知识库进行匹配。查询的返回结果,是搜索引擎在知识库中检索相应的实体之后,给出的完整知识体系。
深度问答
问答系统是信息检索系统的一种高级形式,能够以准确简洁的自然语言为用户提供问题的解答。多数问答系统更倾向于将给定的问题分解为多个小的问题,然后逐一去知识库中抽取匹配的答案,并自动检测其在时间与空间上的吻合度等,最后将答案进行合并,以直观的方式展现给用户。
苹果的智能语音助手 Siri 能够为用户提供回答、介绍等服务,就是引入了知识图谱的结果。知识图谱使得机器与人的交互,看起来更智能。
社交网络
Facebook 于 2013 年推出了 Graph Search 产品,其核心技术就是通过知识图谱将人、
地点、事情等联系在一起,并以直观的方式支持精确的自然语言查询,例如输入查询式:“我朋友喜欢的餐厅”“住在纽约并且喜欢篮球和中国电影的朋友”等,知识图谱会帮助用户在庞大的社交网络中
找到与自己最具相关性的人、照片、地点和兴趣等。Graph Search 提供的上述服务贴近个人的生活,满足了用户发现知识以及寻找最具相关性的人的需求。
垂直行业应用
从领域上来说,知识图谱通常分为通用知识图谱和特定领域知识图谱。
在金融、医疗、电商等很多垂直领域,知识图谱正在带来更好的领域知识、更低金融风险、更完美的购物体验。更多的,如教育科研行业、图书馆、证券业、生物医疗以及需要进行大数据分析的一些行业。这些行业对整合性和关联性的资源需求迫切,知识图谱可以为其提供更加精确规范的行业数据以及丰富的表达,帮助用户更加便捷地获取行业知识。
总结
从技术来说,知识图谱的难点在于 NLP,因为我们需要机器能够理解海量的文字信息。但在工程上,我们面临更多的问题,来源于知识的获取,知识的融合。搜索领域能做的越来越好,是因为有成千上万(成百万上亿)的用户,用户在查询的过程中,实际也在优化搜索结果,这也是为什么百度的英文搜索不可能超过 Google,因为没有那么多英文用户。知识图谱也是同样的道理,如果将用户的行为应用在知识图谱的更新上,才能走的更远。
知识图谱肯定不是人工智能的最终答案,但知识图谱这种综合各项计算机技术的应用方向,一定是人工智能未来的形式之一。
References
- 知识图谱技术综述,徐增林等,电子科技大学学报,http://ir.sdu.edu.cn/~zhuminchen/KG/xuzenglin2016.pdf
- 知乎文章:为什么需要知识图谱?什么是知识图谱?——KG的前世今生,作者:SimmerChan,https://zhuanlan.zhihu.com/p/31726910
- 知乎文章:把知识变成图谱一共需要花几步?89页全网最全清华知识图谱报告,作者:智东西,https://zhuanlan.zhihu.com/p/56903119
- 知乎文章:知识图谱-从入门到跑路(1),作者:cavities,https://zhuanlan.zhihu.com/p/62824358
- 知乎答案:知识图谱的构建流程?,作者:Hooke,https://www.zhihu.com/question/299907037/answer/519394870
- 知乎答案:知识图谱的构建流程? ,作者: 陈运文,https://www.zhihu.com/question/299907037/answer/537482952
- 知识图谱的应用 - 李文哲的文章 - 知乎,https://zhuanlan.zhihu.com/p/20394260
- 鲍捷:知识图谱在金融领域的发展与应用 - 鲍捷的文章 - 知乎,https://zhuanlan.zhihu.com/p/27995887
- 知识图谱的技术与应用(18版) - 李文哲的文章 - 知乎,https://zhuanlan.zhihu.com/p/38056557