本书从各个方面着手,帮助读者理解NLP的过程,提供了各种实战场景,结合现实项目背景,帮助读者理解NLP中的数据结构和算法以及目前主流的NLP技术与方法论,结合信息检索技术与大数据应用等流行技术,终完成对NLP的学习和掌握。
——黄英 阿里巴巴达摩院高级算法专家
目前市面上的NLP书籍,要么是针对研究人员的偏理论性的教科书,要么是针对资深工程师进一步深入了解NLP技术的高级读物。为了填补这一空白,三位来自工业界的资深NLP专家,结合真实的项目,让读者能够以快的速度掌握NLP技术的精髓。同时,穿插大量练习,可以帮助读者反复练习课本中的知识点。所有这些内容,都是为了让读者能够解决工作中遇到的实际问题,而不仅是纸上谈兵。本书通俗易懂、操作性强。
——冯是聪博士 百炼智能创始人兼CEO/人工智能与信息检索专家本书从各个方面着手,帮助读者理解NLP的过程,提供了各种实战场景,结合现实项目背景,帮助读者理解NLP中的数据结构和算法以及目前主流的NLP技术与方法论,结合信息检索技术与大数据应用等流行技术,终完成对NLP的学习和掌握。
——黄英 阿里巴巴达摩院高级算法专家
目前市面上的NLP书籍,要么是针对研究人员的偏理论性的教科书,要么是针对资深工程师进一步深入了解NLP技术的高级读物。为了填补这一空白,三位来自工业界的资深NLP专家,结合真实的项目,让读者能够以快的速度掌握NLP技术的精髓。同时,穿插大量练习,可以帮助读者反复练习课本中的知识点。所有这些内容,都是为了让读者能够解决工作中遇到的实际问题,而不仅是纸上谈兵。本书通俗易懂、操作性强。
——冯是聪博士 百炼智能创始人兼CEO/人工智能与信息检索专家
本书作者通过对现有的NLP技术以及新兴的深度学习方法进行梳理和总结,形成了自己的NLP知识体系。本书在内容上平衡了理论和技术,在每章的理论之后都配备了实践课,便于读者通过动手加深理解,避免成为只会夸夸其谈的NLP理论“专家”。本书可以帮助研究者,特别是初学者,加强对NLP的理论与技术的学习,授人以鱼的同时授人以渔,帮助读者灵活解决实际工作当中遇到的各种NLP问题。
——林亦宁七牛云AI实验室Leader/10余年人工智能和深度学习研究
技术的发展和普及,离不开教育的推动,从商业智能到大数据,再到如今的人工智能,莫不是如此。华章是IT技术图书出版领域的领军者,天善智能是IT技术在线教育领域的佼佼者,我们都在为推动IT技术在中国甚至是世界范围内的发展贡献力量。华章与天善智能结成了非常重要的战略合作伙伴关系,本书是双方合作的*本书,后续还会有更多的作品出版,希望能对大家有所帮助。
——周剑 天善智能联合创始人&咨询总监
序一
序二
前言
第1章 NLP基础 1
1.1 什么是NLP 1
1.1.1 NLP的概念 1
1.1.2 NLP的研究任务 3
1.2 NLP的发展历程 5
1.3 NLP相关知识的构成 7
1.3.1 基本术语 7
1.3.2 知识结构 9
1.4 语料库 10
1.5 探讨NLP的几个层面 11
1.6 NLP与人工智能 13
1.7 本章小结 15
第2章 NLP前置技术解析 16
2.1 搭建Python开发环境 16
2.1.1 Python的科学计算发行版——Anaconda 17
2.1.2 Anaconda的下载与安装 19
2.2 正则表达式在NLP的基本应用 21
2.2.1 匹配字符串 22
2.2.2 使用转义符 26
2.2.3 抽取文本中的数字 26
2.3 Numpy使用详解 27
2.3.1 创建数组 28
2.3.2 获取Numpy中数组的维度 30
2.3.3 获取本地数据 31
2.3.4 正确读取数据 32
2.3.5 Numpy数组索引 32
2.3.6 切片 33
2.3.7 数组比较 33
2.3.8 替代值 34
2.3.9 数据类型转换 36
2.3.10 Numpy的统计计算方法 36
2.4 本章小结 37
第3章 中文分词技术 38
3.1 中文分词简介 38
3.2 规则分词 39
3.2.1 正向最大匹配法 39
3.2.2 逆向最大匹配法 40
3.2.3 双向最大匹配法 41
3.3 统计分词 42
3.3.1 语言模型 43
3.3.2 HMM模型 44
3.3.3 其他统计分词算法 52
3.4 混合分词 52
3.5 中文分词工具——Jieba 53
3.5.1 Jieba的三种分词模式 54
3.5.2 实战之高频词提取 55
3.6 本章小结 58
第4章 词性标注与命名实体识别 59
4.1 词性标注 59
4.1.1 词性标注简介 59
4.1.2 词性标注规范 60
4.1.3 Jieba分词中的词性标注 61
4.2 命名实体识别 63
4.2.1 命名实体识别简介 63
4.2.2 基于条件随机场的命名实体识别 65
4.2.3 实战一:日期识别 69
4.2.4 实战二:地名识别 75
4.3 总结 84
第5章 关键词提取算法 85
5.1 关键词提取技术概述 85
5.2 关键词提取算法TF/IDF算法 86
5.3 TextRank算法 88
5.4 LSA/LSI/LDA算法 91
5.4.1 LSA/LSI算法 93
5.4.2 LDA算法 94
5.5 实战提取文本关键词 95
5.6 本章小结 105
第6章 句法分析 106
6.1 句法分析概述 106
6.2 句法分析的数据集与评测方法 107
6.2.1 句法分析的数据集 108
6.2.2 句法分析的评测方法 109
6.3 句法分析的常用方法 109
6.3.1 基于PCFG的句法分析 110
6.3.2 基于最大间隔马尔可夫网络的句法分析 112
6.3.3 基于CRF的句法分析 113
6.3.4 基于移进–归约的句法分析模型 113
6.4 使用Stanford Parser的PCFG算法进行句法分析 115
6.4.1 Stanford Parser 115
6.4.2 基于PCFG的中文句法分析实战 116
6.5 本章小结 119
第7章 文本向量化 120
7.1 文本向量化概述 120
7.2 向量化算法word2vec 121
7.2.1 神经网络语言模型 122
7.2.2 C&W模型 124
7.2.3 CBOW模型和Skip-gram模型 125
7.3 向量化算法doc2vec/str2vec 127
7.4 案例:将网页文本向量化 129
7.4.1 词向量的训练 129
7.4.2 段落向量的训练 133
7.4.3 利用word2vec和doc2vec计算网页相似度 134
7.5 本章小结 139
第8章 情感分析技术 140
8.1 情感分析的应用 141
8.2 情感分析的基本方法 142
8.2.1 词法分析 143
8.2.2 机器学习方法 144
8.2.3 混合分析 144
8.3 实战电影评论情感分析 145
8.3.1 卷积神经网络 146
8.3.2 循环神经网络 147
8.3.3 长短时记忆网络 148
8.3.4 载入数据 150
8.3.5 辅助函数 154
8.3.6 模型设置 155
8.3.7 调参配置 158
8.3.8 训练过程 159
8.4 本章小结 159
第9章 NLP中用到的机器学习算法 160
9.1 简介 160
9.1.1 机器学习训练的要素 161
9.1.2 机器学习的组成部分 162
9.2 几种常用的机器学习方法 166
9.2.1 文本分类 166
9.2.2 特征提取 168
9.2.3 标注 169
9.2.4 搜索与排序 170
9.2.5 推荐系统 170
9.2.6 序列学习 172
9.3 分类器方法 173
9.3.1 朴素贝叶斯Naive Bayesian 173
9.3.2 逻辑回归 174
9.3.3 支持向量机 175
9.4 无监督学习的文本聚类 177
9.5 文本分类实战:中文垃圾邮件分类 180
9.5.1 实现代码 180
9.5.2 评价指标 187
9.6 文本聚类实战:用K-means对豆瓣读书数据聚类 190
9.7 本章小结 194
第10章 基于深度学习的NLP算法 195
10.1 深度学习概述 195
10.1.1 神经元模型 196
10.1.2 激活函数 197
10.1.3 感知机与多层网络 198
10.2 神经网络模型 201
10.3 多输出层模型 203
10.4 反向传播算法 204
10.5 最优化算法 208
10.5.1 梯度下降 208
10.5.2 随机梯度下降 209
10.5.3 批量梯度下降 210
10.6 丢弃法 211
10.7 激活函数 211
10.7.1 tanh函数 212
10.7.2 ReLU函数 212
10.8 实现BP算法 213
10.9 词嵌入算法 216
10.9.1 词向量 217
10.9.2 word2vec简介 217
10.9.3 词向量模型 220
10.9.4 CBOW和Skip-gram模型 222
10.1
链接: https://pan.baidu.com/s/1SEyzjdL2OfMdLhZCAgtgdw 提取码: i6sy
原文地址:http://blog.51cto.com/14163879/2339934