译者序
前言
致谢
第1章 简介 1
1.1 什么是机器学习 1
1.1.1 为什么需要使用机器学习 2
1.1.2 做出数据驱动决策 3
1.1.3 定义以及关键术语 4
1.1.4 机器学习的关键任务 6
1.1.5 机器学习技术 6
1.2 机器学习框架 6
1.2.1 数据收集 7
1.2.2 数据描述 7
1.2.3 探索性数据分析 7
1.2.4 数据质量分析 8
1.2.5 数据准备 8
1.2.6 数据集成 8
1.2.7 数据整理 8
1.2.8 特征缩放和特征提取 9
1.2.9 特征选择及降维 9
1.2.10 建模 9
1.2.11 选择建模技术 9
1.2.12 构建模型 10
1.2.13 模型评估及调优 10
1.2.14 实现以及检验已经创建的模型 10
1.2.15 监督学习框架 11
1.2.16 无监督学习框架 11
1.3 性能评估 12
1.3.1 混淆矩阵 13
1.3.2 F值分析 14
1.3.3 ROC分析 15
1.3.4 Kappa统计量 15
1.3.5 度量了什么 16
1.3.6 如何度量 17
1.3.7 如何解释估计 17
1.3.8 scikit-learn中的k折交叉验证 18
1.3.9 如何选择正确的算法 18
1.4 Python机器学习环境 18
1.4.1 缺陷 20
1.4.2 缺点 20
1.4.3 NumPy库 20
1.4.4 Pandas 20
1.5 本章小结 21
1.6 参考文献 22
第2章 数据预处理 23
2.1 简介 23
2.2 特征提取和转换 24
2.2.1 特征类型 24
2.2.2 统计特征 25
2.2.3 结构化特征 27
2.2.4 特征转换 28
2.2.5 阈值化和离散化 28
2.2.6 数据操作 28
2.2.7 标准化 29
2.2.8 归一化和校准 33
2.2.9 不完整的特征 34
2.2.10 特征提取的方法 36
2.2.11 使用小波变换进行特征提取 38
2.3 降维 45
2.3.1 特征构造和选择 47
2.3.2 单变量特征选择 48
2.3.3 递归式特征消除 51
2.3.4 从模型选择特征 52
2.3.5 主成分分析 53
2.3.6 增量PCA 57
2.3.7 核PCA 58
2.3.8 邻近成分分析 59
2.3.9 独立成分分析 61
2.3.10 线性判别分析 65
2.3.11 熵 67
2.4 基于聚类的特征提取和降维 68
2.5 参考文献 75
第3章 机器学习技术 77
3.1 简介 77
3.2 什么是机器学习 78
3.2.1 理解机器学习 78
3.2.2 如何让机器学习 78
3.2.3 多学科领域 79
3.2.4 机器学习问题 80
3.2.5 机器学习的目标 80
3.2.6 机器学习的挑战 81
3.3 Python库 81
3.3.1 scikit-learn 81
3.3.2 TensorFlow 83
3.3.3 Keras 84
3.3.4 使用Keras构建模型 84
3.3.5 自然语言工具包 85
3.4 学习场景 87
3.5 监督学习算法 88
3.5.1 分类 89
3.5.2 预报、预测和回归 90
3.5.3 线性模型 90
3.5.4 感知机 98
3.5.5 逻辑回归 100
3.5.6 线性判别分析 102
3.5.7 人工神经网络 105
3.5.8 k近邻 109
3.5.9 支持向量机 113
3.5.10 决策树分类器 118
3.5.11 朴素贝叶斯 123
3.5.12 集成学习 126
3.5.13 bagging算法 127
3.5.14 随机森林 131
3.5.15 boosting算法 136
3.5.16 其他集成方法 146
3.5.17 深度学习 151
3.5.18 深度神经网络 152
3.5.19 循环神经网络 155
3.5.20 自编码器 157
3.5.21 长短期记忆网络 157
3.5.22 卷积神经网络 160
3.6 无监督学习 162
3.6.1 k均值算法 163
3.6.2 轮廓系数 165
3.6.3 异常检测 167
3.6.4 关联规则挖掘 170
3.7 强化学习 170
3.8 基于实例的学习 171
3.9 本章小结 171
3.10 参考文献 172
第4章 医疗保健分类示例 174
4.1 简介 174
4.2 脑电图信号分析 175
4.2.1 癫痫症的预测和检测 176
4.2.2 情绪识别 194
4.2.3 局灶性和非局灶性癫痫EEG信号的分类 201
4.2.4 偏头痛检测 212
4.3 EMG信号分析 217
4.3.1 神经肌肉疾病的诊断 218
4.3.2 假体控制中的EMG信号 225
4.3.3 康复机器人中的EMG信号 232
4.4 心电图信号分析 238
4.5 人类活动识别 247
4.5.1 基于传感器的人类活动识别 248
4.5.2 基于智能手机的人类活动识别 250
4.6 用于癌症检测的微阵列基因表达数据分类 256
4.7 乳腺癌检测 257
4.8 预测胎儿风险的心电图数据分类 260
4.9 糖尿病检测 263
4.10 心脏病检测 267
4.11 慢性肾脏病的诊断 270
4.12 本章小结 273
4.13 参考文献 273
第5章 其他分类示例 277
5.1 入侵检测 277
5.2 钓鱼网站检测 280
5.3 垃圾邮件检测 283
5.4 信用评分 287
5.5 信用卡欺诈检测 290
5.6 使用CNN进行手写数字识别 297
5.7 使用CNN进行Fashion-MNIST图像分类 306
5.8 使用CNN进行CIFAR图像分类 313
5.9 文本分类 321
5.10 本章小结 334
5.11 参考文献 334
第6章 回归示例 337
6.1 简介 337
6.2 股票市场价格指数收益预测 338
6.3 通货膨胀预测 356
6.4 电力负荷预测 358
6.5 风速预测 365
6.6 旅游需求预测 370
6.7 房价预测 380
6.8 单车使用情况预测 395
6.9 本章小结 399
6.10 参考文献 400
第7章 聚类示例 402
7.1 简介 402
7.2 聚类 403
7.2.1 评估聚类输出 404
7.2.2 聚类分析的应用 404
7.2.3 可能的聚类数 405
7.2.4 聚类算法种类 405
7.3 k均值聚类算法 406
7.4 k中心点聚类算法 408
7.5 层次聚类 409
7.5.1 聚集聚类算法 409
7.5.2 分裂聚类算法 412
7.6 模糊c均值聚类算法 416
7.7 基于密度的聚类算法 418
7.7.1 DBSCAN算法 418
7.7.2 OPTICS聚类算法 420
7.8 基于期望最大化的混合高斯模型聚类算法 423
7.9 贝叶斯聚类 426
7.10 轮廓分析 428
7.11 基于聚类的图像分割 430
7.12 基于聚类的特征提取 433
7.13 基于聚类的分类 439
7.14 本章小结 442
7.15 参考文献 442