知识图谱方法。系统阐述知识图谱的发展历史与基本概念,梳理知识图谱全生命周期技术,建立方法论思维。
知识图谱实践。囊括知识表示与建模、知识存储、知识抽取与挖掘、知识融合、知识推理、语义搜索、知识问答等,系统性介绍知识图谱技术。各章节提供典型开源工具实践案例,提供相关工具、实验数据及完整的操作说明。
知识图谱应用。结合电商、图情、生活娱乐、企业商业、创投、中医临床、金融等实际应用场景,详细介绍领域知识图谱的构建方法。
知识图谱是较为典型的多学科交叉领域,涉及知识工程、自然语言处理、机器学习、图数据库等多个领域。《知识图谱:方法、实践与应用》系统地介绍知识图谱涉及的关键技术,如知识建模、关系抽取、图存储、自动推理、图谱表示学习、语义搜索、知识问答、图挖掘分析等。此外,本书还尝试将学术前沿和实战结合,让读者在掌握实际应用能力的同时对前沿技术发展有所了解。
《知识图谱:方法、实践与应用》既适合计算机和人工智能相关的研究人员阅读,又适合在企业一线从事技术和应用开发的人员学习,还可作为高等院校计算机或人工智能专业师生的参考教材。
第1章 知识图谱概述 1
1.1 什么是知识图谱 1
1.2 知识图谱的发展历史 2
1.3 知识图谱的价值 5
1.4 国内外典型的知识图谱项目 9
1.4.1 早期的知识库项目 9
1.4.2 互联网时代的知识图谱 9
1.4.3 中文开放知识图谱 12
1.4.4 垂直领域知识图谱 13
1.5 知识图谱的技术流程 15
1.6 知识图谱的相关技术 19
1.6.1 知识图谱与数据库系统 19
1.6.2 知识图谱与智能问答 23
1.6.3 知识图谱与机器推理 25
1.6.4 知识图谱与推荐系统 28
1.6.5 区块链与去中心化的知识图谱 29
1.7 本章小结 30
参考文献 31
第2章 知识图谱表示与建模 40
2.1 什么是知识表示 40
2.2 人工智能早期的知识表示方法 43
2.2.1 一阶谓词逻辑 43
2.2.2 霍恩子句和霍恩逻辑 43
2.2.3 语义网络 44
2.2.4 框架 45
2.2.5 描述逻辑 47
2.3 互联网时代的语义网知识表示框架 48
2.3.1 RDF和RDFS 48
2.3.2 OWL和OWL2 Fragments 53
2.3.3 知识图谱查询语言的表示 59
2.3.4 语义Markup表示语言 62
2.4 常见开放域知识图谱的知识表示方法 64
2.4.1 Freebase 64
2.4.2 Wikidata 65
2.4.3 ConceptNet5 66
2.5 知识图谱的向量表示方法 68
2.5.1 知识图谱表示的挑战 68
2.5.2 词的向量表示方法 68
2.5.3 知识图谱嵌入的概念 71
2.5.4 知识图谱嵌入的优点 72
2.5.5 知识图谱嵌入的主要方法 72
2.5.6 知识图谱嵌入的应用 75
2.6 开源工具实践:基于Protégé的本体知识建模 77
2.6.1 简介 77
2.6.2 环境准备 78
2.6.3 Protégé实践主要功能演示 78
2.7 本章小结 80
参考文献 80
第3章 知识存储 82
3.1 知识图谱数据库基本知识 82
3.1.1 知识图谱数据模型 82
3.1.2 知识图谱查询语言 85
3.2 常见知识图谱存储方法 91
3.2.1 基于关系数据库的存储方案 91
3.2.2 面向RDF的三元组数据库 101
3.2.3 原生图数据库 115
3.2.4 知识图谱数据库比较 120
3.3 知识存储关键技术 121
3.3.1 知识图谱数据库的存储:以Neo4j为例 121
3.3.2 知识图谱数据库的索引 124
3.4 开源工具实践 126
3.4.1 三元组数据库Apache Jena 126
3.4.2 面向RDF的三元组数据库gStore 128
参考文献 131
第4章 知识抽取与知识挖掘 133
4.1 知识抽取任务及相关竞赛 133
4.1.1 知识抽取任务定义 133
4.1.2 知识抽取相关竞赛 134
4.2 面向非结构化数据的知识抽取 136
4.2.1 实体抽取 137
4.2.2 关系抽取 142
4.2.3 事件抽取 150
4.3 面向结构化数据的知识抽取 154
4.3.1 直接映射 154
4.3.2 R2RML 156
4.3.3 相关工具 159
4.4 面向半结构化数据的知识抽取 161
4.4.1 面向百科类数据的知识抽取 161
4.4.2 面向Web网页的知识抽取 165
4.5 知识挖掘 168
4.5.1 知识内容挖掘:实体链接 168
4.5.2 知识结构挖掘:规则挖掘 174
4.6 开源工具实践:基于DeepDive的关系抽取实践 178
4.6.1 开源工具的技术架构 178
4.6.2 其他类似工具 180
参考文献 180
第5章 知识图谱融合 184
5.1 什么是知识图谱融合 184
5.2 知识图谱中的异构问题 185
5.2.1 语言层不匹配 186
5.2.2 模型层不匹配 187
5.3 本体概念层的融合方法与技术 190
5.3.1 本体映射与本体集成 190
5.3.2 本体映射分类 192
5.3.3 本体映射方法和工具 195
5.3.4 本体映射管理 232
5.3.5 本体映射应用 235
5.4 实例层的融合与匹配 236
5.4.1 知识图谱中的实例匹配问题分析 236
5.4.2 基于快速相似度计算的实例匹配方法 240
5.4.3 基于规则的实例匹配方法 241
5.4.4 基于分治的实例匹配方法 244
5.4.5 基于学习的实例匹配方法 260
5.4.6 实例匹配中的分布式并行处理 266
5.5 开源工具实践:实体关系发现框架LIMES 266
5.5.1 简介 266
5.5.2 开源工具的技术架构 267
5.5.3 其他类似工具 269
5.6 本章小结 269
参考文献 269
第6章 知识图谱推理 279
6.1 推理概述 279
6.1.1 什么是推理 279
6.1.2 面向知识图谱的推理 282
6.2 基于演绎的知识图谱推理 283
6.2.1 本体推理 283
6.2.2 基于逻辑编程的推理方法 288
6.2.3 基于查询重写的方法 295
6.2.4 基于产生式规则的方法 301
6.3 基于归纳的知识图谱推理 306
6.3.1 基于图结构的推理 306
6.3.2 基于规则学习的推理 313
6.3.3 基于表示学习的推理 318
6.4 知识图谱推理新进展 324
6.4.1 时序预测推理 324
6.4.2 基于强化学习的知识图谱推理 325
6.4.3 基于元学习的少样本知识图谱推理 326
6.4.4 图神经网络与知识图谱推理 326
6.5 开源工具实践:基于Jena和Drools的知识推理实践 327
6.5.1 开源工具简介 327
6.5.2 开源工具的技术架构 327
6.5.3 开发软件版本及其下载地址 328
6.5.4 基于Jena的知识推理实践 328
6.5.5 基于Drools的知识推理实践 329
6.6 本章小结 329
参考文献 330
第7章 语义搜索 334
7.1 语义搜索简介 334
7.2 结构化的查询语言 336
7.2.1 数据查询 338
7.2.2 数据插入 341
7.2.3 数据删除 341
7.3 语义数据搜索 342
7.4 语义搜索的交互范式 348
7.4.1 基于关键词的知识图谱语义搜索方法 348
7.4.2 基于分面的知识图谱语义搜索 350
7.4.3 基于表示学习的知识图谱语义搜索 352
7.5 开源工具实践 355
7.5.1 功能介绍 355
7.5.2 环境搭建及数据准备 357
7.5.3 数据准备 357
7.5.4 导入Elasticsearch 360
7.5.5 功能实现 361
7.5.6 执行查询 363
参考文献 364
第8章 知识问答 366
8.1 知识问答概述 366
8.1.1 知识问答的基本要素 366
8.1.2 知识问答的相关工作 367
8.1.3 知识问答应用场景 369
8.2 知识问答的分类体系 371
8.2.1 问题类型与答案类型 371
8.2.2 知识库类型 374
8.2.3 智能体类型 375
8.3 知识问答系统 376
8.3.1 NLIDB:早期的问答系统 376
8.3.2 IRQA:基于信息检索的问答系统 380
8.3.3 KBQA:基于知识库的问答系统 380
8.3.4 CommunityQA/FAQ-QA:基于问答对匹配的问答系统 381
8.3.5 Hybrid QA Framework 混合问答系统框架 382
8.4 知识问答的评价方法 386
8.4.1 问答系统的评价指标 386
8.4.2 问答系统的评价数据集 387
8.5 KBQA前沿技术 392
8.5.1 KBQA面临的挑战 392
8.5.2 基于模板的方法 394
8.5.3 基于语义解析的方法 398
8.5.4 基于深度学习的传统问答模块优化 401
8.5.5 基于深度学习的端到端问答模型 405
8.6 开源工具实践 406
8.6.1 使用Elasticsearch搭建简单知识问答系统 406
8.6.2 基于gAnswer构建中英文知识问答系统 410
8.7 本章小结 415
参考文献 416
第9章 知识图谱应用案例 420
9.1 领域知识图谱构建的技术流程 420
9.1.1 领域知识建模 421
9.1.2 知识存储 422
9.1.3 知识抽取 422
9.1.4 知识融合 423
9.1.5 知识计算 423
9.1.6 知识应用 424
9.2 领域知识图谱构建的基本方法 425
9.2.1 自顶向下的构建方法 425
9.2.2 自底向上的构建方法 426
9.3 领域知识图谱的应用案例 428
9.3.1 电商知识图谱的构建与应用 428
9.3.2 图情知识图谱的构建与应用 431
9.3.3 生活娱乐知识图谱的构建与应用:以美团为例 435
9.3.4 企业商业知识图谱的构建与应用 440
9.3.5 创投知识图谱的构建与应用 443
9.3.6 中医临床领域知识图谱的构建与应用 448
9.3.7 金融证券行业知识图谱应用实践 452
9.4 本章小结 460
参考文献 461
这是一本系统性介绍知识图谱发展历史、技术体系与应用实践的书籍,无论是对于研究学者还是相关企业的工程师,都是一本不错的参考书。本质而言,知识图谱旨在从数据中识别、发现和推断事物之间的复杂关系,是事物关系的可计算模型。知识图谱代表万维网发展的一种理想,也是人工智能与互联网深度融合的产物。书中的内容基本上涵盖了目前知识图谱的各方面研究和工程进展,非常适合从事这个领域工作的年轻人阅读。
周明
国际计算语言学学会(ACL)会长,微软亚洲研究院副院长
人类已进入人工智能时代。所谓“智”指的是智慧,表现为知识;“能”指的是解决问题的能力,主要表现为基于知识的推理能力和运用知识解决问题的能力。因此,知识是智能的基础和核心,知识的建模、表示、获取、融合、推理、赋能等是人工智能及其相关应用的核心科学问题,知识图谱是其有效的技术实现手段。三位青年学者在知识图谱领域耕耘多年,无论是在科学研究,还是在技术开发和产业落地方面,都做了大量的工作,有着丰富的实战经验和心得体会。在本书中,三位青年学者将知识图谱涉及的各个技术方面做了详细的总结、介绍和展望,涵盖了知识图谱全生命周期中的各个环节和各项细节。
在人工智能时代,这是一本非常实用的有关知识图谱的技术参考书,也可作为高年级本科生和研究生的教科书。
张民
苏州大学特聘教授,国家杰出青年基金获得者,人类语言技术研究所所长
知识图谱有很多落地场景,包括语义搜索、个性化推荐、内容理解、个人助理、智能问答,并在诸如金融、医疗、客服、教育和政务等垂直领域都有工业级应用。从工业界的角度来看,我们更关注知识图谱技术在落地的时候能否满足用户需求,是否有比较良好的用户体验。本书的内容不仅有理论和算法,还包括了很多技术落地方面的实践和应用案例,可以帮助工程师在进行技术选型、尝试技术实现过程中少走弯路,快速上手。此外,本书的主要作者都是OpenKG的发起人和核心参与人员,具有丰富的理论知识和一线实践经验。同时,开放域知识图谱的构建对于推动各个领域的图谱应用都具有重要意义。因此,我非常高兴能将这本书以及OpenKG介绍给更多来自工业界的朋友们。
崔宝秋
小米集团副总裁,集团技术委员会主席