具体描述
微软高级研究员撰写,剖析机器阅读理解支撑技术、模型架构、前沿算法、模型SDNet源码与落地应用。
全书分为三篇,共8章内容。基础篇(第1~3章),介绍机器阅读理解的基础知识和关键支撑技术,涵盖机器阅读理解任务的定义,阅读理解模型中常用的自然语言处理技术和深度学习网络模块,例如如何让计算机表示文章和问题、做多项选择题及生成回答等。架构篇(第4~6章),介绍解决各类机器阅读理解任务的基本模型架构和前沿算法,并剖析对机器阅读理解研究有着重要影响的预训练模型(如BERT和GPT)。实战篇(第7~8章),包括笔者在2018年获得CoQA对话阅读理解竞赛第一名时所用的模型SDNet的代码解读,机器阅读理解在各种工业界应用中的具体落地过程和挑战,以及笔者对于机器阅读理解未来发展方向的思考。
作者简介
朱晨光
微软公司自然语言处理高级研究员、斯坦福大学计算机系博士。负责自然语言处理研究与开发、对话机器人的语义理解、机器阅读理解研究等,精通人工智能、深度学习与自然语言处理,尤其擅长机器阅读理解、文本总结、对话处理等方向。带领团队负责客服对话机器人的语义理解与分析,进行机器阅读理解研究,在斯坦福大学举办的SQuAD 1.0机器阅读理解竞赛中获得全球名,在CoQA对话阅读理解竞赛中成绩超过人类水平并获得名。在人工智能和自然语言处理会议ICLR、ACL、EMNLP、NAACL、ICLR中发表多篇文章。
目录信息
序二
前言
第一篇 基础篇
第1章 机器阅读理解与关键支撑技术 2
1.1 机器阅读理解任务 2
1.1.1 机器阅读理解模型 3
1.1.2 机器阅读理解的应用 4
1.2 自然语言处理 5
1.2.1 研究现状 5
1.2.2 仍需解决的问题 6
1.3 深度学习 7
1.3.1 深度学习的特点 7
1.3.2 深度学习的成果 10
1.4 机器阅读理解任务的测评方式 11
1.4.1 机器阅读理解的答案形式 11
1.4.2 自由回答式答案评分标准ROUGE 12
1.5 机器阅读理解数据集 14
1.5.1 单段落式数据集 14
1.5.2 多段落式数据集 19
1.5.3 文本库式数据集 22
1.6 机器阅读理解数据的生成 23
1.6.1 数据集的生成 23
1.6.2 标准答案的生成 24
1.6.3 如何设计高质量的数据集 26
1.7 本章小结 30
第2章 自然语言处理基础 31
2.1 文本分词 31
2.1.1 中文分词 32
2.1.2 英文分词 33
2.1.3 字节对编码BPE 35
2.2 语言处理的基石:词向量 37
2.2.1 词的向量化 37
2.2.2 Word2vec词向量 39
2.3 命名实体和词性标注 42
2.3.1 命名实体识别 42
2.3.2 词性标注 44
2.4 语言模型 48
2.4.1 N元模型 49
2.4.2 语言模型的评测 52
2.5 本章小结 53
第3章 自然语言处理中的深度学习 54
3.1 从词向量到文本向量 54
3.1.1 利用RNN的最终状态 55
3.1.2 利用CNN和池化 55
3.1.3 利用含参加权和 58
3.2 让计算机做选择题:自然语言理解 59
3.2.1 网络模型 59
3.2.2 实战:文本分类 60
3.3 让计算机写文章:自然语言生成 62
3.3.1 网络模型 62
3.3.2 实战:生成文本 63
3.3.3 集束搜索 65
3.4 让计算机专心致志:注意力机制 67
3.4.1 注意力机制的计算 68
3.4.2 实战:利用内积函数计算注意力 69
3.4.3 序列到序列模型 69
3.5 本章小结 70
第二篇 架构篇
第4章 机器阅读理解模型架构 72
4.1 总体架构 72
4.2 编码层 74
4.2.1 词表的建立和初始化 74
4.2.2 字符编码 75
4.2.3 上下文编码 77
4.3 交互层 79
4.3.1 互注意力 79
4.3.2 自注意力 81
4.3.3 上下文编码 82
4.4 输出层 83
4.4.1 构造问题的向量表示 83
4.4.2 多项选择式答案生成 84
4.4.3 区间式答案生成 85
4.4.4 自由式答案生成 87
4.5 本章小结 93
第5章 常见机器阅读理解模型 94
5.1 双向注意力流模型 94
5.1.1 编码层 94
5.1.2 交互层 95
5.1.3 输出层 98
5.2 R-net 99
5.2.1 基于注意力的门控循环神经网络 100
5.2.2 网络架构 101
5.3 融合网络 104
5.3.1 单词历史 104
5.3.2 全关注注意力 105
5.3.3 总体架构 106
5.4 关键词检索与阅读模型 109
5.4.1 检索器 110
5.4.2 阅读器 112
5.5 本章小结 115
第6章 预训练模型 116
6.1 预训练模型和迁移学习 116
6.2 基于翻译的预训练模型CoVe 118
6.2.1 机器翻译模型 119
6.2.2 上下文编码 120
6.3 基于语言模型的预训练模型ELMo 121
6.3.1 双向语言模型 122
6.3.2 ELMo的使用 123
6.4 生成式预训练模型GPT 125
6.4.1 Transformer 125
6.4.2 GPT模型架构 129
6.4.3 GPT使用方法 129
6.5 划时代的预训练模型BERT 131
6.5.1 双向语言模型 131
6.5.2 判断下一段文本 132
6.5.3 BERT预训练细节 133
6.5.4 BERT在目标任务中的使用 133
6.5.5 实战:在区间答案型机器阅读理解任务中微调BERT 137
6.6 本章小结 138
第三篇 实战篇
第7章 机器阅读理解模型SDNet代码解析 140
7.1 多轮对话式阅读理解模型SDNet 140
7.1.1 编码层 141
7.1.2 交互层与输出层 142
7.2 SDNet代码介绍与运行指南 143
7.2.1 代码介绍 143
7.2.2 运行指南 143
7.2.3 配置文件 145
7.3 预处理程序 147
7.3.1 初始化函数 148
7.3.2 预处理函数 149
7.4 训练程序 154
7.4.1 训练基类 154
7.4.2 训练子类 155
7.5 批次数据产生器 159
7.5.1 掩码 160
7.5.2 准备BERT数据 164
7.6 SDNet模型 166
7.6.1 网络模型类 166
7.6.2 计算层 171
7.6.3 生成BERT编码 177
7.7 本章小结 178
第8章 机器阅读理解的应用与未来 179
8.1 智能客服 179
8.1.1 建立产品客服知识库 180
8.1.2 理解用户意图 181
8.1.3 答案生成 183
8.1.4 智能客服中的其他模块 183
8.2 搜索引擎 184
8.2.1 搜索引擎技术 185
8.2.2 搜索引擎中的机器阅读理解 187
8.2.3 未来与挑战 188
8.3 医疗卫生 189
8.4 法律 190
8.4.1 智能审判 191
8.4.2 确定适用条款 192
8.5 金融 193
8.5.1 股价预测 193
8.5.2 新闻摘要 195
8.6 教育 196
8.7 机器阅读理解的未来 196
8.7.1 机器阅读理解研究面临的挑战 197
8.7.2 机器阅读理解的产业化 202
8.8 本章小结 203
附录A 机器学习基础 205
附录B 深度学习基础 208
· · · · · · (收起)
读后感
作者:木羊同学 今天不废话,我们超快地过一遍自然语言处理技术的发展,真的是超快的哦~抓稳,开车了! 自然语言处理,英文Natural Language Processing,一般为了省事,都简写成NLP。NLP很重要。有多重要?以前看过一个说法,说NLP是人工智能皇冠顶上的明珠。不过,出处是一本...
作者:木羊同学 今天不废话,我们超快地过一遍自然语言处理技术的发展,真的是超快的哦~抓稳,开车了! 自然语言处理,英文Natural Language Processing,一般为了省事,都简写成NLP。NLP很重要。有多重要?以前看过一个说法,说NLP是人工智能皇冠顶上的明珠。不过,出处是一本...
作者:木羊同学 今天不废话,我们超快地过一遍自然语言处理技术的发展,真的是超快的哦~抓稳,开车了! 自然语言处理,英文Natural Language Processing,一般为了省事,都简写成NLP。NLP很重要。有多重要?以前看过一个说法,说NLP是人工智能皇冠顶上的明珠。不过,出处是一本...
作者:木羊同学 今天不废话,我们超快地过一遍自然语言处理技术的发展,真的是超快的哦~抓稳,开车了! 自然语言处理,英文Natural Language Processing,一般为了省事,都简写成NLP。NLP很重要。有多重要?以前看过一个说法,说NLP是人工智能皇冠顶上的明珠。不过,出处是一本...
作者:木羊同学 今天不废话,我们超快地过一遍自然语言处理技术的发展,真的是超快的哦~抓稳,开车了! 自然语言处理,英文Natural Language Processing,一般为了省事,都简写成NLP。NLP很重要。有多重要?以前看过一个说法,说NLP是人工智能皇冠顶上的明珠。不过,出处是一本...
用户评价
读完《机器阅读理解》,我最大的感受是,我们对于“智能”的定义,正在被AI不断地重新书写。这本书不仅仅是关于算法和模型的堆砌,它更深入地探讨了机器如何模拟人类的认知过程,从而实现对文本的深度理解。我尤其对书中关于“常识推理”和“隐含信息提取”的部分深感震撼。它让我意识到,机器已经不再仅仅是死板地处理输入的文本,而是可以利用其“知识库”和推理能力,去理解那些文本中没有直接说明,但却是显而易见的含义。这一点对于我们构建更智能的对话系统、情感伴侣,甚至更具洞察力的分析工具,都具有极其重要的意义。我之前一直觉得,人类的推理能力是AI难以企及的,但这本书让我看到了AI在这一领域的巨大突破。它让我对AI的未来充满了更多的可能性,也对人类自身的认知边界有了新的思考。
《机器阅读理解》这本书,为我揭示了一个关于人工智能如何“读懂”世界的精彩故事。我一直以为,机器在理解文本方面,最多只能达到“识别”的程度,而这本书则让我看到了它们能够达到“理解”的高度。我特别被书中关于“指代消解”和“共指消解”的讲解所吸引。它让我明白,机器如何能够追踪文本中不同名词或代词所指代的同一个实体,从而建立起文本的内部逻辑联系。这一点对于我们理解复杂的故事叙述、科学论文,甚至法律条文,都具有至关重要的意义。我之前一直觉得,人类在理解文本中的“指代”关系时,是如此自然而然,但读了这本书之后,我才意识到,背后涉及到如此复杂的计算和推理过程。这本书让我对AI在处理语言中的模糊性和多义性方面,有了更深的认识,也让我对AI的未来发展充满了更强烈的期待。
这本书《机器阅读理解》的出现,简直就像是为我量身定做的。我一直对人类语言的奥秘着迷,也对人工智能如何试图模仿甚至超越人类的语言能力充满了好奇。这本书以一种非常引人入胜的方式,将机器阅读理解的整个生态系统展现在我面前。我最欣赏的是书中对于“注意力机制”的深入讲解,它让我明白了为什么Transformer模型能够如此成功地处理长序列文本,以及它是如何让模型在处理不同词语时,赋予它们不同的“权重”和“关注度”。这一点对于我们理解文本中的关键信息、语义关联,甚至是作者的情感倾向,都至关重要。我之前一直觉得,AI在处理长篇文章时,很容易“遗忘”开头的内容,而注意力机制的引入,恰恰解决了这个问题。这本书不仅让我学到了先进的技术,更让我对AI的创造力和潜力有了更深的敬畏。
我一直对人工智能在文本处理方面的进展非常关注,而《机器阅读理解》这本书,无疑是我近期阅读过的最深刻的作品之一。它不仅仅是简单地介绍了几种算法,而是真正地带领我深入到了机器理解文本的“幕后”。我最喜欢的是书中对于“情感分析”和“观点挖掘”的讲解。它让我看到,AI不仅仅能理解文本的字面意思,更能捕捉到隐藏在字里行间的喜怒哀乐和微妙的情绪。这对于我们理解用户反馈、市场舆情,甚至进行更个性化的内容推荐,都具有极其重要的价值。我之前一直觉得,情感的捕捉是人类独有的能力,但这本书让我看到了AI在这方面惊人的潜力。作者还通过大量的案例研究,展示了机器阅读理解在各个领域的实际应用,从医疗诊断到法律文本分析,每一个例子都让我惊叹不已。这本书让我对AI的未来充满了更深的期待,也让我意识到,我们正处在一个AI赋能的时代。
这本《机器阅读理解》真是太让我惊喜了!我一直对人工智能如何“理解”文本充满好奇,但市面上大多数书籍要么过于学术,要么流于表面。这本书恰恰找到了一个完美的平衡点。作者并没有用晦涩难懂的术语堆砌,而是循序渐进地为我揭示了机器阅读理解的核心原理。从最初的词汇嵌入,到后来更复杂的注意力机制和Transformer模型,每一个概念都被讲解得清晰透彻,仿佛我真的置身于一个充满智慧的实验室,亲手构建这些模型。尤其是关于如何让机器区分同义词在不同语境下的细微差别,以及如何理解复杂句子的主谓宾结构,这些内容让我茅塞顿开。我之前一直以为机器只能进行简单的关键词匹配,但读完这本书,我才意识到原来它们已经可以做到如此深度的语义分析。书中的案例也十分贴切,从新闻摘要到问答系统,每一个应用场景都让我看到了机器阅读理解的巨大潜力。我尤其喜欢作者对SQuAD数据集的讲解,它让我明白了一个标准化的数据集对于评估和推动研究的重要性。我还会不断回头翻阅这本书,因为我相信,随着我阅读理解能力的提升,我将能从中领悟到更多之前未能触及的精妙之处。这本书不仅是一本技术指南,更像是一位睿智的导师,引导我一步步走向人工智能的深邃世界。
拿到《机器阅读理解》这本书的时候,我带着一种混合着期待和些许忐忑的心情。我本身并非科班出身,对人工智能的了解主要来自于一些科普文章和新闻报道。然而,这本书的封面和简介所散发的专业气息,让我一度担心自己是否能跟上作者的思路。但事实证明,我的担忧是多余的。作者用一种非常平易近人的方式,将机器阅读理解这个看似高深的领域展现得淋漓尽致。我最欣赏的是书中对于不同算法模型的对比分析,比如BERT、RoBERTa以及GPT系列。作者不仅仅列举了它们的名字,更深入地剖析了它们各自的优势和局限性,以及它们是如何在处理长文本、复杂推理等方面不断突破的。我特别对章节中关于“跨语言机器阅读理解”的讨论印象深刻,这让我看到了AI在打破语言障碍方面的巨大可能性。作者还引用了大量的最新研究成果,让我了解到这个领域日新月异的发展速度。读这本书的过程中,我感觉自己就像是在与一群顶尖的研究者进行一场思想的对话,他们的洞察力和创造力让我由衷赞叹。这本书不仅仅是知识的传递,更是一种思维方式的启迪,它让我开始从一个全新的角度去审视我们周围的信息世界。
《机器阅读理解》这本书,如同一位耐心的向导,引领我穿越了人工智能在文本理解领域那片广袤而复杂的森林。我之前对自然语言处理(NLP)的理解,仅限于一些皮毛,对机器如何进行真正的“理解”一直感到模糊。然而,这本书通过清晰的逻辑和丰富的示例,将那些晦涩的算法原理,如词向量、循环神经网络(RNN)、长短期记忆网络(LSTM)等,变得生动易懂。我特别对书中关于“序列到序列模型”的讲解印象深刻,它让我明白了机器如何能够将一种序列(如输入的句子)转化为另一种序列(如翻译后的句子或回答)。这一点对于机器翻译、文本摘要等任务至关重要。我之前一直觉得,机器翻译的效果之所以不稳定,是因为它们无法真正理解语言的细微之处,而读了这本书之后,我才明白,这是模型在处理长距离依赖关系和上下文信息上遇到的挑战。这本书让我看到了AI在语言理解方面的巨大进步,也让我对未来AI与人类的交流充满了信心。
坦白说,《机器阅读理解》这本书的内容深度让我有些吃惊。我原以为这会是一本概览性质的书籍,但它却深入到了机器如何进行文本分析的每一个细微之处。书中关于“实体链接”和“关系抽取”的章节,让我对机器如何从无序的文本中提取结构化信息有了前所未有的认识。我之前一直觉得,这些复杂的信息组织过程是人类独有的能力,但作者通过详细的算法讲解和实际案例,证明了机器在这方面已经取得了令人瞩目的成就。我尤其对书中关于“知识图谱”与机器阅读理解结合的讨论非常感兴趣。它让我明白了,不仅仅是文本表面的理解,机器还可以通过构建知识体系,实现更深层次的推理和判断。这一点对于未来的智能助手、内容推荐系统等应用,具有极其重要的意义。我花了很多时间去消化和理解书中关于“多模态机器阅读理解”的部分,它将文本信息与图像、视频等其他模态的信息相结合,这让我看到了AI在理解真实世界方面的巨大潜力。这本书确实非常“硬核”,需要读者有一定的耐心和基础,但如果你真的想深入了解机器如何“读懂”世界,这本书绝对是不可多得的宝藏。
《机器阅读理解》这本书,为我打开了一扇通往全新认知世界的大门。我一直以为,机器处理文本无非就是关键字匹配或者简单的语义相似度计算,但这本书彻底颠覆了我的认知。作者用一种极其细致和系统的方式,讲解了机器如何从海量的文本数据中提取信息、理解上下文、进行推理,甚至生成新的内容。我特别被书中关于“上下文感知”和“篇章理解”的章节所打动。它让我明白,机器并非孤立地处理每一个词语,而是能够理解词语在整个句子、段落乃至整篇文章中的意义。这一点对于我们理解那些含义微妙、表意含蓄的文本,尤其具有启发意义。我之前一直在困惑,为什么有些AI写作的内容会显得生硬和缺乏逻辑,读了这本书之后,我才恍然大悟,原来是它们在篇章结构和逻辑连贯性上存在不足。这本书也让我更加深入地理解了语言模型的发展历程,从早期的基于规则的方法,到如今的深度学习模型,每一步都充满了智慧的闪光。
我最近一直在思考,当我们在谈论“智能”时,到底意味着什么。《机器阅读理解》这本书,恰好触及了我内心深处的这个疑问。它不仅仅是在教我技术,更是在探讨机器如何模拟甚至超越人类的理解能力。我特别被书中关于“可解释性”的讨论所吸引。在AI领域,我们常常听到“黑箱模型”,但这本书却强调了理解模型内部决策过程的重要性。作者通过引入各种可解释性工具和方法,让我明白,我们不仅要让机器“会做”,更要让它们“说得清楚”为什么这么做。这对于建立人与AI之间的信任至关重要。书中关于“对抗性攻击”和“鲁棒性”的章节,也让我意识到了机器阅读理解在实际应用中面临的挑战。如何让机器在面对恶意干扰或不完整信息时依然能够保持稳定和准确,这是未来研究的重要方向。我感觉自己仿佛与作者一起,在探索AI的边界,也在思考AI的责任。这本书让我对AI的理解,从单纯的技术层面,升华到了哲学和伦理的层面,这绝对是我意想不到的收获。
从自然语言处理和深度学习开始介绍的,之后比较多的介绍了模型和前沿研究,应用也有
居然是微软的大佬写的,带领团队过竞赛第一,里面分析了当时会用的模型源码,学习下
从自然语言处理和深度学习开始介绍的,之后比较多的介绍了模型和前沿研究,应用也有
可以。很好的了解机器阅读理解领域的前沿并进行实战开发,非常具有应用价值吧
机器阅读理解是自然语言处理中最近一两年非常火热的技术了,学习提升下