自然语言处理实战 利用Python理解、分析和生成文本
全新正版 极速发货
¥
61.13
6.2折
¥
99
全新
库存8件
作者(美)霍布森·莱恩,(美)科尔·霍华德,(美)汉纳斯·马克斯·哈普克
出版社人民邮电出版社
ISBN9787115540232
出版时间2020-10
装帧平装
开本16开
定价99元
货号1202129709
上书时间2024-08-07
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
霍布森·莱恩,拥有20年构建自主系统的经验,这些系统能够代表人类做出重要决策。Hobson在Talentpair训练机器完成简历的阅读和理解,以减少招聘者产生的偏见。在Aira,他帮助构建了第一个聊天机器人,为视障人士描述视觉世界。
目录
第一部分 处理文本的机器
第1章NLP概述3
1.1自然语言与编程语言3
1.2神奇的魔法4
1.2.1会交谈的机器5
1.2.2NLP中的数学5
1.3实际应用7
1.4计算机“眼”中的语言8
1.4.1锁的语言(正则表达式)9
1.4.2正则表达式9
1.4.3一个简单的聊天机器人11
1.4.4另一种方法14
1.5超空间简述17
1.6词序和语法19
1.7聊天机器人的自然语言流水线20
1.8深度处理22
1.9自然语言智商24
1.10小结26
第2章构建自己的词汇表——分词27
2.1挑战(词干还原预览)28
2.2利用分词器构建词汇表29
2.2.1点积37
2.2.2度量词袋之间的重合度37
2.2.3标点符号的处理38
2.2.4将词汇表扩展到n-gram43
2.2.5词汇表归一化48
2.3情感55
2.3.1VADER:一个基于规则的情感分析器56
2.3.2朴素贝叶斯58
2.4小结61
第3章词中的数学62
3.1词袋63
3.2向量化67
3.3齐普夫定律74
3.4主题建模76
3.4.1回到齐普夫定律79
3.4.2相关度排序80
3.4.3工具82
3.4.4其他工具83
3.4.5OkapiBM2585
3.4.6未来展望85
3.5小结85
第4章词频背后的语义87
4.1从词频到主题得分88
4.1.1TF-IDF向量及词形归并88
4.1.2主题向量89
4.1.3思想实验90
4.1.4一个主题评分算法94
4.1.5一个LDA分类器95
4.2潜在语义分析99
4.3奇异值分解103
4.3.1左奇异向量U105
4.3.2奇异值向量S106
4.3.3右奇异向量VT107
4.3.4SVD矩阵的方向107
4.3.5主题约简108
4.4主成分分析109
4.4.1三维向量上的PCA111
4.4.2回归NLP112
4.4.3基于PCA的短消息语义分析114
4.4.4基于截断的SVD的短消息语义分析116
4.4.5基于LSA的垃圾短消息分类的效果117
4.5潜在狄利克雷分布(LDiA)119
4.5.1LDiA思想120
4.5.2基于LDiA主题模型的短消息语义分析121
4.5.3LDiA+LDA=垃圾消息过滤器124
4.5.4更公平的对比:32个LdiA主题125
4.6距离和相似度127
4.7反馈及改进129
4.8主题向量的威力132
4.8.1语义搜索133
4.8.2改进135
4.9小结135
第二部分深度学习(神经网络)
第5章神经网络初步(感知机与反向传播)139
5.1神经网络的组成140
5.1.1感知机140
5.1.2数字感知机141
5.1.3认识偏置142
5.1.4误差曲面153
5.1.5不同类型的误差曲面154
5.1.6多种梯度下降算法155
5.1.7Keras:用Python实现神经网络155
5.1.8展望158
5.1.9归一化:格式化输入159
5.2小结159
第6章词向量推理(Word2vec)160
6.1语义查询与类比160
6.2词向量162
6.2.1面向向量的推理165
6.2.2如何计算Word2vec表示167
6.2.3如何使用gensim.word2vec模块175
6.2.4生成定制化词向量表示177
6.2.5Word2vec和GloVe179
6.2.6fastText180
6.2.7Word2vec和LSA180
6.2.8词关系可视化181
6.2.9非自然词187
6.2.10利用Doc2vec计算文档相似度188
6.3小结190
第7章卷积神经网络(CNN)191
7.1语义理解192
7.2工具包193
7.3卷积神经网络194
7.3.1构建块195
7.3.2步长196
7.3.3卷积核的组成196
7.3.4填充198
7.3.5学习199
7.4狭窄的窗口199
7.4.1Keras实现:准备数据201
7.4.2卷积神经网络架构206
7.4.3池化206
7.4.4dropout208
7.4.5输出层209
7.4.6开始学习(训练)211
7.4.7在流水线中使用模型212
7.4.8前景展望213
7.5小结214
第8章循环神经网络(RNN)215
8.1循环网络的记忆功能217
8.1.1随时间反向传播算法221
8.1.2不同时刻的权重更新223
8.1.3简要回顾225
8.1.4难点225
8.1.5利用Keras实现循环神经网络226
8.2整合各个部分230
8.3自我学习231
8.4超参数232
8.5预测235
8.5.1有状态性236
8.5.2双向RNN236
8.5.3编码向量238
8.6小结238
第9章改进记忆力:长短期记忆网络(LSTM)239
9.1长短期记忆(LSTM)240
9.1.1随时间反向传播247
9.1.2模型的使用250
9.1.3脏数据251
9.1.4“未知”词条的处理254
9.1.5字符级建模255
9.1.6生成聊天文字260
9.1.7进一步生成文本262
9.1.8文本生成的问题:内容不受控269
9.1.9其他记忆机制269
9.1.10更深的网络270
9.2小结271
第10章序列到序列建模和注意力机制272
10.1编码-解码架构272
10.1.1解码思想273
10.1.2似曾相识?275
10.1.3序列到序列对话276
10.1.4回顾LSTM277
10.2组装一个序列到序列的流水线278
10.2.1为序列到序列训练准备数据集278
10.2.2Keras中的序列到序列模型279
10.2.3序列编码器280
10.2.4思想解码器281
10.2.5组装一个序列到序列网络282
10.3训练序列到序列网络282
10.4使用序列到序列网络构建一个聊天机器人284
10.4.1为训练准备语料库285
10.4.2建立字符字典286
10.4.3生成独热编码训练集286
10.4.4训练序列到序列聊天机器人287
10.4.5组装序列生成模型288
10.4.6预测输出序列288
10.4.7生成回复289
10.4.8与聊天机器人交谈290
10.5增强290
10.5.1使用装桶法降低训练复杂度290
10.5.2注意力机制291
10.6实际应用292
10.7小结294
第三部分进入现实世界(现实中的NLP挑战)
第11章信息提取(命名实体识别与问答系统)297
11.1命名实体与关系297
11.1.1知识库298
11.1.2信息提取300
11.2正则模式300
11.2.1正则表达式301
11.2.2把信息提取当作机器学习里的特征提取任务302
11.3值得提取的信息303
11.3.1提取GPS位置303
11.3.2提取日期304
11.4提取人物关系(事物关系)309
11.4.1词性标注309
11.4.2实体名称标准化313
11.4.3实体关系标准化和提取314
11.4.4单词模式314
11.4.5文本分割314
11.4.6为什么split).!)函数不管用316
11.4.7使用正则表达式进行断句316
11.5现实世界的信息提取318
11.6小结319
第12章开始聊天(对话引擎)320
12.1语言技能321
12.1.1现代方法322
12.1.2混合方法326
12.2模式匹配方法327
12.2.1基于AIML的模式匹配聊天机器人328
12.2.2模式匹配的网络视图334
12.3知识方法334
12.4检索(搜索)方法336
12.4.1上下文挑战336
12.4.2基于示例检索的聊天机器人338
12.4.3基于搜索的聊天机器人341
12.5生成式方法343
12.5.1聊聊NLPIA343
12.5.2每种方法的利弊345
12.6四轮驱动345
12.7设计过程347
12.8技巧349
12.8.1用带有可预测答案的问题提问349
12.8.2要有趣350
12.8.3当其他所有方法都失败时,搜索350
12.8.4变得受欢迎350
12.8.5成为连接器351
12.8.6变得有情感351
12.9现实世界351
12.10小结352
第13章可扩展性(优化、并行化和批处理)353
13.1太多(数据)未必是好事353
13.2优化NLP算法354
13.2.1索引354
13.2.2高级索引355
13.2.3基于Annoy的高级索引357
13.2.4究竟为什么要使用近似索引361
13.2.5索引变通方法:离散化362
13.3常数级内存算法363
13.3.1gensim363
13.3.2图计算363
13.4并行化NLP计算364
13.4.1在GPU上训练NLP模型364
13.4.2租与买365
13.4.3GPU租赁选择366
13.4.4张量处理单元TPU367
13.5减少模型训练期间的内存占用367
13.6使用TensorBoard了解模型369
13.7小结372
附录A本书配套的NLP工具373
附录B有趣的Python和正则表达式380
附录C向量和矩阵(线性代数基础)385
附录D机器学习常见工具与技术391
附录E设置亚马逊云服务(AWS)上的GPU403
附录F局部敏感哈希415
资源421
词汇表428
内容摘要
本书是介绍自然语言处理(NLP)和深度学习的实战书。NLP已成为深度学习的核心应用领域,而深度学习是NLP研究和应用中的必要工具。本书分为3部分:第一部分介绍NLP基础,包括分词、TF-IDF向量化以及从词频向量到语义向量的转换;第二部分讲述深度学习,包含神经网络、词向量、卷积神经网络(CNN)、循环神经网络(RNN)、长短期记忆(LSTM)网络、序列到序列建模和注意力机制等基本的深度学习模型和方法;第三部分介绍实战方面的内容,包括信息提取、问答系统、人机对话等真实世界系统的模型构建、性能挑战以及应对方法。
本书面向中高级Python开发人员,兼具基础理论与编程实战,是现代NLP领域从业者的实用参考书。
主编推荐
Python开发人员入门自然语言处理推荐
现代自然语言处理领域从业者的实用参考指南
小米AI实验室NLP团队献译
1.本书是构建能够阅读和解释人类语言的机器的实用指南;
2.读者可以使用现有的Python 包来捕获文本的含义并相应地做出响应;
3.本书扩展了传统的自然语言处理方法,包括神经网络、现代深度学习算法和生成技术,用于解决真实世界的问题,如提取日期和名称、合成文本和回答无固定格式的问题;
4.提供源代码。
深度学习领域的近期新进展使各类应用能够极其精准地理解文本和语音。其结果是,聊天机器人能够模仿真人筛选出与职位高度匹配的简历,完成很好的预测性搜索,自动生成文档摘要——所有这些都能够以很低的成本实现。新技术的发展连同Keras 和TensorFlow之类的易用工具的出现,使专业品质的自然语言处理(NLP)比以往任何时候都更容易实现。
本书主要内容
● Keras、TensorFlow、gensim和 scikit-learn等工具的使用。
● 基于规则的自然语言处理和基于数据的自然语言处理。
● 可扩展的自然语言处理流水线。
阅读本书,读者需要对深度学习的知识有基本的了解,并具有中等水平的Python 编程技能。
媒体评论
“在这本书中,读者不仅会学到这些NLP 系统的内部运作原理,还会学到相关的理论和实践技能,并创建自己的算法或模型。”
——Arwen Griffioen 博士,Zendesk 公司
“提供了Python 中当前NLP 工具的概览。我一定会把这本书放在手边,用于我自己的NLP 工作。强烈推荐!”
——Tony Mullen,美国东北大学西雅图分校
“开启NLP 学习之旅的便捷指南。这本书包含大量编程示例,有助于读者以一种非常实用的方式学习。”
——Tommaso Teofili,Adobe 系统公司
— 没有更多了 —
以下为对购买帮助不大的评价