基于混合方法的自然语言处理:神经网络模型与知识图谱的结合
定 价:99 元
丛书名:智能科学与技术丛书
- 作者:[西]何塞·曼努埃尔·戈麦斯-佩雷斯,[西]罗纳德·德诺,[西]安德烈·加西亚-席尔瓦
- 出版时间:2021/9/1
- ISBN:9787111690696
- 出 版 社:机械工业出版社
- 中图法分类:TP391
- 页码:
- 纸张:胶版纸
- 版次:
- 开本:16开
本书分为三个部分:基于知识图谱和神经网络的构建部分;结合知识图谱和神经网络的混合体系结构;实际应用部分。在三个部分中,主题通常是独立的,允许读者快速、轻松地阅读所需的信息。本书的两个特点是实用性和拥有前沿信息。书中准确地演示了如何创建和使用上下文表示,对意义嵌入和知识图谱嵌入有着明确的处理方法,解释了使用它们的语言模型和Transformer体系结构。
对于自然语言处理而言,基于神经网络和基于知识图谱这两种方法各有千秋。神经网络方法非常强大,并一直处于当前NLP排行榜的位置。然而,它们也有软肋,比如训练数据的数量和质量,模型与人类如何使用语言以及人类对世界的理解之间的联系等。另外,基于结构化知识表示的自然语言处理系统虽然不能完全解决这些问题,但往往比较适合解决其中的一些问题。然而,它们可能需要相当多的知识工程工作,以持续组织这样的结构化表示。
本书的主要前提是,数据驱动的方法和基于知识图谱的方法可以相得益彰,取长补短。尽管许多人提倡在NLP和人工智能的许多其他领域结合应用这两种范式,但事实是,直到现在,这种结合还不常见,原因可能是缺乏实现这一目标的原则性方法和指导方针,也可能是缺乏令人信服的成功案例。
而人工智能的研究,特别是在自然语言处理和知识图谱领域,已经达到了成熟的水平,并渗透到其他领域,引起了深刻的社会和商业变革。因此,本书特别侧重于讨论实践方面的主题,旨在为感兴趣的读者提供必要的手段,使读者能够掌握将神经网络方法和基于知识图谱的方法结合到自然语言处理中的实践方法,建立弥合两者之间差距的桥梁。
总的来说,对于对神经网络和基于知识图谱的方法在自然语言处理领域的结合感兴趣的读者而言,本书非常有用。有结构化知识表示背景的读者,例如有语义网、知识获取、知识表示和推理社区方面的背景,总的来说也就是那些基于逻辑方法研究人工智能的读者,可以在本书中找到实用指南。同样,我们希望本书对那些主要背景在机器学习和深度学习领域的读者同样有用,他们可能正在寻找利用结构化知识库优化NLP下游结果的方法。
因此,来自上述领域的工业界和学术界的读者将在本书中找到混合自然语言处理的实用资源。在本书中,我们将展示如何利用互补表示,这些表示源于对非结构化文本语料库以及知识图谱中明确描述的实体和关系的分析,整合这些表示,并使用由此产生的特征来有效地解决不同领域的自然语言处理任务。在本书中,读者可以在示例、练习以及关键领域的实际应用(如虚假信息分析和科学文献的机器阅读理解)上使用实际的可执行代码。
在本书中,对于无论是基于知识图谱、神经网络还是基于其他形式的机器学习的自然语言处理方法、技术和工具箱,我们并没有提供详尽的说明。我们认为这些内容已经在参考文献中得到了充分的阐述。相反,我们专注于读者真正需要掌握的主要构建模块,以便读者能够吸收和应用本书的主要思想。事实上,本书所有章节都是独立的,一般读者在理解时不会遇到太大困难。因此,本书可以作为一本简洁而富有洞察力的手册,专注于协调基于知识图谱的方法和神经网络方法在自然语言处理中应用的主要挑战上。我们希望你会喜欢。
本书目标
本书为读者提供了一个自然语言处理的混合方法的原则性实用指南,主要涉及神经网络方法和知识图谱的结合。本书解决了一些与混合自然语言处理系统相关的问题,包括:
神经网络方法如何以具有成本效益和可实践的方式扩展像知识图谱一样预先捕获显式表示的知识?反过来又如何呢?
结合神经网络和基于知识图谱的方法的自然语言处理混合方法的主要构建模块和技术是什么?
如何将神经网络表示与结构化的、基于知识图谱的表示无缝集成?
这种混合方法能否产生更好的知识图谱和神经网络表示?
如何检查和评估混合方法所产生的混合表示的质量?
混合方法对NLP任务的性能有什么影响?对其他数据形式(比如图像或图表)的处理有什么影响以及其相互作用有什么影响?
基于以上问题,本书首先介绍了主要的构建模块,然后描述了它们如何相互紧密地关联,进而支持实际自然语言处理应用程序的有效实现。为了说明本书描述的思想,我们包含了一套全面的实验和练习,涉及可以根据任务领域和语料库进行选择的不同算法。
本书各章概述
接下来,我们介绍本书的章节结构安排:
第1章介绍本书的创作灵感及在当前的自然语言处理学科背景下本书的总体目标。
第2章介绍单词、语义/概念和知识图谱嵌入,它们是生成混合自然语言处理系统的主要构建模块。我们探讨各种不同的方法:简单的词嵌入学习、从语料库和语义网络中学习语义和概念嵌入,以及根本不使用语料库直接从知识图谱中学习概念嵌入的方法。
第3章重点研究词嵌入,并根据所使用的方法和语料库来分析其中包含的信息。除了预训练的静态嵌入,重点放在神经网络语言模型和上下文的嵌入上。
第4章引导读者通过一个可执行的Jupyter Notebook,重点介绍一个特定的词嵌入算法,如Swivel[164]及其实现,以说明如何方便地从文本语料库中生成词嵌入。
第5章与第4章的方式类似,本章利用一个像WordNet这样的现有知识图谱,利用HolE等特定的知识图谱算法生成图谱嵌入,还提供了一个可执行的Jupyter Notebook。
第6章提出一种利用知识图谱从文本语料库中联合学习单词和概念嵌入的方法Vecsigrafo[39]。与第5章中描述的方法不同,Vecsigrafo不仅从知识图谱中学习,也从训练语料库中学习。我们将看到这种方法的一些优
推荐序一
推荐序二
译者序
前言
部分 预备知识和构建模块
第1章 混合自然语言处理简介2
1.1 知识图谱、嵌入和语言模型简史2
1.2 自然语言处理中知识图谱和神经网络方法的结合4
第2章 单词、意义和知识图谱嵌入6
2.1 引言6
2.2 分布式单词表示6
2.3 词嵌入7
2.4 意义和概念嵌入8
2.5 知识图谱嵌入9
2.6 本章小结13
第3章 理解词嵌入和语言模型14
3.1 引言14
3.2 语言模型15
3.2.1 统计语言模型15
3.2.2 神经语言模型16
3.3 NLP迁移学习的预训练模型微调16
3.3.1 ELMo16
3.3.2 GPT17
3.3.3 BERT17
3.4 机器人检测中预训练语言模型的微调18
3.4.1 实验结果与讨论21
3.4.2 使用Transformer库对BERT进行微调21
3.5 本章小结27
第4章 从文本中捕获意义作为词嵌入28
4.1 引言28
4.2 下载一个小文本语料库29
4.3 一种学习词嵌入的算法29
4.4 使用Swivel prep生成共现矩阵30
4.5 从共现矩阵中学习嵌入31
4.6 读取并检查存储的二进制嵌入32
4.7 练习:从古腾堡工程中创建词嵌入33
4.7.1 下载语料库并进行预处理33
4.7.2 学习嵌入34
4.7.3 检查嵌入34
4.8 本章小结34
第5章 捕获知识图谱嵌入35
5.1 引言35
5.2 知识图谱嵌入35
5.3 为WordNet创建嵌入37
5.3.1 选择嵌入算法:HolE37
5.3.2 将WordNet知识图谱转换为所需输入39
5.3.3 学习嵌入44
5.3.4 检查嵌入结果44
5.4 练习47
5.4.1 练习:在自己的知识图谱上训练嵌入47
5.4.2 练习:检查WordNet 3.0的预计算嵌入47
5.5 本章小结48
第二部分 神经网络与知识图谱的结合
第6章 从文本语料库、知识图谱和语言模型中构建混合表达50
6.1 引言50
6.2 准备工作和说明51
6.3 Vecsigrafo的概念及构建方式 51
6.4 实现53
6.5 训练Vecsigrafo54
6.5.1 标记化和词义消歧56
6.5.2 词汇表和共现矩阵58
6.5.3 从共现矩阵学习嵌入62
6.5.4 检查嵌入64
6.6 练习:探索一个预先计算好的Vecsigrafo66
6.7 从Vecsigrafo到Transigrafo68
6.7.1 安装设置70
6.7.2 训练Transigrafo71
6.7.3 扩展知识图谱的覆盖范围73
6.7.4 评估 Transigrafo73
6.7.5 检查Transigrafo中的义项嵌入 75
6.7.6 探索Transigrafo嵌入的稳定性77
6.7.7 额外的反思81
6.8 本章小结81
第7章 质量评估82
7.1 引言82
7.2 评估方法的概述83
7.3 练习1:评估单词和概念嵌入84
7.3.1 可视化探索84
7.3.2 内在评估85
7.3.3 词汇预测图87
7.3.4 外在评估90
7.4 练习2:评价通过嵌入获取的关系知识90
7.4.1 下载embrela项目91
7.4.2 下载生成的数据集91
7.4.3 加载待评估的嵌入92
7.4.4 学习模型94
7.4.5 分析模型的结果94
7.4.6 数据预处理:合并且增加字段 96
7.4.7 计算范围阈值和偏差数据集检测97
7.4.8 发现统计上有意义的模型99
7.4.9 关系型知识的评估结论101
7.5 案例研究:评估和对比Vecsigrafo嵌入101
7.5.1 比较研究101
7.5.2 讨论111
7.6 本章小结114
第8章 利用Vecsigrafo捕获词法、语法和语义信息116
8.1 引言116
8.2 方法118
8.2.1 Vecsigrafo:基于语料的单词–概念嵌入118
8.2.2 联合嵌入空间119
8.2.3 嵌入的评估119
8.3 评估120
8.3.1 数据集121
8.3.2 单词相似度121
8.3.3 类比推理124
8.3.4 单词预测125
8.3.5 科学文档的分类127
8.4 讨论129
8.5 练习:使用surface form对科学文献进行分类130
8.5.1 导入所需的库130
8.5.2 下载surface form的词嵌入和SciGraph论文131
8.5.3 读取并准备分类数据集131
8.5.4 surface form的词嵌入133
8.5.5 创建嵌入层134
8.5.6 训练一个卷积神经网络134
8.6 本章小结136
第9章 知识图谱的词嵌入空间对齐与应用137
9.1 引言137
9.2 概述及可能的应用138
9.2.1 知识图谱的补全139
9.2.2 超越多语言性:跨模态的词嵌入139
9.3 词嵌入空间的对齐技术140
9.3.1 线性对齐140
9.3.2 非线性对齐146
9.4 练习:寻找古代英语和现代英语的对应146
9.4.1 下载小型文本语料库146
9.4.2 学习基于老莎士比亚语料库的Swivel词嵌入147
9.4.3 在WordNet之上加载UMBC的Vecsigrafo149
9.4.4 练习的结论149
9.5 本章小结150
第三部分 应用
第10章 一种虚假信息分析的混合方法152
10.1 引言152
10.2 虚假信息检测153
10.2.1 定义和背