深度学习计算机视觉实战:卷积神经网络、Python 、TensorFlow和Kivy
作者:(埃)艾哈迈德·法齐·迦得
出版社:清华大学出版社
出版时间:2020-09-01
ISBN:9787302558224
定价:¥98.00
第1章 计算机视觉识别 1
1.1 图像识别步骤 2
1.2 特征提取 3
1.2.1 颜色直方图 4
1.2.2 GLCM 9
1.2.3 HOG 14
1.2.4 LBP 28
1.3 特征选择和缩减 30
1.3.1 过滤器方法 30
1.3.2 包装器方法 31
1.3.3 嵌入式方法 32
1.3.4 正则化 33
第2章 人工神经网络 35
2.1 人工神经网络简介 36
2.1.1 线性模型是人工神经网络的基础 36
2.1.2 绘制人工神经网络 40
2.2 调整学习率来训练ANN 43
2.2.1 过滤器示例 44
2.2.2 学习率 47
2.2.3 测试网络 49
2.3 使用向后传播优化权重 49
2.3.1 无隐藏层神经网络的向后传播 49
2.3.2 权重更新公式 52
2.3.3 为什么向后传播算法很重要 53
2.3.4 前向传递与后向传递 53
2.3.5 具有隐藏层的神经网络的向后传播 59
2.4 过拟合 68
2.4.1 基于回归示例理解正则化 70
2.4.2 模型容量/复杂性 72
2.4.3 L1正则化 74
2.5 设计ANN 76
2.5.1 示例1:无隐藏层的ANN 76
2.5.2 示例2:具有单个隐藏层的ANN 79
第3章 使用具有工程化特征的人工神经网络进行识别 83
3.1 Fruits 360数据集特征挖掘 83
3.1.1 特征挖掘 83
3.1.2 特征缩减 89
3.1.3 使用ANN进行过滤 91
3.2 ANN实现 93
3.3 工程化特征的局限性 99
3.4 工程化特征并未终结 100
第4章 人工神经网络的优化 101
4.1 优化简介 101
4.2 GA 104
4.2.1 选择最佳亲本 106
4.2.2 变化算子 107
4.2.3 示例的Python实现 109
4.3 NSGA-II 119
4.3.1 NSGA-II步骤 119
4.3.2 支配度 121
4.3.3 拥挤距离 126
4.3.4 竞赛选择 128
4.3.5 交叉 129
4.3.6 突变 129
4.4 使用GA优化ANN 130
第5章 卷积神经网络 143
5.1 从人工神经网络到卷积神经网络 143
5.1.1 深度学习背后的直觉 144
5.1.2 卷积的推导 147
5.1.3 设计CNN 156
5.1.4 池化操作 159
5.1.5 卷积操作示例 160
5.1.6 最大池化操作示例 162
5.2 使用NumPy从头开始构建CNN 163
5.2.1 读取输入图像 163
5.2.2 准备过滤器 164
5.2.3 卷积层 165
5.2.4 ReLU层 170
5.2.5 最大池化层 171
5.2.6 堆叠层 172
5.2.7 完整代码 174
第6章 TensorFlow在图像识别中的应用 183
6.1 TF简介 183
6.1.1 张量 184
6.1.2 TF Core 184
6.1.3 数据流图 185
6.1.4 使用TB的图可视化 195
6.1.5 线性模型 197
6.2 构建FFNN 203
6.2.1 线性分类 204
6.2.2 非线性分类 211
6.3 使用CNN识别CIFAR10 216
6.3.1 准备训练数据 216
6.3.2 构建CNN 218
6.3.3 训练CNN 222
6.3.4 保存已训练模型 226
6.3.5 构建和训练CNN的完整代码 226
6.3.6 准备测试数据 236
6.3.7 测试已训练的CNN模型 237
第7章 部署预训练模型 239
7.1 应用概述 239
7.2 Flask介绍 240
7.2.1 route()装饰器 241
7.2.2 add_rule_url方法 243
7.2.3 变量规则 243
7.2.4 端点 245
7.2.5 HTML表单 246
7.2.6 上传文件 248
7.2.7 Flask应用内的HTML 250
7.2.8 静态文件 254
7.3 部署使用Fruits 360数据集训练过的模型 256
7.4 部署使用CIFAR10数据集训练过的模型 263
第8章 跨平台的数据科学应用 277
8.1 Kivy简介 278
8.1.1 使用BoxLayout的基本应用 278
8.1.2 Kivy应用的生命周期 279
8.1.3 部件尺寸 282
8.1.4 网格布局 284
8.1.5 更多部件 285
8.1.6 部件树 287
8.1.7 处理事件 289
8.1.8 KV语言 291
8.2 P4A 295
8.2.1 安装Buildozer 295
8.2.2 准备buildozer.spec文件 296
8.2.3 使用Buildozer构建Android应用 298
8.3 Android上的图像识别 300
8.4 Android上的CNN 305
附录A 使用pip安装程序安装自制项目包 313