第1章 Python安装配置 1
1.1问题:Python能带来哪些优势? 2
1.2安装Python 2
1.3配置开发环境 4
1.4试运行Python 7
1.5后续思考 12
1.6小结 12
第2章 变量和数据类型 13
2.1问题:Python是如何定义变量的? 14
2.2变量 14
2.3字符串 16
2.4数字与运算符 19
2.5数据类型转换 21
2.6注释 23
2.7后续思考 23
2.8小结 23
第3章 列表和元组 25
3.1问题:如何存取更多数据? 26
3.2列表概述 26
3.3访问列表元素的方法 26
3.4对列表进行增、删、改 29
3.5统计分析列表 31
3.6组织列表 32
3.7生成列表 33
3.8元组 35
3.9后续思考 37
3.10小结 37
第4章 if语句与循环语句 38
4.1问题:Python中的控制语句有何特点? 39
4.2 if语句 39
4.3循环语句 42
4.4后续思考 46
4.5小结 46
第5章 字典和集合 47
5.1问题:当索引不好用时怎么办? 48
5.2一个简单的字典实例 48
5.3创建和维护字典 48
5.4遍历字典 50
5.5集合 51
5.6列表、元组、字典和集合的异同 53
5.7迭代器和生成器 53
5.8后续思考 55
5.9小结 55
第6章 函数 57
6.1问题:如何实现代码共享? 58
6.2创建和调用函数 58
6.3传递参数 60
6.4返回值 62
6.5传递任意数量的参数 63
6.6 lambda函数 65
6.7生成器函数 66
6.8把函数放在模块中 66
6.9后续思考 70
6.10小结 70
第7章 面向对象编程 71
7.1问题:如何实现不重复造轮子? 72
7.2类与实例 72
7.3继承 76
7.4把类放在模块中 77
7.5标准库 78
7.6包 83
7.7实例1:使用类和包 84
7.8实例2:银行ATM机系统 86
7.9后续思考 89
7.10小结 89
第8章 文件与异常 90
8.1问题:Python如何获取文件数据? 91
8.2基本的文件操作 93
8.3目录操作 98
8.4异常处理 100
8.5后续思考 105
8.6小结 105
第9章 NumPy基础 106
9.1问题:为什么说NumPy是打开人工智能的一把钥匙? 107
9.2生成NumPy数组 107
9.3获取元素 112
9.4 NumPy的算术运算 114
9.5数组变形 116
9.6通用函数 122
9.7广播机制 124
9.8后续思考 125
9.9小结 125
第10章 Pandas基础 126
10.1问题:Pandas有哪些优势? 127
10.2 Pandas数据结构 127
10.3 Series 128
10.4 DataFrame 129
10.5后续思考 141
10.6小结 142
第11章 数据可视化 143
11.1问题:为何选择Matplotlib? 144
11.2可视化工具Matplotlib 144
11.3绘制多个子图 149
11.4 Seaborn简介 151
11.5图像处理与显示 153
11.6 Pyecharts简介 154
11.7实例:词云图 156
11.8后续思考 158
11.9小结 158
第12章 机器学习基础 159
12.1问题:机器学习如何学习? 160
12.2机器学习常用算法 160
12.3机器学习的一般流程 163
12.4机器学习常用技巧 167
12.5实例1:机器学习是如何学习的? 169
12.6实例2:用Scikit-Learn实现电信客户流失预测 172
12.7后续思考 181
12.8小结 181
第13章 神经网络 182
13.1问题:神经网络能代替传统机器学习吗? 183
13.2单层神经网络 183
13.3多层神经网络 187
13.4输出层 188
13.5损失函数 191
13.6正向传播 193
13.7误差反向传播 194
13.8实例:用Python实现手写数字的识别 198
13.9后续思考 206
13.10小结 206
第14章 用PyTorch实现神经网络 207
14.1为何选择PyTorch? 208
14.2安装配置 208
14.3 Tensor简介 212
14.4 autograd机制 214
14.5构建神经网络的常用工具 217
14.6数据处理工具 219
14.7实例1:用PyTorch实现手写数字识别 224
14.8实例2:用PyTorch解决回归问题 230
14.9小结 232
第15章 卷积神经网络 233
15.1问题:传统神经网络有哪些不足? 234
15.2卷积神经网络 234
15.3实例:用PyTorch完成图像识别任务 239
15.4后续思考 246
15.5小结 246
第16章 提升模型性能的几种技巧 247
16.1问题:为什么有些模型尝试了很多方法仍然效果不佳? 248
16.2找到合适的学习率 248
16.3正则化 249
16.4合理的初始化 252
16.5选择合适的优化器 254
16.6 GPU加速 256
16.7后续思考 258
16.8 小结 258
第17章 Keras入门 259
17.1问题:为何选择Keras架构? 260
17.2 Keras简介 262
17.3 Keras常用概念 263
17.4 Keras常用层 265
17.5神经网络核心组件 267
17.6 Keras的开发流程 270
17.7实例:Keras程序的开发流程 271
17.8后续思考 273
17.9小结 273
第18章 用Keras实现图像识别 274
18.1实例1:用自定义模型识别手写数字 275
18.2实例2:用预训练模型识别图像 283
18.3后续思考 287
18.4小结 287
第19章 用Keras实现迁移学习 288
19.1问题:如何发挥小数据的潜力? 289
19.2迁移学习简介 289
19.3迁移学习常用方法 290
19.4实例:用Keras实现迁移学习 292
19.5后续思考 301
19.6小结 301
第20章 用Keras实现风格迁移 302
20.1问题:如何捕捉图像风格? 303
20.2通道与风格 304
20.3内容损失与风格损失 306
20.4格拉姆矩阵简介 308
20.5实例:用Kreras实现风格迁移 310
20.6后续思考 320
20.7小结 320