内容简介:
《Spark MLlib机器学习:算法、源码及实战详解》以Spark 1.4.1版本源码为切入点,全面并且深入地解析Spark MLlib模块,着力于探索分布式机器学习的底层实现。
《Spark MLlib机器学习:算法、源码及实战详解》中本着循序渐进的原则,首先解析MLlib的底层实现基础:数据操作及矩阵向量计算操作,该部分是MLlib实现的基础;接着对各个机器学习算法的理论知识进行讲解,并且解析机器学习算法如何在MLlib中实现分布式计算;然后对MLlib源码进行详细的讲解;最后进行MLlib实例的讲解。相信通过《Spark MLlib机器学习:算法、源码及实战详解》的学习,读者可全面掌握Spark MLlib机器学习,能够进行MLlib实战、MLlib定制开发等。
《Spark MLlib机器学习:算法、源码及实战详解》适合大数据、Spark、数据挖掘领域的从业人员阅读,同时也为Spark开发者和大数据爱好者展现了分布式机器学习的原理和实现细节。
资源目录:
第一部分 Spark MLlib基础
第1章 Spark机器学习简介 2
1.1 机器学习介绍 2
1.2 Spark介绍 3
1.3 Spark MLlib介绍 4
第2章 Spark数据操作 6
2.1 Spark RDD操作 6
2.1.1 Spark RDD创建操作 6
2.1.2 Spark RDD转换操作 7
2.1.3 Spark RDD行动操作 14
2.2 MLlib Statistics统计操作 15
2.2.1 列统计汇总 15
2.2.2 相关系数 16
2.2.3 假设检验 18
2.3 MLlib数据格式 18
2.3.1 数据处理 18
2.3.2 生成样本 22
第3章 Spark MLlib矩阵向量 26
3.1 Breeze介绍 26
3.1.1 Breeze创建函数 27
3.1.2 Breeze元素访问及操作函数 29
3.1.3 Breeze数值计算函数 34
3.1.4 Breeze求和函数 35
3.1.5 Breeze布尔函数 36
3.1.6 Breeze线性代数函数 37
3.1.7 Breeze取整函数 39
3.1.8 Breeze常量函数 40
3.1.9 Breeze复数函数 40
3.1.10 Breeze三角函数 40
3.1.11 Breeze对数和指数函数 40
3.2 BLAS介绍 41
3.2.1 BLAS向量-向量运算 42
3.2.2 BLAS矩阵-向量运算 42
3.2.3 BLAS矩阵-矩阵运算 43
3.3 MLlib向量 43
3.3.1 MLlib向量介绍 43
3.3.2 MLlib Vector接口 44
3.3.3 MLlib DenseVector类 46
3.3.4 MLlib SparseVector类 49
3.3.5 MLlib Vectors伴生对象 50
3.4 MLlib矩阵 57
3.4.1 MLlib矩阵介绍 57
3.4.2 MLlib Matrix接口 57
3.4.3 MLlib DenseMatrix类 59
3.4.4 MLlib SparseMatrix类 64
3.4.5 MLlib Matrix伴生对象 71
3.5 MLlib BLAS 77
3.6 MLlib分布式矩阵 93
3.6.1 MLlib分布式矩阵介绍 93
3.6.2 行矩阵(RowMatrix) 94
3.6.3 行索引矩阵(IndexedRowMatrix) 96
3.6.4 坐标矩阵(CoordinateMatrix) 97
3.6.5 分块矩阵(BlockMatrix) 98
第二部分 Spark MLlib回归算法
第4章 Spark MLlib线性回归算法 102
4.1 线性回归算法 102
4.1.1 数学模型 102
4.1.2 最小二乘法 105
4.1.3 梯度下降算法 105
4.2 源码分析 106
4.2.1 建立线性回归 108
4.2.2 模型训练run方法 111
4.2.3 权重优化计算 114
4.2.4 线性回归模型 121
4.3 实例 123
4.3.1 训练数据 123
4.3.2 实例代码 123
第5章 Spark MLlib逻辑回归算法 126
5.1 逻辑回归算法 126
5.1.1 数学模型 126
5.1.2 梯度下降算法 128
5.1.3 正则化 129
5.2 源码分析 132
5.2.1 建立逻辑回归 134
5.2.2 模型训练run方法 137
5.2.3 权重优化计算 137
5.2.4 逻辑回归模型 144
5.3 实例 148
5.3.1 训练数据 148
5.3.2 实例代码 148
第6章 Spark MLlib保序回归算法 151
6.1 保序回归算法 151
6.1.1 数学模型 151
6.1.2 L2保序回归算法 153
6.2 源码分析 153
6.2.1 建立保序回归 154
6.2.2 模型训练run方法 156
6.2.3 并行PAV计算 156
6.2.4 PAV计算 157
6.2.5 保序回归模型 159
6.3 实例 164
6.3.1 训练数据 164
6.3.2 实例代码 164
第三部分 Spark MLlib分类算法
第7章 Spark MLlib贝叶斯分类算法 170
7.1 贝叶斯分类算法 170
7.1.1 贝叶斯定理 170
7.1.2 朴素贝叶斯分类 171
7.2 源码分析 173
7.2.1 建立贝叶斯分类 173
7.2.2 模型训练run方法 176
7.2.3 贝叶斯分类模型 179
7.3 实例 181
7.3.1 训练数据 181
7.3.2 实例代码 182
第8章 Spark MLlib SVM支持向量机算法 184
8.1 SVM支持向量机算法 184
8.1.1 数学模型 184
8.1.2 拉格朗日 186
8.2 源码分析 189
8.2.1 建立线性SVM分类 191
8.2.2 模型训练run方法 194
8.2.3 权重优化计算 194
8.2.4 线性SVM分类模型 196
8.3 实例 199
8.3.1 训练数据 199
8.3.2 实例代码 199
第9章 Spark MLlib决策树算法 202
9.1 决策树算法 202
9.1.1 决策树 202
9.1.2 特征选择 203
9.1.3 决策树生成