原标题:新书速览|细说PyTorch深度学习:理论、算法、模型与编程实现
点击蓝字 关注我们
超详细的PyTorch深度学习入门书,100余个编程示例+6大热点案例,大咖带路,边学边实践。
本书特点:
1. 专家编撰:由资深专家精心编撰,通俗易懂,娓娓道来
2.范例丰富:100余个编程教学示例,帮你深入理解,边学习、边操练。
3. 实战应用:6大典型应用,原理与实操并重,快速掌握提升实战能力。
4 技术先进:视觉transformer模型详解,紧跟大模型核心技术。
5 易于上手:Pytorch详解并使用Python和NumPy+skLearn+Matplotlib
实现,人人都能快速上手。
6. 答疑解惑:提供配书资源文件和公众号“算法仿真在线”技术支持。
内容提要:
本书理论兼备实例,深入浅出,适合PyTorch初学者使用,也可以作为理工科院校本科生、研究生的教学用书,还可作为相关科研工程技术人员的参考书。
目录
第 1篇 基础知识 第 1章 人工智能和PyTorch 1.1人工智能和深度学习 1.1.1人工智能 1.1.2深度学习 1.2深度学习框架 1.3PyTorch 1.3.1PyTorch简介 1.3.2PyTorch的应用领域 1.3.3PyTorch的应用前景 1.4小结 第 2章 开发环境 2.1PyTorch的安装 2.2NumPy 2.2.1NumPy的安装与查看 2.2.2NumPy对象 2.2.3数组 2.2.4数学计算 2.3Matplotlib 2.3.1Matplotlib的安装和简介 2.3.2Matplotlib Figure图形对象 2.4Scikit-Learn 2.5小结 第 3章 PyTorch入门 3.1PyTorch的模块 3.1.1主要模块 3.1.2辅助模块 3.2张量 3.2.1张量的数据类型 3.2.2创建张量 3.2.3张量存储 3.2.4维度操作 3.2.5索引和切片 3.2.6张量运算 3.3torch.nn模块 3.3.1卷积层 3.3.2池化层 3.3.3激活层 3.3.4全连接层 3.4自动求导 3.5小结 第 4章 卷积网络 4.1卷积网络的原理 4.1.1卷积运算 4.1.2卷积网络与深度学习 4.2NumPy建立神经网络 4.3PyTorch建立神经网络 4.3.1建立两层神经网络 4.3.2神经网络参数更新 4.3.3自定义PyTorch的nn模块 4.3.4权重共享 4.4全连接网络 4.5小结 第 5章 经典神经网络 5.1VGGNet 5.1.1VGGNet的结构 5.1.2实现过程 5.1.3VGGNet的特点 5.1.4查看PyTorch网络结构 5.2ResNet 5.2.1ResNet的结构 5.2.2残差模块的实现 5.2.3ResNet的实现 5.2.4ResNet要解决的问题 5.3XceptionNet 5.3.1XceptionNet的结构 5.3.2XceptionNet的实现 5.4小结 第 6章 模型的保存和调用 6.1字典状态(state_dict) 6.2保存和加载模型 6.2.1使用ate_dict加载模型 6.2.2保存和加载完整模型 6.2.3保存和加载Checkpoint用于推理、继续训练 6.3一个文件保存多个模型 6.4通过设备保存和加载模型 6.5小结 第 7章 网络可视化 7.1HiddenLayer可视化 7.2PyTorchViz可视化 7.3TensorboardX可视化 7.3.1简介和安装 7.3.2使用TensorboardX 7.3.3添加数字 7.3.4添加图片 7.3.5添加直方图 7.3.6添加嵌入向量 7.4小结 第 8章 数据加载和预处理 8.1加载PyTorch库数据集 8.2加载自定义数据集 8.2.1下载并查看数据集 8.2.2定义数据集类 8.3预处理 8.4小结 第 9章 数据增强 9.1数据增强的概念 9.1.1常见的数据增强方法 9.1.2常用的数据增强库 9.2数据增强的实现 9.2.1中心裁剪 9.2.2随机裁剪 9.2.3缩放 9.2.4水平翻转 9.2.5垂直翻转 9.2.6随机角度旋转 9.2.7色度、亮度、饱和度、对比度的变化 9.2.8随机灰度化 9.2.9将图形加上padding 9.2.10指定区域擦除 9.2.11伽马变换 9.3小结 第 2篇 高级应用 第 10章 图像分类 10.1CIFAR10数据分类 10.1.1定义网络训练数据 10.1.2验证训练结果 10.2数据集划分 10.3猫狗分类实战 10.3.1猫狗数据预处理 10.3.2建立网络猫狗分类 10.4小结 第 11章 迁移学习 11.1定义和方法 11.2蚂蚁和蜜蜂分类实战 11.2.1加载数据 11.2.2定义训练方法 11.2.3可视化预测结果 11.2.4迁移学习方法一:微调网络 11.2.5迁移学习方法二:特征提取器 11.3小结 第 12章 人脸检测和识别 12.1人脸检测 12.1.1定义和研究现状 12.1.2经典算法 12.1.3应用领域 12.2人脸识别 12.2.1定义和研究现状 12.2.2经典算法 12.2.3应用领域 12.3人脸检测与识别实战 12.3.1Dlib人脸检测 12.3.2基于MTCNN的人脸识别 12.4小结 第 13章 生成对抗网络 13.1生成对抗网络简介 13.2数学模型 13.3生成手写体数字图片实战 13.3.1基本网络结构 13.3.2准备数据 13.3.3定义网络和训练 13.3.4生成结果分析 13.4生成人像图片实战 13.4.1DCGAN简介 13.4.2数据准备 13.4.3生成对抗网络的实现 13.5小结 第 14章 目标检测 14.1目标检测概述 14.1.1传统目标检测算法的研究现状 14.1.2深度学习目标检测算法的研究现状 14.1.3应用领域 14.2检测算法模型 14.2.1传统的目标检测模型 14.2.2基于深度学习的目标检测模型 14.3目标检测的基本概念 14.3.1IoU 14.3.2NMS 14.4Faster R-CNN目标检测 14.4.1网络原理 14.4.2实战 14.5小结 第 15章 图像风格迁移 15.1风格迁移概述 15.2固定风格固定内容的迁移 15.2.1固定风格固定内容迁移的原理 15.2.2PyTorch实现固定风格迁移 15.3快速风格迁移 15.3.1快速迁移模型的原理 15.3.2PyTorch实现快速风格迁移 15.4小结 第 16章 ViT 16.1ViT详解 16.1.1Transformer模型中的Attention注意力机制 16.1.2视觉Transformer模型详解 16.2ViT图像分类实战 16.2.1数据准备 16.2.2定义ViT模型 16.2.3定义工具函数 16.2.4定义训练过程 16.2.5运行结果 16.3小结 参考文献 作者简介
凌峰,毕业于中国科学院大学,博士,从事机器学习、人工智能、图像处理和计算视觉的研究 与开发工作多年,发表多篇论文,拥有丰富的机器学习算法实现经验。
丁麒文,研究生毕业,主要从事图像处理、机器学习、人工智能和机器视觉领域的研究工作, 熟练运用基于Pytorch、TensorFlow等深度学习框架实现相关图像处理算法,并发表了多篇论文 。
推荐阅读:
本文摘自《细说PyTorch深度学习:理论、算法、模型与编程实现》,获出版社和作者授权发布。