图书目录

目  录

第Ⅰ部分 PYTHON机器学习

第1章 Python 3和Jupyter Notebook入门 3

1.1 Python概述 4

1.1.1 Python编程语言的历史 4

1.1.2 Python编程语言的哲学 4

1.1.3 Python的使用范围 5

1.2 安装Python 6

1.2.1 在Linux 发行版上安装 Python 7

1.2.2 在macOS 上安装Python 7

1.3 Python模式 7

1.3.1 交互模式 7

1.3.2 脚本模式 11

1.4 Pip3工具 13

1.5 科学Python生态系统 14

1.6 Python的实现和发行版 14

1.7 Anaconda发行版 15

1.8 小结 16

第2章 NumPy入门 17

2.1 开始使用NumPy 18

2.2 Ndarray的索引 20

2.3 Ndarray的属性 22

2.4 NumPy常量 23

2.5 小结 24

第3章 数据可视化入门 25

3.1 用于创建Ndarray的NumPy例程 26

3.2 Matplotlib数据可视化 28

3.3 小结 34

第4章 Pandas入门 35

4.1 Pandas基础知识 36

4.2 Pandas中的Series 36

4.3 Pandas中的数据框架 38

4.4 在数据框架中实现数据的可视化 40

4.5 小结 46

第Ⅱ部分 机器学习方法

第5章 Scikit-learn机器学习概述 49

5.1 从数据中学习 50

5.1.1 监督式学习 50

5.1.2 无监督学习 51

5.2 机器学习系统的结构 52

5.2.1 问题理解 53

5.2.2 数据收集 53

5.2.3 数据标注和数据准备 53

5.2.4 数据整理 53

5.2.5 模型的开发、训练和评估 54

5.2.6 模型的部署 54

5.3 Scikit-Learn 55

5.4 安装Scikit-Learn 55

5.5 了解API 56

5.6 第一个Scikit-learn实验 57

5.7 小结 60

第6章 为机器学习准备数据  61

6.1 数据变量的类型 62

6.1.1 名目数据 62

6.1.2 次序数据 62

6.1.3 等距数据 63

6.1.4 等比数据 63

6.2 转换 63

6.2.1 转换名目属性 64

6.2.2 转换有序属性 66

6.3 归一化 67

6.3.1 线性函数归一化 68

6.3.2 标准缩放 69

6.4 预处理文本 70

6.4.1 准备NLTK 70

6.4.2 NLP流水线的5个步骤 71

6.4.3 词干提取和词形还原 72

6.4.4 移除停用词 73

6.4.5 准备词向量 73

6.5 预处理图像 75

6.6 小结 77

第7章 初探监督式学习方法 79

7.1 线性回归 80

7.2 逻辑回归 86

7.2.1 表达式概率的线与曲线的比较 87

7.2.1 学习参数 87

7.2.2 可视化决策边界 90

7.3 决策树 91

7.3.1 构建决策树 92

7.3.2 Python中的决策树 93

7.4 小结 96

第8章 对监督式学习进行调试 97

8.1 训练和测试过程 98

8.2 性能的衡量标准 98

8.2.1 混淆矩阵 99

8.2.2 精确率 100

8.2.3 准确率 100

8.2.3 F值 100

8.2.4 Python中的性能指标 101

8.3 交叉验证 103

8.3.1 为什么要进行交叉验证 104

8.3.2 使用Python进行交叉验证 105

8.4 ROC曲线 106

8.5 过拟合和正则化 109

8.5.1 偏差和方差 112

8.5.2 正则化 113

8.6 超参数调优 116

8.7 小结 120

第9章 再谈监督学习方法 121

9.1 朴素贝叶斯 122

9.1.1 贝叶斯定理 122

9.1.2 条件概率 123

9.1.3 朴素贝叶斯的运作方式 123

9.1.4 多项朴素贝叶斯 124

9.1.5 Python中的朴素贝叶斯 124

9.2 支持向量机 126

9.2.1 SVM的运作方式 127

9.2.2 非线性分类 128

9.2.3 SVM中的核技巧 129

9.2.4 Python中的支持向量机 130

9.3 小结 134

第10章 集成学习方法 135

10.1 Bagging算法和随机森林 136

10.2 Boosting算法 140

10.3 Stacking集成 146

10.4 小结 150

第11章 无监督学习方法 151

11.1 降维 152

11.1.1 了解维数灾难 152

11.1.2 主成分分析 153

11.1.3 Python中的主成分分析 154

11.2 聚类 157

11.2.1 使用k-均值进行聚类 158

11.2.2 Python中的k-均值 158

11.2.3 什么是正确的k 161

11.2.4 聚类之图像分割 162

11.2.5 使用DBSCAN进行聚类 165

11.3 频繁模式挖掘 168

11.3.1 购物篮分析 168

11.3.2 Python中的频繁模式挖掘  169

11.4 小结 172

第Ⅲ部分 神经网络和深度学习

第12章 神经网络和PyTorch基础 175

12.1 安装PyTorch 177

12.2  PyTorch的基础知识 177

12.2.1 创建张量 177

12.2.2 张量操作 179

12.3 感知器 181

12.4 人工神经网络 185

12.5 小结 186

第13章 前馈神经网络 187

13.1 前馈神经网络 188

13.1.1 训练神经网络 189

13.1.2 损失函数 193

13.2 使用人工神经网络进行回归 195

13.3 激活函数 198

13.3.1 ReLU 激活函数 198

13.3.2 Sigmoid 激活函数 199

13.3.3 tanh激活函数 200

13.4 多层人工神经网络 200

13.4.1 PyTorch中的神经网络(NN)类 206

13.4.2 过拟合和Dropout 208

13.5 分类手写数字 209

13.6 小结 214

第14章 卷积神经网络 215

14.1 卷积运算 216

14.2 CNN的结构 219

14.3 在PyTorch中使用卷积神经网络 221

14.4 使用CNN进行图像分类 223

14.5 卷积神经网络的深度网络 233

14.5 小结 234

第15章 循环神经网络 235

15.1 循环单元 236

15.2 RNN的类型 238

15.2.1 一对一 238

15.2.2 一对多 238

15.2.3 多对一 238

15.2.4 多对多 239

15.3 Python中的RNN 239

15.4 长短期记忆 240

15.4.1 LSTM单元 241

15.4.2 时间序列预测 242

15.5 门控循环单元 252

15.6 小结 252

第16章 项目实战 253

16.1 数据科学生命周期 254

16.2 如何提供ML应用 257

16.3 通过实践学习 258

16.3.1 定义问题 258

16.3.2 数据 259

16.3.3 准备模型 263

16.3.4 序列化模型,以便未来用于预测 268

16.3.5 托管模型 270

16.4 未来可期 271