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.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
查看完整
Nick Pentreath是Graphflow公司联合创始人。Graphflow是一家大数据和机器学习公司,专注于以用户为中心的推荐系统和客户服务智能化技术。Nick拥有金融市场、机器学习和软件开发背景,曾任职于高盛集团,之后去在线广告营销创业公司Cognitive Match Limited(伦敦)担任研究科学家,后又去非洲更大的社交网络Mxit领导数据科学与分析团队。Nick是Apache Spark项目管理委员会成员之一。
《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
^ 收 起
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
^ 收 起
Nick Pentreath是Graphflow公司联合创始人。Graphflow是一家大数据和机器学习公司,专注于以用户为中心的推荐系统和客户服务智能化技术。Nick拥有金融市场、机器学习和软件开发背景,曾任职于高盛集团,之后去在线广告营销创业公司Cognitive Match Limited(伦敦)担任研究科学家,后又去非洲更大的社交网络Mxit领导数据科学与分析团队。Nick是Apache Spark项目管理委员会成员之一。
《Spark机器学习》每章都设计了案例研究,以机器学习算法为主线,结合实例探讨了Spark 的实际应用。书中没有让人抓狂的数据公式,而是从准备和正确认识数据开始讲起,全面涵盖了推荐系统、回归、聚类、降维等经典的机器学习算法及其实际应用。
比价列表