书籍详情

Spark和Python机器学习实战:预测分析核心方法(第2版)

Spark和Python机器学习实战:预测分析核心方法(第2版)

作者:(美)迈克尔·鲍尔斯(Michael Bowles)

出版社:人民邮电出版社

出版时间:2022-03-01

ISBN:9787115583819

定价:¥99.90

购买这本书可以去
内容简介
  本书着重介绍可以有效预测结果的两类核心算法,包括惩罚线性回归方法和集成方法,然后通过一系列的示例细节来展示针对不同的问题如何使用这些方法。全书分为7章,主要讲述算法的选择、构建预测模型时的要点等内容,并且结合Spark和Python技术,引入岩石与水雷、鲍鱼年龄问题、红酒口感、玻璃分类等经典数据集,将机器学习应用到数据预测分析中,帮助读者全面系统地掌握利用机器学习进行预测分析的基本过程,并将其应用到实际项目中。
作者简介
  迈克尔.鲍尔斯(Michael Bowles)在加利福尼亚大学伯克利分校、纽黑文大学和硅谷的黑客道场教授机器学习,为机器学习项目提供咨询,还参与了半导体检测、药品设计、金融市场交易与优化等领域许多创业公司的创办。他在麻省理工学院获得助理教授职位之后,创办并经营了两家硅谷的创业公司,目前这两家公司已上市。
