书籍详情
深度学习实战之PaddlePaddle
作者:潘志宏,王培彬,万智萍,邱泽敏 著
出版社:人民邮电出版社
出版时间:2019-06-01
ISBN:9787115503329
定价:¥69.00
购买这本书可以去
内容简介
内 容 提 要本书全面讲解了深度学习框架PaddlePaddle,并结合典型案例,阐述了PaddlePaddle的具体应用。本书共15章。第 1 章介绍了深度学习及其主流框架;第2章介绍了几种不同的PaddlePaddle安装方式;第3章使用MNIST数据集实现手写数字识别;第4章介绍CIFAR彩色图像识别;第5章介绍了自定义数据集的识别;第6章介绍了验证码的识别;第7章介绍了场景文字的识别;第8章实现了验证码的端到端的识别;第9~11章讲解了车牌识别、使用SSD神经网络完成目标检测;第12章和第13章介绍了Fluid、可视化工具VisualDL;第 14 章和第 15 章介绍了如何在服务器端与Android移动终端使用PaddlePaddle进行项目实践。本书适合机器学习爱好者、程序员、人工智能方面的从业人员阅读,也可以作为大专院校相关专业的师生用书和培训学校的教材。
作者简介
潘志宏,工程师,ACM会员、CCF会员。研究兴趣:机器学习(深度学习)、物联网、移动互联网。主持和参与省市级、校级项目10余项,发表论文16篇,其中EI、北大核心期刊10篇,作者论文获得北大核心期刊论文、东莞市计算机学会论文。申请发明专利、实用新型专利共6项,其中获得软件著作权3项,已出版教材2部。指导学生获得省级/市级竞赛奖项40余项,多次获得省级指导教师奖。王培彬,网名夜雨飘零,多次在省市级学科竞赛获奖,获得软件著作权4项,百度PaddlePaddle深度学习框架社区的骑士团成员,主要研究方向为计算机视觉。在CSDN博客编写我的PaddlePaddle学习之路系列文章,并在GitHub开源相关代码,并得到广泛的认可。万智萍,研究兴趣:机器学习(深度学习)、物联网、无线传感器网络,认知无线电,网络安全。主持和参与省市级、校级项目23余项,发表论文45篇,独撰发表论文32篇,其中中文核心期刊有22篇,CPCI检索4篇,获得实用新型专利12项,获得软件著作权1项,已出版教材2部。指导学生获奖共29项,获得组织先进个人奖。 邱泽敏,系统架构设计师。在机器学习、智能算法等领域有较多的理论和实践工作积累,在国内外期刊及会议发表论文10余篇,主持及作为核心人员参与各类省市、校级科研教改项目共6项, 实用新型专利1项,软件著作权1项。
目录
目 录
第 1章 深度学习 1
1.1 引言 1
1.2 深度学习框架简介 1
1.3 数学基础知识 3
1.3.1 线性代数相关知识 3
1.3.2 概率论相关知识 10
1.3.3 导数相关知识 13
1.4 简单的深度学习理论知识 14
1.5 小结 19
第 2章 PaddlePaddle的安装 20
2.1 引言 20
2.2 计算机配置 20
2.3 安装前的检查 20
2.4 使用pip安装 21
2.5 使用Docker安装 23
2.6 从源码编译并生成安装包 25
2.6.1 在本地编译并生成安装包 25
2.6.2 在Docker中编译并生成
安装包 28
2.7 编译Docker镜像 29
2.8 在Windows操作系统中安装
PaddlePaddle的方法 30
2.8.1 在Windows系统中安装
Docker容器 30
2.8.2 在Windows系统中
安装Ubuntu 35
2.8.3 在Windows 10中安装Linux
子系统 41
2.9 测试安装效果 43
2.10 小结 45
第3章 使用MNIST数据集实现手写
数字识别 46
3.1 引言 46
3.2 数据集 46
3.3 定义神经网络模型 47
3.4 开始训练模型 50
3.4.1 导入依赖包 50
3.4.2 初始化Paddle 51
3.4.3 获取训练器 51
3.4.4 开始训练 52
3.5 使用参数预测 54
3.5.1 初始化PaddlePaddle 54
3.5.2 获取训练好的参数 54
3.5.3 读取图片 54
3.5.4 开始预测 55
3.6 小结 56
第4章 CIFAR数据集中彩色图像的
识别 57
4.1 引言 57
4.2 数据集 57
4.3 定义神经网络模型 59
4.4 开始训练模型 61
4.4.1 导入依赖包 62
4.4.2 初始化Paddle 62
4.4.3 获取参数 62
4.4.4 创建训练器 63
4.4.5 开始训练 64
4.5 使用参数预测 67
4.6 使用其他神经模型 69
4.7 小结 70
第5章 自定义图像数据集的识别 72
5.1 引言 72
5.2 网络爬虫技术 72
5.2.1 网络爬虫的整体框架 72
5.2.2 URL管理器 74
5.2.3 网页下载器 75
5.2.4 网页解析器 76
5.3 网络爬虫实例 77
5.3.1 调度器的使用 79
5.3.2 URL管理器的使用 80
5.3.3 网页下载器的使用 81
5.3.4 网页解析器的使用 82
5.3.5 数据收集器的使用 83
5.3.6 运行代码 84
5.4 数据集 88
5.4.1 生成图像列表 89
5.4.2 读取数据 92
5.5 定义神经网络 96
5.6 使用PaddlePaddle开始训练 97
5.6.1 创建训练器 98
5.6.2 开始训练 99
5.7 使用PaddlePaddle预测 102
5.8 小结 104
第6章 验证码的识别 105
6.1 引言 105
6.2 数据集的获取 105
6.2.1 下载验证码 106
6.2.2 修改验证码的文件名 107
6.2.3 裁剪验证码 108
6.2.4 生成图像列表 110
6.3 读取数据 111
6.4 使用PaddlePaddle开始训练 112
6.5 使用PaddlePaddle预测 118
6.5.1 裁剪验证码 118
6.5.2 预测图像 119
6.5.3 标签转成字符 120
6.6 小结 121
第7章 场景文字识别 122
7.1 引言 122
7.2 数据集 122
7.3 定义神经网络模型 123
7.4 数据的读取 128
7.4.1 读取图像列表 128
7.4.2 生成标签字典 129
7.4.3 读取训练数据 131
7.5 训练模型 133
7.5.1 训练准备 133
7.5.2 安装libwarpctc.so库 135
7.5.3 开始训练 136
7.6 开始预测 137
7.7 小结 140
第8章 验证码端到端的识别 141
8.1 引言 141
8.2 数据集 141
8.3 生成图像列表文件 143
8.4 数据的读取 144
8.4.1 读取数据并存储成列表 144
8.4.2 生成和读取标签字典 145
8.4.3 读取训练和测试的数据 146
8.5 定义网络模型 147
8.6 生成训练器 150
8.7 定义训练 151
8.8 启动训练 152
8.9 开始预测 153
8.10 小结 156
第9章 车牌端到端的识别 157
9.1 引言 157
9.2 车牌数据的采集 157
9.2.1 车牌数据的下载 157
9.2.2 命名车牌图像 159
9.2.3 车牌定位 159
9.2.4 灰度化图像 163
9.3 数据的读取 164
9.3.1 生成列表文件 164
9.3.2 以列表方式读取数据 165
9.3.3 生成和读取标签字典 166
9.3.4 训练数据和测试数据的
读取 167
9.4 定义神经网络 169
9.5 开始训练 171
9.6 开始预测 173
9.7 小结 176
第 10章 使用VOC数据集实现目标
检测 177
10.1 引言 177
10.2 VOC数据集 177
10.2.1 下载VOC数据集 178
10.2.2 生成图像列表 179
10.3 数据预处理 180
10.4 SSD神经网络 182
10.5 训练模型 186
10.6 评估模型 189
10.7 预测数据 191
10.7.1 预测并保存预测
结果 191
10.7.2 显示画出的框 193
10.8 小结 195
第 11章 通过自定义图像数据集实现
目标检测 196
11.1 引言 196
11.2 数据集 196
11.2.1 下载车牌数据 196
11.2.2 重命名图像 197
11.3 标注数据集 198
11.3.1 安装LabelImg 198
11.3.2 使用LabelImg 198
11.3.3 生成图像列表 201
11.4 训练模型 202
11.4.1 预训练模型处理 202
11.4.2 开始训练 203
11.5 评估模型 204
11.6 预测图片 205
11.6.1 获取预测结果 205
11.6.2 显示预测结果 206
11.7 小结 208
第 12章 使用PaddlePaddle Fluid 209
12.1 引言 209
12.2 Fluid版本 209
12.3 定义神经网络 210
12.4 训练程序 212
12.4.1 定义数据 213
12.4.2 定义平均正确率 213
12.4.3 定义测试程序 213
12.4.4 定义优化方法 214
12.5 训练模型 214
12.5.1 定义调试器 215
12.5.2 获取数据 215
12.5.3 开始训练 216
12.5.4 保存预测模型 217
12.6 预测模型 217
12.7 小结 219
第 13章 可视化工具VisualDL的
使用 220
13.1 引言 220
13.2 VisualDL的介绍 220
13.3 VisualDL的安装 222
13.3.1 使用pip安装 223
13.3.2 使用源码安装 224
13.4 简单使用VisualDL 224
13.5 在PaddlePaddle中使用
VisualDL 226
13.5.1 定义VisualDL
组件 226
13.5.2 编写PaddlePaddle
代码 227
13.5.3 把数据添加到
VisualDL中 229
13.6 小结 232
第 14章 把PaddlePaddle部署到网站
服务器上 233
14.1 引言 233
14.2 开发环境 233
14.3 Flask的使用 234
14.3.1 安装Flask 234
14.3.2 测试Flask框架是否安装
成功 234
14.3.3 文件上传 235
14.4 使用PaddlePaddle预测 237
14.4.1 获取预测模型 237
14.4.2 部署PaddlePaddle 238
14.5 小结 242
第 15章 把PaddlePaddle应用到
Android手机 244
15.1 引言 244
15.2 编译PaddlePaddle库 244
15.2.1 使用Docker编译
PaddlePaddle库 244
15.2.2 使用Linux编译
PaddlePaddle库 247
15.3 MobileNet神经网络 250
15.4 训练模型 254
15.5 编写预测代码 258
15.6 合并模型 261
15.7 移植到Android 262
15.7.1 加载PaddlePaddle库 262
15.7.2 加载合并的模型 263
15.7.3 开发Android程序 263
15.8 小结 272
第 1章 深度学习 1
1.1 引言 1
1.2 深度学习框架简介 1
1.3 数学基础知识 3
1.3.1 线性代数相关知识 3
1.3.2 概率论相关知识 10
1.3.3 导数相关知识 13
1.4 简单的深度学习理论知识 14
1.5 小结 19
第 2章 PaddlePaddle的安装 20
2.1 引言 20
2.2 计算机配置 20
2.3 安装前的检查 20
2.4 使用pip安装 21
2.5 使用Docker安装 23
2.6 从源码编译并生成安装包 25
2.6.1 在本地编译并生成安装包 25
2.6.2 在Docker中编译并生成
安装包 28
2.7 编译Docker镜像 29
2.8 在Windows操作系统中安装
PaddlePaddle的方法 30
2.8.1 在Windows系统中安装
Docker容器 30
2.8.2 在Windows系统中
安装Ubuntu 35
2.8.3 在Windows 10中安装Linux
子系统 41
2.9 测试安装效果 43
2.10 小结 45
第3章 使用MNIST数据集实现手写
数字识别 46
3.1 引言 46
3.2 数据集 46
3.3 定义神经网络模型 47
3.4 开始训练模型 50
3.4.1 导入依赖包 50
3.4.2 初始化Paddle 51
3.4.3 获取训练器 51
3.4.4 开始训练 52
3.5 使用参数预测 54
3.5.1 初始化PaddlePaddle 54
3.5.2 获取训练好的参数 54
3.5.3 读取图片 54
3.5.4 开始预测 55
3.6 小结 56
第4章 CIFAR数据集中彩色图像的
识别 57
4.1 引言 57
4.2 数据集 57
4.3 定义神经网络模型 59
4.4 开始训练模型 61
4.4.1 导入依赖包 62
4.4.2 初始化Paddle 62
4.4.3 获取参数 62
4.4.4 创建训练器 63
4.4.5 开始训练 64
4.5 使用参数预测 67
4.6 使用其他神经模型 69
4.7 小结 70
第5章 自定义图像数据集的识别 72
5.1 引言 72
5.2 网络爬虫技术 72
5.2.1 网络爬虫的整体框架 72
5.2.2 URL管理器 74
5.2.3 网页下载器 75
5.2.4 网页解析器 76
5.3 网络爬虫实例 77
5.3.1 调度器的使用 79
5.3.2 URL管理器的使用 80
5.3.3 网页下载器的使用 81
5.3.4 网页解析器的使用 82
5.3.5 数据收集器的使用 83
5.3.6 运行代码 84
5.4 数据集 88
5.4.1 生成图像列表 89
5.4.2 读取数据 92
5.5 定义神经网络 96
5.6 使用PaddlePaddle开始训练 97
5.6.1 创建训练器 98
5.6.2 开始训练 99
5.7 使用PaddlePaddle预测 102
5.8 小结 104
第6章 验证码的识别 105
6.1 引言 105
6.2 数据集的获取 105
6.2.1 下载验证码 106
6.2.2 修改验证码的文件名 107
6.2.3 裁剪验证码 108
6.2.4 生成图像列表 110
6.3 读取数据 111
6.4 使用PaddlePaddle开始训练 112
6.5 使用PaddlePaddle预测 118
6.5.1 裁剪验证码 118
6.5.2 预测图像 119
6.5.3 标签转成字符 120
6.6 小结 121
第7章 场景文字识别 122
7.1 引言 122
7.2 数据集 122
7.3 定义神经网络模型 123
7.4 数据的读取 128
7.4.1 读取图像列表 128
7.4.2 生成标签字典 129
7.4.3 读取训练数据 131
7.5 训练模型 133
7.5.1 训练准备 133
7.5.2 安装libwarpctc.so库 135
7.5.3 开始训练 136
7.6 开始预测 137
7.7 小结 140
第8章 验证码端到端的识别 141
8.1 引言 141
8.2 数据集 141
8.3 生成图像列表文件 143
8.4 数据的读取 144
8.4.1 读取数据并存储成列表 144
8.4.2 生成和读取标签字典 145
8.4.3 读取训练和测试的数据 146
8.5 定义网络模型 147
8.6 生成训练器 150
8.7 定义训练 151
8.8 启动训练 152
8.9 开始预测 153
8.10 小结 156
第9章 车牌端到端的识别 157
9.1 引言 157
9.2 车牌数据的采集 157
9.2.1 车牌数据的下载 157
9.2.2 命名车牌图像 159
9.2.3 车牌定位 159
9.2.4 灰度化图像 163
9.3 数据的读取 164
9.3.1 生成列表文件 164
9.3.2 以列表方式读取数据 165
9.3.3 生成和读取标签字典 166
9.3.4 训练数据和测试数据的
读取 167
9.4 定义神经网络 169
9.5 开始训练 171
9.6 开始预测 173
9.7 小结 176
第 10章 使用VOC数据集实现目标
检测 177
10.1 引言 177
10.2 VOC数据集 177
10.2.1 下载VOC数据集 178
10.2.2 生成图像列表 179
10.3 数据预处理 180
10.4 SSD神经网络 182
10.5 训练模型 186
10.6 评估模型 189
10.7 预测数据 191
10.7.1 预测并保存预测
结果 191
10.7.2 显示画出的框 193
10.8 小结 195
第 11章 通过自定义图像数据集实现
目标检测 196
11.1 引言 196
11.2 数据集 196
11.2.1 下载车牌数据 196
11.2.2 重命名图像 197
11.3 标注数据集 198
11.3.1 安装LabelImg 198
11.3.2 使用LabelImg 198
11.3.3 生成图像列表 201
11.4 训练模型 202
11.4.1 预训练模型处理 202
11.4.2 开始训练 203
11.5 评估模型 204
11.6 预测图片 205
11.6.1 获取预测结果 205
11.6.2 显示预测结果 206
11.7 小结 208
第 12章 使用PaddlePaddle Fluid 209
12.1 引言 209
12.2 Fluid版本 209
12.3 定义神经网络 210
12.4 训练程序 212
12.4.1 定义数据 213
12.4.2 定义平均正确率 213
12.4.3 定义测试程序 213
12.4.4 定义优化方法 214
12.5 训练模型 214
12.5.1 定义调试器 215
12.5.2 获取数据 215
12.5.3 开始训练 216
12.5.4 保存预测模型 217
12.6 预测模型 217
12.7 小结 219
第 13章 可视化工具VisualDL的
使用 220
13.1 引言 220
13.2 VisualDL的介绍 220
13.3 VisualDL的安装 222
13.3.1 使用pip安装 223
13.3.2 使用源码安装 224
13.4 简单使用VisualDL 224
13.5 在PaddlePaddle中使用
VisualDL 226
13.5.1 定义VisualDL
组件 226
13.5.2 编写PaddlePaddle
代码 227
13.5.3 把数据添加到
VisualDL中 229
13.6 小结 232
第 14章 把PaddlePaddle部署到网站
服务器上 233
14.1 引言 233
14.2 开发环境 233
14.3 Flask的使用 234
14.3.1 安装Flask 234
14.3.2 测试Flask框架是否安装
成功 234
14.3.3 文件上传 235
14.4 使用PaddlePaddle预测 237
14.4.1 获取预测模型 237
14.4.2 部署PaddlePaddle 238
14.5 小结 242
第 15章 把PaddlePaddle应用到
Android手机 244
15.1 引言 244
15.2 编译PaddlePaddle库 244
15.2.1 使用Docker编译
PaddlePaddle库 244
15.2.2 使用Linux编译
PaddlePaddle库 247
15.3 MobileNet神经网络 250
15.4 训练模型 254
15.5 编写预测代码 258
15.6 合并模型 261
15.7 移植到Android 262
15.7.1 加载PaddlePaddle库 262
15.7.2 加载合并的模型 263
15.7.3 开发Android程序 263
15.8 小结 272
猜您喜欢