编辑推荐
如果你想创建适用于实际生产环境的数据科学模型,那么Java将是你的****。Java可以调用各种强大的库(例如MLlib、Weka、DL4j等)。借助这些库,你可以使用Java高效地完成各种数据科学任务。
总之,通过学习本书的内容,读者能掌握各种处理问题的方法,学会如何把数据科学知识应用到实际生产环境中,以及编写分布式数据科学应用等。本书讲解的内容将在实际工作中派上大用场。
内容简介
现如今,数据科学已经成为一个热门的技术领域,它涵盖了人工智能的各个方面,例如数据处理、信息检索、机器学习、自然语言处理、数据可视化等。而Java作为一门经典的编程语言,在数据科学领域也有着杰出的表现。
本书旨在通过Java编程来引导读者更好地完成数据科学任务。本书通过9章内容,详细地介绍了数据获取与清洗、索引的建立和检索数据、统计分析、数据学习、信息的提取、大数据处理、深度学习、数据可视化等重要主题。
本书适合想通过Java解决数据科学问题的读者,也适合数据科学领域的专业人士以及普通Java开发人员阅读。
作者简介
Rushdi Shams毕业于加拿大韦仕敦大学,获得了机器学习应用博士学位,主攻方向是自然语言处理(Natural Language Processing,NLP)。在成为机器学习与NLP领域的专家之前,他讲授本科生与研究生课程。在YouTube上,他一直运营着一个名为“跟Rushdi一起学”(Learn with Rushdi)的频道,并且做得有声有色,该频道主要面向想学习计算机技术的朋友。
目录
第 1章 获取数据与清洗数据 1
1.1 简介 2
1.2 使用Java从分层目录中提取所有文件名 3
准备工作 3
操作步骤 3
1.3 使用Apache Commons IO从多层目录中提取所有文件名 5
准备工作 5
操作步骤 5
1.4 使用Java 8从文本文件一次性读取所有内容 6
操作步骤 7
1.5 使用Apache Commons IO从文本文件一次性读取所有内容 7
准备工作 7
操作方法 8
1.6 使用Apache Tika提取PDF文本 8
准备知识 9
操作步骤 9
1.7 使用正则表达式清洗ASCII文本文件 11
操作步骤 11
1.8 使用Univocity解析CSV文件 12
准备工作 13
操作步骤 13
1.9 使用Univocity解析TSV文件 15
准备工作 15
操作步骤 16
1.10 使用JDOM解析XML文件 17
准备工作 17
操作步骤 18
1.11 使用JSON.simple编写JSON文件 20
准备工作 20
操作步骤 21
1.12 使用JSON.simple读取JSON文件 23
准备工作 24
操作步骤 24
1.13 使用JSoup从一个URL提取Web数据 26
准备工作 26
操作步骤 26
1.14 使用Selenium Webdriver从网站提取Web数据 29
准备工作 29
操作步骤 29
1.15 从MySQL数据库读取表格数据 32
准备工作 32
操作步骤 32
第 2章 为数据建立索引与搜索数据 35
2.1 简介 35
2.2 使用Apache Lucene为数据建立索引 35
准备工作 36
操作步骤 40
工作原理 47
2.3 使用Apache Lucene搜索带索引的数据 50
准备工作 50
操作步骤 51
第3章 数据统计分析 56
3.1 简介 57
3.2 生成描述性统计 59
操作步骤 59
3.3 生成概要统计 60
操作步骤 60
3.4 从多种分布生成概要统计 61
操作步骤 62
更多内容 63
3.5 计算频率分布 64
操作步骤 64
3.6 计算字符串中的词频 65
操作步骤 65
工作原理 67
3.7 使用Java 8计算字符串中的词频 67
操作步骤 67
3.8 计算简单回归 68
操作步骤 69
3.9 计算普通最小二乘回归 70
操作步骤 70
3.10 计算广义最小二乘回归 72
操作步骤 72
3.11 计算两组数据点的协方差 74
操作步骤 74
3.12 为两组数据点计算皮尔逊相关系数 75
操作步骤 75
3.13 执行配对t检验 76
操作步骤 76
3.14 执行卡方检验 77
操作步骤 78
3.15 执行单因素方差分析
(one-way ANOVA test) 79
操作步骤 79
3.16 执行K-S检验 81
操作步骤 81
第4章 数据学习Ⅰ 83
4.1 简介 83
4.2 创建与保存ARFF文件 84
操作步骤 87
4.3 对机器学习模型进行交叉验证 91
操作步骤 91
4.4 对新的测试数据进行分类 95
准备工作 95
操作步骤 96
4.5 使用过滤分类器对新测试数据分类 102
操作步骤 102
4.6 创建线性回归模型 105
操作步骤 106
4.7 创建逻辑回归模型 108
操作步骤 108
4.8 使用K均值算法对数据点
进行聚类 110
操作步骤 110
4.9 依据类别对数据进行聚类处理 113
操作方法 113
4.10 学习数据间的关联规则 116
准备工作 116
操作步骤 116
4.11 使用低层方法、过滤方法、元分类器方法选择特征/属性 118
准备工作 119
操作步骤 119
第5章 数据学习Ⅱ 125
5.1 简介 125
5.2 使用Java机器学习库(Java-ML)向数据应用机器学习 126
准备工作 126
操作步骤 128
5.3 使用斯坦福分类器对数据点分类 137
准备工作 137
操作步骤 140
工作原理 141
5.4 使用MOA对数据点分类 142
准备工作 142
操作步骤 144
5.5 使用Mulan对多标签数据点进行分类 147
准备工作 147
操作步骤 150
第6章 从文本数据提取信息 154
6.1 简介 154
6.2 使用Java检测标记(单词) 155
准备工作 155
操作步骤 155
6.3 使用Java检测句子 160
准备工作 160
操作步骤 160
6.4 使用OpenNLP检测标记(单词)与句子 161
准备工作 162
操作步骤 163
6.5 使用Stanford CoreNLP从标记中提取词根、词性,以及
识别命名实体 167
准备工作 167
操作步骤 169
6.6 使用Java 8借助余弦相似性测度测量文本相似度 171
准备工作 172
操作步骤 172
6.7 使用Mallet从文本文档提取主题 176
准备工作 177
操作步骤 179
6.8 使用Mallet对文本文档进行分类 184
准备工作 184
操作步骤 185
6.9 使用Weka对文本文档进行分类 189
准备工作 190
操作步骤 191
第7章 处理大数据 194
7.1 简介 194
7.2 使用Apache Mahout训练在线逻辑回归模型 195
准备工作 195
操作步骤 198
7.3 使用Apache Mahout应用在线逻辑回归模型 202
准备工作 202
操作步骤 203
7.4 使用Apache Spark解决简单的文本挖掘问题 207
准备工作 208
操作步骤 210
7.5 使用MLib的K均值算法做聚类 214
准备工作 214
操作步骤 214
7.6 使用MLib创建线性回归模型 217
准备工作 217
操作步骤 218
7.7 使用MLib的随机森林模型对数据点进行分类 222
准备工作 222
操作步骤 223
第8章 数据深度学习 229
8.1 简介 229
8.2 使用DL4j创建Word2vec神经网络 241
操作方法 241
工作原理 243
更多内容 246
8.3 使用DL4j创建深度信念神经网络 246
操作步骤 246
工作原理 250
8.4 使用DL4j创建深度自动编码器 254
操作步骤 254
工作原理 256
第9章 数据可视化 259
9.1 简介 259
9.2 绘制2D正弦曲线 260
准备工作 260
操作步骤 262
9.3 绘制直方图 266
准备工作 266
操作步骤 268
9.4 绘制条形图 273
准备工作 274
操作步骤 275
9.5 绘制箱线图或箱须图 279
准备工作 279
操作步骤 281
9.6 绘制散点图 285
准备工作 285
操作步骤 286
9.7 绘制甜圈图 289
准备工作 289
操作步骤 290
9.8 绘制面积图 294
准备工作 294
操作步骤 295
Java数据科学指南 下载 mobi epub pdf txt 电子书 格式