目录
目录
第 1章 做预测的两类核心算法 1
1.1 为什么这两类算法如此有用 1
1.2 什么是惩罚线性回归方法 5
1.3 什么是集成方法 7
1.4 算法的选择 8
1.5 构建预测模型的步骤 10
1.5.1 构造一个机器学习问题 12
1.5.2 特征提取和特征工程 13
1.5.3 确定训练好的模型的性能 14
1.6 各章内容及其依赖关系 14
1.7 小结 16
第 2章 通过理解数据来了解问题 17
2.1 剖析一个新问题 17
2.1.1 属性和标签的不同类型决定模型的选择 19
2.1.2 新数据集的注意事项 20
2.2 分类问题:用声呐发现未爆炸的水雷 21
2.2.1 岩石与水雷数据集的物理特性 21
2.2.2 岩石与水雷数据集的统计概要 24
2.2.3 用分位数图展示异常点 26
2.2.4 类别属性的统计特征 28
2.2.5 用Python pandas对岩石与水雷数据集进行统计分析 28
2.3 对岩石与水雷数据集属性进行可视化 31
2.3.1 用平行坐标图进行可视化 31
2.3.2 对属性和标签间关系进行可视化 33
2.3.3 用热图对属性和标签的相关性进行可视化 40
2.3.4 对岩石与水雷数据集探究过程的小结 41
2.4 以因素变量进行实数值预测:鲍鱼的年龄 41
2.4.1 回归问题的平行坐标图——鲍鱼年龄问题的属性关系可视化 47
2.4.2 将相关性热图用于回归问题——鲍鱼年龄问题的属性对相关性的可视化 50
2.5 用实数值属性进行实数值预测:评估红酒口感 52
2.6 多类别分类问题:玻璃分类 59
2.7 用PySpark理解大规模数据集 63
2.8 小结 67
第3章 构建预测模型:平衡性能、复杂度和大数据 69
3.1 基本问题:理解函数逼近 69
3.1.1 使用训练数据 70
3.1.2 评估预测模型的性能 72
3.2 影响算法选择及性能的因素——复杂度及数据 72
3.2.1 简单问题和复杂问题的比较 73
3.2.2 简单模型和复杂模型的比较 75
3.2.3 影响预测算法性能的因素 79
3.2.4 选择算法:线性或者非线性 79
3.3 评测预测模型的性能 80
3.3.1 不同类型问题的性能评测 80
3.3.2 模拟部署后模型的性能 94
3.4 模型与数据的均衡 95
3.4.1 通过权衡问题复杂度、模型复杂度和数据集规模来选择模型 96
3.4.2 使用前向逐步回归来控制过拟合 97
3.4.3 评估并理解预测模型 102
3.4.4 通过惩罚回归系数来控制过拟合——岭回归 104
3.5 在超大规模数据集上用PySpark训练惩罚回归模型 113
3.6 小结 116
第4章 惩罚线性回归 117
4.1 为什么惩罚线性回归方法如此有用 117
4.1.1 模型训练足够快 118
4.1.2 有变量的重要性信息 118
4.1.3 部署时评估足够快 118
4.1.4 性能可靠 118
4.1.5 稀疏解 119
4.1.6 问题可能需要线性模型 119
4.1.7 使用集成方法的时机 119
4.2 惩罚线性回归:对线性回归进行正则化以获得最优性能 119
训练线性模型:最小化误差等 121
4.3 求解惩罚线性回归问题 126
4.3.1 理解最小角度回归及其与前向步进回归的关系 126
4.3.2 使用Glmnet:快速且通用 136
4.4 将线性回归扩展到分类问题 141
4.4.1 用惩罚回归求解分类问题 141
4.4.2 多类别分类问题的求解 145
4.4.3 理解基扩展:用线性方法求解非线性问题 145
4.4.4 将非数值属性引入线性方法 147
4.5 小结 150
第5章 用惩罚线性回归方法构建预测模型 153
5.1 惩罚线性回归的Python包 153
5.2 多变量回归:预测红酒口感 154
5.2.1 构建并测试预测红酒口感的模型 155
5.2.2 部署前在整个数据集上进行训练 158
5.3 二元分类:用惩罚线性回归探测未爆炸水雷 165
5.4 多类别分类:犯罪现场玻璃样本分类 184
5.5 用PySpark实现线性回归和分类 187
5.6 用PySpark预测红酒口感 188
5.7 用PySpark实现逻辑斯蒂回归:岩石与水雷 193
5.8 将类别变量引入PySpark模型:预测鲍鱼年龄 198
5.9 具有元参数优化的多类别逻辑斯蒂回归 202
5.10 小结 205
第6章 集成方法 207
6.1 二元决策树 207
6.1.1 如何用二元决策树进行预测 210
6.1.2 如何训练二元决策树 210
6.1.3 决策树的训练等同于分割点的选择 213
6.1.4 二元决策树的过拟合 217
6.1.5 针对分类问题和类别特征所做的修改 220
6.2 自举汇聚:投票法 221
6.2.1 投票法如何工作 221
6.2.2 投票法小结 232
6.3 梯度提升法 232
6.3.1 梯度提升法的基本原理 232
6.3.2 获取梯度提升法的最佳性能 236
6.3.3 针对多变量问题的梯度提升法 239
6.3.4 梯度提升法小结 243
6.4 随机森林法 243
6.4.1 随机森林法:投票法加随机属性子集 246
6.4.2 影响随机森林法性能的因素 246
6.4.3 随机森林法小结 248
6.5 小结 248
第7章 用Python构建集成模型 251
7.1 用Python集成方法包求解回归问题 251
7.1.1 用梯度提升法预测红酒口感 251
7.1.2 构建随机森林模型预测红酒口感 257
7.2 将非数值属性引入Python集成模型 265
7.2.1 用Python将鲍鱼性别属性编码引入梯度提升法 265
7.2.2 用梯度提升法评估性能和编码变量的重要性 267
7.2.3 用Python将鲍鱼性别属性编码引入随机森林回归 269
7.2.4 评估性能和编码变量的重要性 272
7.3 用Python集成方法求解二元分类问题 273
7.3.1 用Python梯度提升法探测未爆炸水雷 273
7.3.2 测定梯度提升分类器的性能 276
7.3.3 用Python随机森林法探测未爆炸水雷 278
7.3.4 构建随机森林模型探测未爆炸水雷 279
7.3.5 测定随机森林分类器的性能 283
7.4 用Python集成方法求解多类别分类问题 285
7.4.1 处理类别不均衡问题 286
7.4.2 用梯度提升法对玻璃进行分类 286
7.4.3 测定梯度提升模型在玻璃分类问题上的性能 291
7.4.4 用随机森林法对玻璃进行分类 292
7.4.5 测定随机森林模型在玻璃分类问题上的性能 296
7.5 用PySpark集成方法包求解回归问题 297
7.5.1 用PySpark集成方法预测红酒口感 298
7.5.2 用PySpark集成方法预测鲍鱼年龄 303
7.5.3 用PySpark集成方法区分岩石与水雷 308
7.5.4 用PySpark集成方法识别玻璃类型 312
7.6 小结 314
猜您喜欢

读书导航