第1章 AutoML简介 1
1.1 机器学习的范围 2
1.2 什么是AutoML 4
1.3 为什么和怎么用AutoML 10
1.4 何时需要将机器学习自动化 11
1.5 能学到什么 11
AutoML的核心环节 11
为每个环节构建原型子系统 13
组合形成端到端的AutoML系统 13
1.6 AutoML库概述 13
Featuretools 13
auto-sklearn 16
MLBox 18
TPOT 21
1.7 总结 23
第2章 Python机器学习简介 25
2.1 技术要求 26
2.2 机器学习 26
机器学习流程 27
监督学习 27
无监督学习 28
2.3 线性回归 28
什么是线性回归 28
在哪里用线性回归 31
采用什么方法实现线性回归 31
2.4 重要评估指标——回归算法 37
2.5 逻辑回归 39
什么是逻辑回归 39
在哪里使用逻辑回归 39
使用什么方法实现逻辑回归 39
2.6 重要评估指标——分类算法 44
2.7 决策树 46
什么是决策树 47
在哪里使用决策树 47
使用什么方法实现决策树 47
2.8 支持向量机 49
什么是SVM 50
在哪里使用SVM 50
使用什么方法实现SVM 50
2.9 K近邻算法 52
什么是KNN 52
在哪里使用KNN 52
使用什么方法实现KNN 52
2.10 集成方法 54
集成模型是什么 54
2.11 分类器结果对比 59
2.12 交叉验证 60
2.13 聚类 61
什么是聚类 61
在哪里使用聚类 62
用什么方法实现聚类 62
层次聚类 63
划分聚类(KMeans) 64
2.14 总结 66
第3章 数据预处理 67
3.1 技术要求 68
3.2 数据转换 68
数值型数据的转换 68
类别型数据转换 88
文本预处理 93
3.3 特征选择 97
低方差特征排除 97
单变量特征选择 99
递归特征消除 99
随机森林特征选择 100
降维特征选择 101
3.4 特征生成 103
3.5 总结 105
第4章 自动化算法选择 107
4.1 技术要求 108
4.2 计算复杂度 108
大O表示法 108
4.3 训练时间和推理时间的区别 110
训练时间和推理时间的简化度量 111
Python代码分析 113
性能统计数据可视化 114
从头开始实现KNN 116
逐行分析Python脚本 117
4.4 线性与非线性 119
画出决策边界 119
逻辑回归的决策边界 120
随机森林的决策边界 122
常用机器学习算法 123
4.5 必要特征转换 124
4.6 监督机器学习 125
auto-sklearn默认配置 126
找出产品线预测的最佳机器学习流水线 127
找出网络异常检测的最佳机器学习流水线 131
4.7 无监督AutoML 132
常用聚类算法 132
使用skleam创建样本数据集 133
k-means算法实践 137
DBSCAN算法实践 141
凝聚聚类算法实践 143
无监督学习的简单自动化 144
高维数据集视觉化 147
主成分分析实践 149
t-SNE实践 152
简单成分叠加以改善流水线 155
4.8 总结 157
第5章 超参数优化 159
5.1 技术要求 160
5.2 超参数 161
5.3 热启动 173
5.4 贝叶斯超参数优化 174
5.5 示例系统 175
5.6 总结 178
第6章 创建AutoML流水线 179
6.1 技术要求 180
6.2 机器学习流水线简介 180
6.3 简单的流水线 182
6.4 函数转换器 184
6.5 复杂流水线 187
6.6 总结 190
第7章 深度学习探究 191
7.1 技术要求 192
7.2 神经网络概览 192
神经元 194
激活函数 194
7.3 使用Keras的前馈神经网络 198
7.4 自编码器 201
7.5 卷积神经网络 205
为什么使用CNN 206
什么是卷积 206
什么是过滤器 206
卷积层 207
ReLU层 207
池化层 207
全连接层 208
7.6 总结 210
第8章 机器学习和数据科学项目的重点 211
8.1 机器学习搜索 211
8.2 机器学习的权衡 221
8.3 典型数据科学项目的参与模型 222
8.4 参与模型的阶段 223
业务理解 224
数据理解 225
数据准备 226
建模 226
评估 227
部署 228
8.5 总结 228
作者简介 230
索引 231