自然语言处理是人工智能的重要方向之一,被誉为人工智能皇冠上的"明珠”。它融合了语言学、计算 机科学、机器学习等多学科内容。本书主要包含基础技术、核心技术以及模型分析三个部分。基础技术部分 主要介绍自然语言处理的基础任务和底层技术,包含词汇分析、句法分析、语义分析、篇章分析和语言模型; 核心技术部分主要介绍自然语言处理应用任务和相关技术,主要包括信息抽取、机器翻译、情感分析、智能 问答、文本摘要、知识图谱;模型分析部分主要介绍基于机器学习的自然语言处理模型的稳健性和可解释性 问题。
张奇,复旦大学计算科学技术学院教授、博士生导师。主要研究方向是自然语言处理和信息检索,聚焦自然语言表示、信息抽取、鲁棒性和解释性分析等任务。兼任中国中文信息学会理事、中国中文信息学会信息检索专委会常务委员、中国人工智能青年工作委员会常务委员、SIGIR Beijing Chapter组织委员会委员等。多次担任ACL、EMNLP、COLING、全国信息检索大会等重要国际、国内会议的程序委员会主席、领域主席、讲习班主席等。近年来,承担了国家重点研发计划课题、国家自然科学基金、上海市科委等多个项目,在国际重要学术刊物和会议上发表论文150余篇,获得美国授权专利4项,作为第二译者翻译专著《现代信息检索》。获得WSDM 2014最佳论文提名奖、COLING 2018 领域主席推荐奖、NLPCC 2019杰出论文奖、COLING 2022杰出论文奖。获得上海市“晨光计划”人才计划、复旦大学“卓越2025”人才培育计划等支持,获得钱伟长中文信息处理科学技术一等奖、汉王青年创新一等奖、上海市科技进步二等奖、教育部科技进步二等奖、ACM 上海新星提名奖、IBM Faculty Award等奖项。桂韬,复旦大学自然语言处理实验室副研究员、硕士生导师。研究领域为预训练模型、信息抽取和鲁棒模型。在高水平国际学术期刊和会议上发表论文40余篇,主持国家自然科学基金、计算机学会、人工智能学会的多个基金项目。获钱伟长中文信息处理科学技术奖一等奖(2/5)、中国中文信息学会优秀博士论文奖、COLING 2018 最佳论文提名奖、NLPCC 2019 杰出论文奖,入选第七届“中国科协青年人才托举工程”、上海市启明星计划。黄萱菁,复旦大学计算机学院教授、博士生导师。主要从事人工智能、自然语言处理和信息检索研究。兼任中国中文信息学会理事,中国计算机学会自然语言处理专委会副主任,中国人工智能学会女科技工作者委员会副主任,计算语言学学会亚太分会副主席,亚太信息检索学会指导委员会委员。近年来,承担了国家重点研发计划课题、国家自然科学基金等多个项目,在国际重要学术刊物和会议上发表论文150余篇。获钱伟长中文信息处理科学技术奖、上海市育才奖、人工智能全球女性学者、福布斯中国科技女性等多项荣誉。
第 1 部分 基础技术
第 1 章 绪论 2
1.1 自然语言处理的基本概念 2
1.1.1 自然语言处理简史 2
1.1.2 自然语言处理的主要研究内容 5
1.1.3 自然语言处理的主要难点 7
1.2 自然语言处理的基本范式 10
1.2.1 基于规则的方法 11
1.2.2 基于机器学习的方法 12
1.2.3 基于深度学习的方法 14
1.2.4 基于大模型的方法 15
1.3 本书内容安排 16
第 2 章 词汇分析 18
2.1 语言中的词汇 18
2.1.1 词的形态学 18
2.1.2 词的词性 19
2.2 词语规范化 23
2.2.1 词语切分 23
2.2.2 词形还原 24
2.2.3 词干提取 24
2.3 中文分词 25
2.3.1 中文分词概述 25
2.3.2 基于最大匹配的中文分词算法 28
2.3.3 基于线性链条件随机场的中文分词算法 29
2.3.4 基于感知器的中文分词算法 31
2.3.5 基于双向长短期记忆网络的中文分词算法 34
2.3.6 中文分词评测方法 36
2.3.7 中文分词语料库 37
2.4 词性标注 38
2.4.1 基于规则的词性标注 39
2.4.2 基于隐马尔可夫模型的词性标注 40
2.4.3 基于卷积神经网络的词性标注 42
2.4.4 词性标注评测方法 44
2.4.5 词性标注语料库 45
2.5 延伸阅读 46
2.6 习题 47
第 3 章 句法分析 48
3.1 句法概述 48
3.1.1 成分语法理论概述 49
3.1.2 依存语法理论概述 51
3.2 成分句法分析 53
3.2.1 基于上下文无关语法的成分句法分析 54
3.2.2 基于概率上下文无关语法的成分句法分析 59
3.2.3 成分句法分析评测方法 67
3.3 依存句法分析 69
3.3.1 基于图的依存句法分析 70
3.3.2 基于神经网络的图依存句法分析 74
3.3.3 基于转移的依存句法分析 79
3.3.4 基于神经网络的转移依存句法分析 82
3.3.5 依存句法分析评测方法 85
3.4 句法分析语料库 86
3.5 延伸阅读 89
3.6 习题 90
第 4 章 语义分析 91
4.1 语义学概述 91
4.1.1 词汇语义学 92
4.1.2 句子语义学 96
4.2 语义表示 98
4.2.1 谓词逻辑表示 99
4.2.2 框架表示 100
4.2.3 语义网络表示 102
4.3 分布式表示 103
4.3.1 词分布式表示 104
4.3.2 句子分布式表示 114
4.3.3 篇章分布式表示 117
4.4 词义消歧 119
4.4.1 基于目标词上下文的词义消歧算法 119
4.4.2 基于词义释义匹配的词义消歧算法 122
4.4.3 基于词义知识增强预训练的词义消歧算法 126
4.4.4 词义消歧评测方法 128
4.4.5 词义消歧语料库 128
4.5 语义角色标注 132
4.5.1 基于句法树的语义角色标注算法 132
4.5.2 基于深度神经网络的语义角色标注算法 135
4.5.3 语义角色标注评测方法 140
4.5.4 语义角色标注语料库和语义角色标注评测 140
4.6 延伸阅读 143
4.7 习题 144
第 5 章 篇章分析 145
5.1 篇章理论概述 145
5.1.1 篇章的衔接 146
5.1.2 篇章的连贯 148
5.1.3 篇章的结构 149
5.2 话语分割 153
5.2.1 基于词汇句法树的统计话语分割算法 154
5.2.2 基于循环神经网络的话语分割算法 155
5.3 篇章结构分析 157
5.3.1 修辞结构篇章分析 157
5.3.2 浅层篇章分析 161
5.4 指代消解 167
5.4.1 基于表述对的指代消解算法 168
5.4.2 基于表述排序的指代消解算法 170
5.4.3 基于实体的指代消解算法 175
5.5 延伸阅读 179
5.6 习题 180
第 6 章 语言模型 181
6.1 语言模型概述 181
6.2 n 元语言模型 182
6.2.1 加法平滑 184
6.2.2 古德-图灵估计法 184
6.2.3 Katz 平滑 185
6.2.4 平滑方法总结 187
6.3 神经网络语言模型 188
6.3.1 前馈神经网络语言模型 188
6.3.2 循环神经网络语言模型 189
6.4 预训练语言模型 191
6.4.1 动态词向量算法 ELMo 191
6.4.2 生成式预训练语言模型 GPT 193
6.4.3 掩码预训练语言模型 BERT 195
6.4.4 序列到序列的预训练语言模型 BART 199
6.4.5 预训练语言模型的应用 201
6.5 大规模语言模型 203
6.5.1 基础大模型训练 205
6.5.2 指令微调 207
6.5.3 人类反馈 209
6.6 语言模型评测方法 210
6.7 延伸阅读 210
6.8 习题 212
第 2 部分 核心技术
第 7 章 信息抽取 214
7.1 信息抽取概述 214
7.2 命名实体识别 216
7.2.1 非嵌套命名实体识别 217
7.2.2 嵌套命名实体识别 225
7.2.3 多规范命名实体识别 230
7.2.4 命名实体识别评测方法 233
7.2.5 命名实体识别语料库 233
7.3 关系抽取 235
7.3.1 有监督关系抽取 236
7.3.2 远程监督关系抽取 240
7.3.3 开放关系抽取 245
7.3.4 关系抽取评测方法 249
7.3.5 关系抽取语料库 250
7.4 事件抽取 251
7.4.1 限定域事件抽取 251
7.4.2 开放域事件抽取 255
7.4.3 事件抽取评测方法 260
7.4.4 事件抽取语料库 260
7.5 延伸阅读 261
7.6 习题 262
第 8 章 机器翻译.263
8.1 机器翻译概述 263
8.1.1 机器翻译的发展历程 264
8.1.2 机器翻译的现状与挑战 265
8.2 基于统计的机器翻译方法 266
8.2.1 任务定义与基本问题 266
8.2.2 IBM 模型Ⅰ 270
8.2.3 IBM 模型Ⅱ 274
8.2.4 IBM 模型Ⅲ 275
8.2.5 IBM 模型Ⅳ 276
8.2.6 IBM 模型Ⅴ 277
8.3 基于神经网络的机器翻译方法 278
8.3.1 循环神经网络翻译模型 279
8.3.2 卷积神经网络翻译模型 281
8.3.3 自注意力神经网络翻译模型 284
8.4 机器翻译语料库 288
8.5 延伸阅读 290
8.6 习题 291
第 9 章 情感分析 292
9.1 情感分析概述 292
9.1.1 情感模型 293
9.1.2 情感分析的主要任务 297
9.2 篇章级情感分析 300
9.2.1 基于支持向量机的篇章级情感分析 301
9.2.2 基于层次结构的篇章级情感分析 303
9.2.3 篇章级情感分析语料库 305
9.3 句子级情感分析 307
9.3.1 基于词典的句子级情感分析 308
9.3.2 基于递归神经张量网络的句子级情感分析 309
9.3.3 基于情感知识增强预训练的句子级情感分析 310
9.3.4 句子级情感分析语料库 312
9.4 属性级情感分析 313
9.4.1 情感信息抽取 313
9.4.2 属性级情感分类 319
9.4.3 属性级情感分析语料库 329
9.5 延伸阅读 331
9.6 习题 331
第 10 章 智能问答 332
10.1 智能问答概述 332
10.1.1 智能问答的发展历程 333
10.1.2 智能问答的主要类型 334
10.2 阅读理解 336
10.2.1 基于特征的阅读理解算法 337
10.2.2 基于深度神经网络的阅读理解算法 340
10.2.3 阅读理解语料库 346
10.3 表格问答 347
10.3.1 基于特征的表格问答方法 348
10.3.2 基于深度学习的表格问答模型 349
10.3.3 表格问答语料库 350
10.4 社区问答 351
10.4.1 基于特征的语义匹配算法 352
10.4.2 基于深度学习的语义匹配算法 353
10.4.3 社区问答语料库 356
10.5 开放领域问答 357
10.5.1 基于检索-阅读理解架构的开放领域问答模型 358
10.5.2 基于端到端架构的开放领域问答模型 360
10.5.3 开放领域问答语料库 362
10.6 延伸阅读 363
10.7 习题 364
第 11 章 文本摘要 365
11.1 文本摘要概述 365
11.1.1 文本摘要的发展历程 365
11.1.2 文本摘要的主要任务 367
11.2 抽取式文本摘要 368
11.2.1 基于排序的方法 368
11.2.2 基于序列标注的方法 373
11.3 生成式文本摘要 377
11.3.1 序列到序列生成式文本摘要 378
11.3.2 抽取与生成结合式文本摘要 384
11.4 文本摘要评测 388
11.4.1 人工评测 389
11.4.2 自动评测 390
11.5 文本摘要语料库 393
11.5.1 单文档摘要语料库 393
11.5.2 多文档摘要语料库 393
11.5.3 对话摘要语料库 393
11.5.4 多模态文本摘要语料库 394
11.5.5 跨语言文本摘要语料库 394
11.6 延伸阅读 394
11.7 习题 395
第 12 章 知识图谱 396
12.1 知识图谱概述 396
12.1.1 知识图谱的发展历程 398
12.1.2 知识图谱的研究内容 399
12.2 知识图谱的表示与存储 400
12.2.1 知识图谱的符号表示 401
12.2.2 知识图谱的向量表示 404
12.2.3 基于表的知识图谱存储 407
12.2.4 基于图的知识图谱存储 410
12.3 知识图谱的获取与构建 413
12.3.1 属性补全 415
12.3.2 实体链接 417
12.3.3 实体对齐 421
12.4 知识图谱推理 426
12.4.1 基于符号逻辑的知识图谱推理 427
12.4.2 基于表示学习的知识图谱推理 430
12.5 知识图谱问答 434
12.5.1 基于语义解析的知识图谱问答 435
12.5.2 基于信息检索的知识图谱问答 437
12.5.3 基于深度学习的知识图谱问答 441
12.5.4 知识图谱问答语料库 445
12.6 延伸阅读 446
12.7 习题 447
第 3 部分 模型分析
第 13 章 模型稳健性 449
13.1 稳健性概述 449
13.1.1 稳健性的基本概念 450
13.1.2 稳健性的主要研究内容 451
13.2 数据偏差消除 452
13.3 文本对抗攻击方法 454
13.3.1 字符级别的攻击方法 455
13.3.2 词级别的攻击方法 456
13.3.3 句子级别的攻击方法 458
13.3.4 后门攻击 459
13.4 文本对抗防御方法 463
13.4.1 基于对抗训练的文本对抗防御方法 463
13.4.2 基于表示压缩的文本对抗防御方法 465
13.4.3 基于数据增强的文本对抗防御方法 466
13.4.4 对抗样本检测 468
13.5 模型稳健性评测基准 469
13.5.1 特定任务稳健性评测基准 469
13.5.2 模型稳健性通用评测基准 472
13.6 延伸阅读 477
13.7 习题 478
第 14 章 模型可解释性 479
14.1 可解释性概述 479
14.1.1 可解释性的分类 480
14.1.2 解释方法评估 481
14.2 解释性分析方法 483
14.2.1 局部分析方法 483
14.2.2 全局分析方法 489
14.3 自然语言处理算法的解释性分析方法 492
14.3.1 模型解释性分析方法 492
14.3.2 数据解释性分析方法 496
14.3.3 可解释评估 498
14.4 延伸阅读 500
14.5 习题 500
参考文献 501
索引 564