更新时间:2023-09-21 10:31:02
封面
版权信息
内容简介
前言
第1章 Spark大数据分析概述
1.1 大数据时代
1.2 大数据分析的要素
1.3 简单、优雅、有效———这就是Spark
1.4 Spark 3.0核心——ML
1.5 星星之火,可以燎原
1.6 小结
第2章 Spark 3.0安装和开发环境配置
2.1 Windows 10单机模式下安装和配置Spark
2.1.1 Windows 10安装Java 8
2.1.2 Windows 10安装Scala 2.12.10
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 3.0单机版安装
2.2 经典的wordCount
2.2.1 Spark 3.0实现wordCount
2.2.2 MapReduce实现wordCount
2.3 小结
第3章 DataFrame详解
3.1 DataFrame是什么
3.1.1 DataFrame与RDD的关系
3.1.2 DataFrame理解及特性
3.1.3 DataFrame与DataSet的区别
3.1.4 DataFrame的缺陷
3.2 DataFrame工作原理
3.2.1 DataFrame工作原理图
3.2.2 宽依赖与窄依赖
3.3 DataFrame应用API和操作详解
3.3.1 创建DataFrame
3.3.2 提前计算的cache方法
3.3.3 用于列筛选的select和selectExpr方法
3.3.4 DataFrame的收集行collect方法
3.3.5 DataFrame计算行数count方法
3.3.6 DataFrame限制输出limit方法
3.3.7 除去数据集中重复项的distinct方法
3.3.8 过滤数据的filter方法
3.3.9 以整体数据为单位操作数据的flatMap方法
3.3.10 以单个数据为目标进行操作的map方法
3.3.11 分组数据的groupBy和agg方法
3.3.12 删除数据集中某列的drop方法
3.3.13 随机采样方法和随机划分方法
3.3.14 排序类型操作的sort和orderBy方法
3.3.15 DataFrame和Dataset以及RDD之间的相互转换
3.4 小结
第4章 ML基本概念
4.1 ML基本数据类型及管道技术
4.1.1 支持多种数据类型
4.1.2 管道技术
4.1.3 管道中的主要概念
4.1.4 管道的工作流程
4.1.5 Pipeline的使用
4.2 ML数理统计基本概念
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 基于用户的推荐UserCF
5.1.3 基于物品的推荐ItemCF
5.1.4 协同过滤算法的不足
5.2 相似度度量
5.2.1 基于欧几里得距离的相似度计算
5.2.2 基于余弦角度的相似度计算
5.2.3 欧几里得相似度与余弦相似度的比较
5.2.4 基于余弦相似度的用户相似度计算示例
5.3 交替最小二乘法
5.3.1 最小二乘法详解
5.3.2 ML中交替最小二乘法详解
5.3.3 ALS算法示例
5.4 小结
第6章 线性回归理论与实战
6.1 随机梯度下降算法详解
6.1.1 道士下山的故事
6.1.2 随机梯度下降算法的理论基础
6.1.3 随机梯度下降算法实战
6.2 回归的过拟合
6.2.1 过拟合产生的原因
6.2.2 Lasso回归、岭回归与ElasticNet回归
6.3 ML线性回归示例
6.3.1 线性回归程序
6.3.2 线性回归:广义线性回归
6.4 小结
第7章 分类实战
7.1 逻辑回归详解
7.1.1 逻辑回归不是回归算法
7.1.2 逻辑回归的数学基础
7.1.3 ML逻辑回归二分类示例
7.1.4 ML逻辑回归多分类示例