| 作者 |
| 翁贝托·米凯卢奇 莫希特·赛瓦克 穆罕默德·礼萨·卡里姆 普拉蒂普·普贾里 |
| 丛书名 |
| 智能系统与技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782007271619 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------深度学习进阶:卷积神经网络和对象检测--------------------------- 本书介绍卷积神经网络的核心——错综复杂的细节和算法的微妙之处。主要包括卷积神经网络的高级主题和使用Keras和TensorFlow的对象检测。 ---------------------------实用卷积神经网络:运用Python实现高级深度学习模型--------------------------- 本书主要用Python语言构建CNN,主要关注如何以最佳的方式利用各种Python和深度学习库(如Keras,TensorFlow和Caffe)来构建真实世界的应用程序。从构建CNN块开始,基于最佳实践来指导你实现真实的CNN模型及解决方案。你将学习创建图像和视频的创新解决方案,以解决复杂的机器学习和计算机视觉问题。 |
| 目录 |
---------------------------深度学习进阶:卷积神经网络和对象检测--------------------------- 前言 致谢 第1章 简介和设置开发环境 1 1.1 GitHub存储库和配套网站 2 1.2 必备的数学知识 3 1.3 Python开发环境 3 1.3.1 Google Colab 4 1.3.2 Anaconda 6 1.3.3 Docker映像 14 1.3.4 你选择哪个选项 18 第2章 TensorFlow:高级主题 20 2.1 Eager Execution简介 21 2.1.1 启用Eager Execution 21 2.1.2 Eager Execution多项式拟合 22 2.1.3 应用Eager Execution 的MNIST数据分类 26 2.2 TensorFlow和Numpy兼容性 30 2.3 硬件加速 30 2.3.1 检测GPU的可用性 30 2.3.2 设备名称 31 2.3.3 显式设备使用 32 2.3.4 GPU加速器演示:矩阵乘法 33 2.3.5 MNIST示例上的GPU加速效果 34 2.4 仅特定层训练 36 2.4.1 仅特定层训练示例 37 2.4.2 层移除 40 2.5 Keras回调函数 42 2.5.1 自定义回调类 42 2.5.2 自定义回调类示例 44 2.6 模型存储与加载 47 2.6.1 手动保存权重 52 2.6.2 保存整个模型 53 2.7 数据集抽象类 53 2.7.1 遍历数据集 55 2.7.2 简单批处理 56 2.7.3 使用MNIST数据集进行简单批处理 57 2.7.4 在Eager Execution模式下使用tf.data.Dataset 60 2.8 本章小结 60 第3章 卷积神经网络的基础 61 3.1 核和过滤器 61 3.2 卷积 62 3.3 卷积示例 71 3.4 池化 77 3.5 CNN的构建基块 81 3.5.1 卷积层 82 3.5.2 池化层 83 3.5.3 叠加层 84 3.6 CNN的权重数量 84 3.6.1 卷积层 84 3.6.2 池化层 85 3.6.3 稠密层 85 3.7 CNN的示例:MNIST数据集 85 3.8 CNN学习的可视化 89 3.8.1 keras.backend.function()简介 89 3.8.2 核的作用效果 91 3.8.3 最大池化的作用效果 93 第4章 高级CNN与迁移学习 95 4.1 多通道卷积 95 4.2 初始网络的历史和基础 98 4.2.1 初始模块:初始版本 99 4.2.2 初始模块中的参数数量 100 4.2.3 具有降维功能的初始模块 100 4.3 多种成本函数:GoogLeNet 102 4.4 Keras中的初始模块示例 103 4.5 偏离:Keras中的自定义损失 106 4.6 如何使用预先训练过的网络 108 4.7 迁移学习简介 111 4.8 猫狗问题 114 4.8.1 迁移学习的经典方法 114 4.8.2 迁移学习实验 120 第5章 成本函数与风格转换 123 5.1 神经网络模型的构成 123 5.1.1 训练被视为优化问题 124 5.1.2 具体示例:线性回归 125 5.2 成本函数 126 5.2.1 数学符号 126 5.2.2 典型成本函数 127 5.3 神经风格转换 134 5.3.1 神经风格转换背后的数学原理 135 5.3.2 Keras中的图像风格转换示例 139 5.3.3 使用神经风格转换生成剪影 145 5.3.4 masking 146 第6章 对象分类简介 148 6.1 什么是对象定位 148 6.1.1 重要的可用数据集 150 6.1.2 交并比 152 6.2 一种简单的对象定位方法:滑动窗口法 153 6.3 分类和定位 159 6.4 基于区域的卷积神经网络 161 6.5 快速R-CNN 164 6.6 更快的R-CNN 165 第7章 对象定位:基于Python的实现 167 7.1 YOLO方法 167 7.1.1 YOLO工作机制 168 7.1.2 YOLOv2 170 7.1.3 YOLOv3 171 7.1.4 非极大值抑制 171 7.1.5 损失函数 172 7.2 YOLO在Python和OpenCV中的实现 173 7.2.1 YOLO的Darknet实现 173 7.2.2 应用Darknet测试对象检测 175 7.3 为特定图像训练YOLO模型 180 7.4 本章小结 181 第8章 组织学组织分类 183 8.1 数据分析和准备 184 8.2 建立模型 192 8.3 数据增强 201 8.3.1 水平和垂直移动 202 8.3.2 垂直翻转图像 203 8.3.3 随机旋转图像 204 8.3.4 图像缩放 205 8.3.5 综合操作 206 8.4 带有数据增强的VGG16 206 8.4.1 fit()函数 207 8.4.2 fit_generator()函数 207 8.4.3 train_on_batch()函数 208 8.4.4 训练网络 208 8.5 现在好好享受 209 ---------------------------实用卷积神经网络:运用Python实现高级深度学习模型--------------------------- 前言 关于作者 关于审阅者 第1章 深度神经网络概述 1 1.1 创建神经网络块 1 1.2 TensorFlow介绍 3 1.3 MNIST数据集介绍 10 1.4 Keras深度学习库概述 14 1.5 基于Keras和MNIST的手写数字识别 15 1.5.1 训练和测试数据的检索 17 1.5.2 训练数据的可视化 18 1.5.3 创建神经网络 18 1.5.4 训练神经网络 19 1.5.5 测试 19 1.6 理解反向传播 20 1.7 本章小结 23 第2章 卷积神经网络介绍 25 2.1 CNN历史 25 2.2 卷积神经网络 27 2.2.1 计算机如何解释图像 28 2.2.2 编码实现图像可视化 29 2.2.3 dropout 31 2.2.4 输入层 31 2.2.5 卷积层 32 2.2.6 池化层 34 2.3 实践示例:图像分类 35 2.4 本章小结 39 第3章 构建CNN并进行性能优化 41 3.1 CNN架构和DNN的缺点 41 3.1.1 卷积操作 44 3.1.2 池化、步长和填充操作 46 3.2 TensorFlow中的卷积和池化操作 48 3.2.1 在TensorFlow中应用池化操作 49 3.2.2 TensorFlow中的卷积操作 51 3.3 训练CNN 53 3.3.1 初始化权重和偏置 53 3.3.2 正则化 54 3.3.3 激活函数 54 3.4 创建、训练和评估第一个CNN 56 3.5 模型性能优化 73 3.5.1 隐含层数量 73 3.5.2 每个隐含层的神经元个数 74 3.5.3 批标准化 74 3.5.4 高级正则化及过拟合的避免 76 3.5.5 运用哪个优化器 79 3.5.6 内存调优 79 3.5.7 层的位置调优 80 3.5.8 综合所有操作创建第二个CNN 80 3.5.9 数据集描述和预处理 80 3.5.10 创建CNN模型 85 3.5.11 训练和评估网络 87 3.6 本章小结 90 第4章 经典的CNN模型架构 91 4.1 ImageNet介绍 91 4.2 LeNet 92 4.3 AlexNet架构 93 4.4 VGGNet架构 95 4.5 GoogLeNet架构 97 4.5.1 架构洞察 98 4.5.2 inception模块 99 4.6 ResNet架构 99 4.7 本章小结 101 第5章 转移学习 103 5.1 特征提取方法 103 5.1.1 目标数据集较小且与原始训练集相似 104 5.1.2 目标数据集较小且与原始训练集不同 105 5.1.3 目标数据集很大且与原始训练集相似 107 5.1.4 目标数据集很大且与原始训练集不同 107 5.2 转移学习示例 108 5.3 多任务学习 111 5.4 本章小结 111 第6章 CNN自编码器 113 6.1 自编码器介绍 113 6.2 卷积自编码器 114 6.3 应用 115 6.4 本章小结 116 第7章 CNN目标检测与实例分割 119 7.1 目标检测与图像分类的区别 120 7.2 传统的、非CNN的目标检测方法 124 7.3 R-CNN:CNN特征区 128 7.4 Fast R-CNN:基于区域快速识别的CNN 130 7.5 Faster R-CNN:基于快速区域生成网络的CNN 132 7.6 Mask R-CNN:CNN实例分割 135 7.7 实例分割的代码实现 137 7.7.1 创建环境 138 7.7.2 准备COCO数据集文件夹结构 139 7.7.3 在COCO数据集上运行预训练模型 139 7.8 参考文献 139 7.9 本章小结 141 第8章 GAN:使用CNN生成新图像 143 8.1 Pix2pix:基于GAN的图像翻译 144 8.1.1 CycleGAN 144 8.1.2 训练GAN模型 145 8.2 GAN的代码示例 146 8.2.1 计算损失 149 8.2.2 半监督学习和GAN 151 8.3 特征匹配 152 8.3.1 基于半监督分类的GAN示例 152 8.3.2 深度卷积GAN 158 8.4 本章小结 159 第9章 CNN和视觉模型的注意力机制 161 9.1 图像描述中的注意力机制 164 9.2 注意力类型 168 9.2.1 硬注意力 168 9.2.2 软注意力 169 9.3 运用注意力改善视觉模型 170 9.3.1 视觉CNN模型次优性能的原因 171 9.3.2 循环视觉注意力模型 174 9.4 参考文献 180 9.5 本章小结 181 |