Spark MLlib机器学习实践

Spark MLlib机器学习实践

作者:王晓华

出版社:清华大学

出版年:2017年3月

ISBN:9787302465089

所属分类:经济金融

书刊介绍

《Spark MLlib机器学习实践》内容简介

Spark作为新兴的、应用范围广泛的大数据处理开源框架引起了广泛的关注,它吸引了大量程序设计和开发人员进行相关内容的学习与开发,其中MLlib是Spark框架使用的核心。本书是一本细致介绍SparkMLlib程序设计的图书,入门简单,示例丰富。本书分为13章,从Spark基础安装和配置开始,依次介绍MLlib程序设计基础、MLlib的数据对象构建、MLlib中RDD使用介绍,各种分类、聚类、回归等数据处理方法,然后还通过一个完整的实例,回顾了前面的学习内容,并通过代码实现了一个完整的分析过程。本书理论内容由浅而深,采取实例和理论相结合的方式,讲解细致直观,适合Spark MLlib初学者、大数据分析和挖掘人员,也适合高校和培训学习相关专业的师生教学参考。
王晓华,高校资深计算机专业讲师,主要研究方向为云计算、数据挖掘;曾主持和参与多项国家和省级科研课题,发表过多篇论文,有一项专利。

作品目录

作者简介
内容简介
前言
第1章:星星之火
1.1、大数据时代
1.2、大数据分析时代
1.3、简单、优雅、有效——这就是Spark
1.4、核心——MLlib
1.5、星星之火,可以燎原
1.6、小结
第2章:Spark安装和开发环境配置
2.1、Windows单机模式Spark安装和配置
2.1.1、Windows
7安装Java
2.1.2、Windows
7安装Scala
2.1.3、Intellij
IDEA下载和安装
2.1.4、Intellij
IDEA中Scala插件的安装
2.1.5、HelloJava——使用Intellij
IDEA创建Java程序
2.1.6、HelloScala——使用Intellij
IDEA创建Scala程序
2.1.7、最后一脚——Spark单机版安装
2.2、经典的WordCount
2.2.1、Spark实现WordCount
2.2.2、MapReduce实现WordCount
2.3、小结
第3章:RDD详解
3.1、RDD是什么
3.1.1、RDD名称的秘密
3.1.2、RDD特性
3.1.3、与其他分布式共享内存的区别
3.1.4、RDD缺陷
3.2、RDD工作原理
3.2.1、RDD工作原理图
3.2.2、RDD的相互依赖
3.3、RDD应用API详解
3.3.1、使用aggregate方法对给定的数据集进行方法设定
3.3.2、提前计算的cache方法
3.3.3、笛卡尔操作的cartesian方法
3.3.4、分片存储的coalesce方法
3.3.5、以value计算的countByValue方法
3.3.6、以key计算的countByKey方法
3.3.7、除去数据集中重复项的distinct方法
3.3.8、过滤数据的filter方法
3.3.9、以行为单位操作数据的flatMap方法
3.3.10、以单个数据为目标进行操作的map方法
3.3.11、分组数据的groupBy方法
3.3.12、生成键值对的keyBy方法
3.3.13、同时对两个数据进行处理的reduce方法
3.3.14、对数据进行重新排序的sortBy方法
3.3.15、合并压缩的zip方法
3.4、小结
第4章:MLlib基本概念
4.1、MLlib基本数据类型
4.1.1、多种数据类型
4.1.2、从本地向量集起步
4.1.3、向量标签的使用
4.1.4、本地矩阵的使用
4.1.5、分布式矩阵的使用
4.2、MLlib数理统计基本概念
4.2.1、基本统计量
4.2.2、统计量基本数据
4.2.3、距离计算
4.2.4、两组数据相关系数计算
4.2.5、分层抽样
4.2.6、假设检验
4.2.7、随机数
4.3、小结
第5章:协同过滤算法
5.1、协同过滤
5.1.1、协同过滤概述
5.1.2、基于用户的推荐
5.1.3、基于物品的推荐
5.1.4、协同过滤算法的不足
5.2、相似度度量
5.2.1、基于欧几里得距离的相似度计算
5.2.2、基于余弦角度的相似度计算
5.2.3、欧几里得相似度与余弦相似度的比较
5.2.4、第一个例子——余弦相似度实战
5.3、MLlib中的交替最小二乘法(ALS算法)
5.3.1、最小二乘法(LS算法)详解
5.3.2、MLlib中交替最小二乘法(ALS算法)详解
5.3.3、ALS算法实战
5.4、小结
第6章:MLlib线性回归理论与实战
6.1、随机梯度下降算法详解
6.1.1、道士下山的故事
6.1.2、随机梯度下降算法的理论基础
6.1.3、随机梯度下降算法实战
6.2、MLlib回归的过拟合
6.2.1、过拟合产生的原因
6.2.2、lasso回归与岭回归
6.3、MLlib线性回归实战
6.3.1、MLlib线性回归基本准备
6.3.2、MLlib线性回归实战:商品价格与消费者收入之间的关系
6.3.3、对拟合曲线的验证
6.4、小结
第7章:MLlib分类实战
7.1、逻辑回归详解
7.1.1、逻辑回归不是回归算法
7.1.2、逻辑回归的数学基础
7.1.3、一元逻辑回归示例
7.1.4、多元逻辑回归示例
7.1.5、MLlib逻辑回归验证
7.1.6、MLlib逻辑回归实例:肾癌的转移判断
7.2、支持向量机详解
7.2.1、三角还是圆
7.2.2、支持向量机的数学基础
7.2.3、支持向量机使用示例
7.2.4、使用支持向量机分析肾癌转移
7.3、朴素贝叶斯详解
7.3.1、穿裤子的男生or女生
7.3.2、贝叶斯定理的数学基础和意义
7.3.3、朴素贝叶斯定理
7.3.4、MLlib朴素贝叶斯使用示例
7.3.5、MLlib朴素贝叶斯实战:“僵尸粉”的鉴定
7.4、小结
第8章:决策树与保序回归
8.1、决策树详解
8.1.1、水晶球的秘密
8.1.2、决策树的算法基础:信息熵
8.1.3、决策树的算法基础——ID3算法
8.1.4、MLlib中决策树的构建
8.1.5、MLlib中决策树示例
8.1.6、随机雨林与梯度提升算法(GBT)
8.2、保序回归详解
8.2.1、何为保序回归
8.2.2、保序回归示例
8.3、小结
第9章:MLlib中聚类详解
9.1、聚类与分类
9.1.1、什么是分类
9.1.2、什么是聚类
9.2、MLlib中的Kmeans算法
9.2.1、什么是kmeans算法
9.2.2、MLlib中Kmeans算法示例
9.2.3、Kmeans算法中细节的讨论
9.3、高斯混合聚类
9.3.1、从高斯分布聚类起步
9.3.2、混合高斯聚类
9.3.3、MLlib高斯混合模型使用示例
9.4、快速迭代聚类
9.4.1、快速迭代聚类理论基础
9.4.2、快速迭代聚类示例
9.5、小结
第10章:MLlib中关联规则
10.1、Apriori频繁项集算法
10.1.1、啤酒与尿布
10.1.2、经典的Apriori算法
10.1.3、Apriori算法示例
10.2、FP-growth算法
10.2.1、Apriori算法的局限性
10.2.2、FP-growth算法
10.2.3、FP树示例
10.3、小结
第11章:数据降维
11.1、奇异值分解(SVD)
11.1.1、行矩阵(RowMatrix)详解
11.1.2、奇异值分解算法基础
11.1.3、MLlib中奇异值分解示例
11.2、主成分分析(PCA)
11.2.1、主成分分析(PCA)的定义
11.2.2、主成分分析(PCA)的数学基础
11.2.3、MLlib中主成分分析(PCA)示例
11.3、小结
第12章:特征提取和转换
12.1、TF-IDF
12.1.1、如何查找所要的新闻
12.1.2、TF-IDF算法的数学计算
12.1.3、MLlib中TF-IDF示例
12.2、词向量化工具
12.2.1、词向量化基础
12.2.2、词向量化使用示例
12.3、基于卡方检验的特征选择
12.3.1、“吃货”的苦恼
12.3.2、MLlib中基于卡方检验的特征选择示例
12.4、小结
第13章:MLlib实战演练——鸢尾花分析
13.1、建模说明
13.1.1、数据的描述与分析目标
13.1.2、建模说明
13.2、数据预处理和分析
13.2.1、微观分析——均值与方差的对比分析
13.2.2、宏观分析——不同种类特性的长度计算
13.2.3、去除重复项——相关系数的确定
13.3、长与宽之间的关系——数据集的回归分析
13.3.1、使用线性回归分析长与宽之间的关系
13.3.2、使用逻辑回归分析长与宽之间的关系
13.4、使用分类和聚类对鸢尾花数据集进行处理
13.4.1、使用聚类分析对数据集进行聚类处理
13.4.2、使用分类分析对数据集进行分类处理
13.5、最终的判定——决策树测试
13.5.1、决定数据集的归类——决策树
13.5.2、决定数据集归类的分布式方法——随机雨林
13.6、小结

相关推荐

微信二维码