
Spark机器学习
每章都设计了案例研究,以机器学习算法为主线,结合实例探讨了Spark 的实际套用。书中没有让人抓狂的数据公式,而是从準备和正确认识数据开始讲起,全面涵盖了推荐系统、回归、聚类、降维等经典的机器学习算法及其实际套用。
基本介绍
- 书名:Spark机器学习
- ISBN:978-7-115-39983-0
- 出版社:人民邮电出版社
- 开本:16开
- 正文语种:中文
- 包装:平装
- 用纸:胶版纸
- 丛书名:图灵程式设计丛书
简介
《Spark机器学习》每章都设计了案例研究,以机器学习算法为主线,结合实例探讨了Spark 的实际套用。书中没有让人抓狂的数据公式,而是从準备和正确认识数据开始讲起,全面涵盖了推荐系统、回归、聚类、降维等经典的机器学习算法及其实际套用。
目录
第1 章 Spark 的环境搭建与运行 1
1.1 Spark 的本地安装与配置 2
1.2 Spark 集群 3
1.3 Spark 编程模型 4
1.3.1 SparkContext类与SparkConf类 4
1.3.2 Spark shell 5
1.3.3 弹性分散式数据集 6
1.3.4 广播变数和累加器 10
1.4 Spark Scala 编程入门 11
1.5 Spark Java 编程入门 14
1.6 Spark Python 编程入门 17
1.7 在Amazon EC2 上运行Spark 18
1.8 小结 23
第2 章 设计机器学习系统 24
2.1 MovieStream 介绍 24
2.2 机器学习系统商业用例 25
2.2.1 个性化 26
2.2.2 目标行销和客户细分 26
2.2.3 预测建模与分析 26
2.3 机器学习模型的种类 27
2.4 数据驱动的机器学习系统的组成 27
2.4.1 数据获取与存储 28
2.4.2 数据清理与转换 28
2.4.3 模型训练与测试迴路 29
2.4.4 模型部署与整合 30
2.4.5 模型监控与反馈 30
2.4.6 批处理或实时方案的选择 31
2.5 机器学习系统架构 31
2.6 小结 33
第3 章 Spark 上数据的获取、处理与準备 34
3.1 获取公开数据集 35
3.2 探索与可视化数据 37
3.2.1 探索用户数据 38
3.2.2 探索电影数据 41
3.2.3 探索评级数据 43
3.3 处理与转换数据 46
3.4 从数据中提取有用特徵 48
3.4.1 数值特徵 48
3.4.2 类别特徵 49
3.4.3 派生特徵 50
3.4.4 文本特徵 51
3.4.5 正则化特徵 55
3.4.6 用软体包提取特徵 56
3.5 小结 57
第4 章 构建基于Spark 的推荐引擎 58
4.1 推荐模型的分类 59
4.1.1 基于内容的过滤 59
4.1.2 协同过滤 59
4.1.3 矩阵分解 60
4.2 提取有效特徵 64
4.3 训练推荐模型67
4.3.1 使用MovieLens 100k 数据集训练模型 67
4.3.2 使用隐式反馈数据训练模型 68
4.4 使用推荐模型 69
4.4.1 用户推荐 69
4.4.2 物品推荐 72
4.5 推荐模型效果的评估 75
4.5.1 均方差 75
4.5.2 K 值平均準确率 77
4.5.3 使用MLlib 内置的评估函式 81
4.6 小结 82
第5 章 Spark 构建分类模型 83
5.1 分类模型的种类 85
5.1.1 线性模型 85
5.1.2 朴素贝叶斯模型 89
5.1.3 决策树 90
5.2 从数据中抽取合适的特徵 91
5.3 训练分类模型 93
5.4 使用分类模型 95
5.5 评估分类模型的性能 96
5.5.1 预测的正确率和错误率 96
5.5.2 準确率和召回率 97
5.5.3 ROC 曲线和AUC 99
5.6 改进模型性能以及参数调优 101
5.6.1 特徵标準化 101
5.6.2 其他特徵 104
5.6.3 使用正确的数据格式 106
5.6.4 模型参数调优 107
5.7 小结 115
第6 章 Spark 构建回归模型 116
6.1 回归模型的种类 116
6.1.1 最小二乘回归 117
6.1.2 决策树回归 117
6.2 从数据中抽取合适的特徵 118
6.3 回归模型的训练和套用 123
6.4 评估回归模型的性能 125
6.4.1 均方误差和均方根误差 125
6.4.2 平均绝对误差 126
6.4.3 均方根对数误差 126
6.4.4 R-平方係数 126
6.4.5 计算不同度量下的性能 126
6.5 改进模型性能和参数调优 127
6.5.1 变换目标变数 128
6.5.2 模型参数调优 132
6.6 小结 140
第7 章 Spark 构建聚类模型 141
7.1 聚类模型的类型 142
7.1.1 K-均值聚类 142
7.1.2 混合模型 146
7.1.3 层次聚类 146
7.2 从数据中提取正确的特徵 146
7.3 训练聚类模型 150
7.4 使用聚类模型进行预测 151
7.5 评估聚类模型的性能 155
7.5.1 内部评价指标 155
7.5.2 外部评价指标 156
7.5.3 在MovieLens 数据集计算性能 156
7.6 聚类模型参数调优 156
7.7 小结 158
第8 章 Spark 套用于数据降维 159
8.1 降维方法的种类 160
8.1.1 主成分分析 160
8.1.2 奇异值分解 160
8.1.3 和矩阵分解的关係 161
8.1.4 聚类作为降维的方法 161
8.2 从数据中抽取合适的特徵 162
8.3 训练降维模型 169
8.4 使用降维模型 172
8.4.1 在LFW数据集上使用PCA投影数据 172
8.4.2 PCA 和SVD 模型的关係 173
8.5 评价降维模型 174
8.6 小结 176
第9 章 Spark 高级文本处理技术 177
9.1 处理文本数据有什幺特别之处 177
9.2 从数据中抽取合适的特徵 177
9.2.1 短语加权表示 178
9.2.2 特徵哈希 179
9.2.3 从20 新闻组数据集中提取TF-IDF 特徵 180
9.3 使用TF-IDF 模型 192
9.3.1 20 Newsgroups 数据集的文本相似度和TF-IDF 特徵 192
9.3.2 基于20 Newsgroups 数据集使用TF-IDF 训练文本分类器 194
9.4 评估文本处理技术的作用 196
9.5 Word2Vec 模型 197
9.6 小结 200
第10 章 Spark Streaming 在实时机器学习上的套用 201
10.1 线上学习 201
10.2 流处理 202
10.2.1 Spark Streaming 介绍 202
10.2.2 使用Spark Streaming 快取和容错 205
10.3 创建Spark Streaming 套用 206
10.3.1 讯息生成端 207
10.3.2 创建简单的流处理程式 209
10.3.3 流式分析 211
10.3.4 有状态的流计算213
10.4 使用Spark Streaming 进行线上学习 215
10.4.1 流回归 215
10.4.2 一个简单的流回归程式 216
10.4.3 流K-均值 220
10.5 线上模型评估 221
10.6 小结 224