描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787115452573
在这本书中,我们首先会介绍一些与NLP相关的知识。然后,我们会探讨一些与数据科学相关的任务,通过这些任务来学习如何从零开始构建自定义的标识器和解析器。在此过程中,我们将会深度探索NLP领域的基本概念,为这一领域各种开源的Python工具和库提供具有实践意义的见解。接下来,我们将会介绍如何分析社交媒体网站,发现热门话题,进行舆情分析。zui后,我们还会介绍一些用于处理大规模文本的工具。
在阅读完本书之后,您将会对NLP与数据科学领域中的概念有一个充分的了解,并能将这些知识应用到日常工作中。
如果您是NLP或机器学习相关领域的爱好者,并有一些文本处理的经验,那么本书就是为你量身定做的。此外,这本书也是专业Python程序员快速学习NLTK库的理想选择。
通过本书,你将学会:
■ 了解自然语言的复杂性以及机器对它们的处理方式。
■ 如何利用标识化处理手段清理文本歧义,并利用分块操作更好地处理数据。
■ 探索不同标签类型的作用,并学习如何将句子标签化。
■ 如何根据自己的需要来创建自定义的解析器和标识器。
■ 如何构建出具有拼写检查、搜索、机器翻译以及问答系统等功能的实用程序。
■ 如何通过信息爬取与捕获的手段对相关数据内容进行检索。
■ 如何通过特性的提取与选取,构建出针对不同文本的分类系统。
■ 如何使用各种第三方Python库,如pandas、scikit-learn、matplotlib、gensim。
■ 如何对社交媒体网站进行分析,包括发掘热门话题、舆情分析等。
本书主要介绍如何通过NLTK库与一些Python库的结合从而实现复杂的NLP任务和机器学习应用。全书共分为10章。第1章对NLP进行了简单介绍。第2章、第3章和第4章主要介绍一些通用的预处理技术、专属于NLP领域的预处理技术以及命名实体识别技术等。第5章之后的内容侧重于介绍如何构建一些NLP应用,涉及文本分类、数据科学和数据处理、社交媒体挖掘和大规模文本挖掘等方面。
本书适合 NLP 和机器学习领域的爱好者、对文本处理感兴趣的读者、想要快速学习NLTK的zishenPython程序员以及机器学习领域的研究人员阅读。
1.1 为什么要学习NLP 2
1.2 先从Python开始吧 5
1.2.1 列表 5
1.2.2 自助功能 6
1.2.3 正则表达式 8
1.2.4 字典 9
1.2.5 编写函数 10
1.3 向NLTK迈进 11
1.4 练习 16
1.5 小结 17
第2章 文本的歧义及其清理 18
2.1 何谓文本歧义 18
2.2 文本清理 20
2.3 语句分离器 21
2.4 标识化处理 22
2.5 词干提取 23
2.6 词形还原 24
2.7 停用词移除 25
2.8 罕见词移除 26
2.9 拼写纠错 26
2.10 练习 27
2.11 小结 28
第3章 词性标注 29
3.1 何谓词性标注 29
3.1.1 Stanford标注器 32
3.1.2 深入了解标注器 33
3.1.3 顺序性标注器 35
3.1.4 Brill标注器 37
3.1.5 基于机器学习的标注器 37
3.2 命名实体识别(NER) 38
3.3 练习 40
3.4 小结 41
第4章 文本结构解析 43
4.1 浅解析与深解析 43
4.2 两种解析方法 44
4.3 为什么需要进行解析 44
4.4 不同的解析器类型 46
4.4.1 递归下降解析器 46
4.4.2 移位-归约解析器 46
4.4.3 图表解析器 46
4.4.4 正则表达式解析器 47
4.5 依存性文本解析 48
4.6 语块分解 50
4.7 信息提取 53
4.7.1 命名实体识别(NER) 53
4.7.2 关系提取 54
4.8 小结 55
第5章 NLP应用 56
5.1 构建个NLP应用 57
5.2 其他NLP应用 60
5.2.1 机器翻译 60
5.2.2 统计型机器翻译 61
5.2.3 信息检索 62
5.2.4 语音识别 64
5.2.5 文本分类 65
5.2.6 信息提取 66
5.2.7 问答系统 67
5.2.8 对话系统 67
5.2.9 词义消歧 67
5.2.10 主题建模 68
5.2.11 语言检测 68
5.2.12 光符识别 68
5.3 小结 68
第6章 文本分类 70
6.1 机器学习 71
6.2 文本分类 72
6.3 取样操作 74
6.3.1 朴素贝叶斯法 76
6.3.2 决策树 79
6.3.3 随机梯度下降法 80
6.3.4 逻辑回归 81
6.3.5 支持向量机 81
6.4 随机森林算法 83
6.5 文本聚类 83
6.6 文本中的主题建模 84
6.7 参考资料 87
6.8 小结 87
第7章 Web爬虫 88
7.1 Web爬虫 88
7.2 编写个爬虫程序 89
7.3 Scrapy库中的数据流 92
7.3.1 Scrapy库的shell 93
7.3.2 目标项 98
7.4 生成网站地图的蜘蛛程序 99
7.5 目标项管道 100
7.6 参考资料 102
7.7 小结 102
第8章 NLTK与其他Python库的搭配
运用 104
8.1 NumPy 104
8.1.1 多维数组 105
8.1.2 基本运算 106
8.1.3 从数组中提取数据 107
8.1.4 复杂矩阵运算 108
8.2 SciPy 112
8.2.1 线性代数 113
8.2.2 特征值与特征向量 113
8.2.3 稀疏矩阵 114
8.2.4 优化措施 115
8.3 pandas 117
8.3.1 读取数据 117
8.3.2 数列 119
8.3.3 列转换 121
8.3.4 噪声数据 121
8.4 matplotlib 123
8.4.1 子图绘制 123
8.4.2 添加坐标轴 124
8.4.3 散点图绘制 125
8.4.4 条形图绘制 126
8.4.5 3D绘图 126
8.5 参考资料 126
8.6 小结 127
第9章 Python中的社交媒体挖掘 128
9.1 数据收集 128
9.2 数据提取 132
9.3 地理可视化 134
9.3.1 影响力检测 135
9.3.2 Facebook 135
9.3.3 有影响力的朋友 139
9.4 小结 141
第10章 大规模文本挖掘 142
10.1 在Hadoop上使用Python的
不同方式 142
10.1.1 Python的流操作 143
10.1.2 Hive/Pig下的UDF 143
10.1.3 流封装器 143
10.2 Hadoop上的NLTK 144
10.2.1 用户定义函数
(UDF) 144
10.2.2 Python的流操作 146
10.3 Hadoop上的Scikit-learn 147
10.4 PySpark 150
10.5 小结 153
评论
还没有评论。