猜你喜欢
PyTorch深度学习简明实战

PyTorch深度学习简明实战

书籍作者:日月光华 ISBN:9787302619840
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:8234
创建日期:2023-05-11 发布日期:2023-05-11
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

本书针对深度学习及开源框架——PyTorch,采用简明的语言进行知识的讲解,注重实战。全书分为4篇,共19章。深度学习基础篇(第1章~第6章)包括PyTorch简介与安装、机器学习基础与线性回归、张量与数据类型、分类问题与多层感知器、多层感知器模型与模型训练、梯度下降法、反向传播算法与内置优化器。计算机视觉篇(第7章~第14章)包括计算机视觉与卷积神经网络、卷积入门实例、图像读取与模型保存、多分类问题与卷积模型的优化、迁移学习与数据增强、经典网络模型与特征提取、图像定位基础、图像语义分割。自然语言处理和序列篇(第15章~第17章)包括文本分类与词嵌入、循环神经网络与一维卷积神经网络、序列预测实例。生成对抗网络和目标检测篇(第18章~第19章)包括生成对抗网络、目标检测。

本书适合人工智能行业的软件工程师、对人工智能感兴趣的学生学习,同时也可作为深度学习的培训教程。


作者简介

日月光华:

网易云课堂资深讲师,经验丰富的数据科学家和深度学习算法工程师。擅长使用Python编程,编写爬虫并利用Python进行数据分析和可视化。对机器学习和深度学习有深入理解,熟悉常见的深度学习框架( PyTorch、TensorFlow)和模型,有丰富的深度学习、数据分析和爬虫等开发经验,著有畅销书《Python网络爬虫实例教程(视频讲解版)》。


前言

前言Preface


本书内容


本书由浅入深,从深度学习基础、PyTorch的安装和环境搭建讲起,用详细的实例演示了PyTorch 解决各类深度学习问题的方法,另外还讲解了回归问题、张量基础、多层感知器、卷积基础和卷积模型、迁移学习和数据增强、经典网络模型、图像定位、图像语义分割、目标识别、循环神经网络和文本分类、一维卷积模型、序列预测、生成对抗网络等内容。同时,本书在阐明深度学习基本原理的基础上,着重对解决各类问题的代码实现做了全面而具体的讲解。笔者希望读者在阅读完本书后,能够学会使用PyTorch编写代码解决各类深度学习问题。


全书分为4篇,共19章。


深度学习基础篇(第1章~第6章):

第1章:简要介绍PyTorch并详细演示环境配置和安装。

第2章:讲解机器学习基础,并使用一个简单的线性回归例子演示用PyTorch创建、训练模型的整个流程。

第3章:讲解张量创建、张量类型、张量运算、张量自动微分等基础知识。

第4章:讲解多层感知器和激活函数等基本概念,演示如何加载内置数据集。

第5章:演示一个完整的多层感知器模型训练的示例。

第6章:讲解梯度下降法、反向传播算法及内置优化器,介绍学习速率的概念。


计算机视觉篇(第7章~第14章):

第7章:讲解卷积神经网络和池化层的原理,对卷积神经网络的整体架构做了解析。

第8章:演示如何定义一个简单的卷积模型,讲解超参数的选择原则。

第9章:演示图片二分类卷积模型,涉及加载图片数据集、保存和加载模型权重、保存和恢复检查点等。

第10章:演示图片分类实例,重点讲解自定义Dataset类创建输入、Dropout抑制过拟合、批标准化以及学习速率衰减等模型优化方法。

第11章:讲解迁移学习、数据增强和微调。

第12章:讲解经典网络模型,包括VGG、ResNet、Inception、DenseNet等,并介绍TensorBoard可视化和提取预训练模型特征的方法。

第13章:讲解图像定位原理和实现。

第14章:讲解图像语义分割,演示使用U-Net模型实现图像语义分割。


自然语言处理和序列篇(第15章~第17章):

第15章:讲解文本处理的基础知识,演示文本分类的基础模型,讨论文本分类模型参数初始化的方法。

第16章:讲解循环神经网络和一维卷积神经网络。

第17章:演示长短期记忆网络处理序列预测的实例。


生成对抗网络和目标检测篇(第18章~第19章):

第18章:讲解生成对抗网络的概念和应用,并带领读者实现基础GAN和DCGAN。

第19章:介绍目标检测的概念及常用目标检测算法,重点介绍如何使用PyTorch目标检测模块处理目标检测任务、如何使用torchvision预训练检测模型在自行标注的图片上进行训练等。


创作背景

PyTorch自发布以来,已经成为深度学习领域最受欢迎的框架之一。目前,在学术研究和科研工作中,PyTorch是使用最多、最受关注的深度学习框架,而且这种受欢迎的趋势还在上升;在工业应用中,PyTorch也受到了越来越多公司的青睐。PyTorch拥有活跃的社区和大量的贡献者,各类深度学习问题都有利用PyTorch实现的,解决方案在GitHub上开源,同时大部分的论文采用了PyTorch 作为论文实现的工具。基于这种趋势,笔者编写了本书,以满足包括高校教师和学生在内的各类开发人员快速入门深度学习和掌握PyTorch 的需求。


读者对象


本书适合无深度学习基础的读者、对深度学习感兴趣的读者学习,同时本书也可作为深度学习的培训教材。读者通过学习本书可以快速入门深度学习并掌握PyTorch。本书适合的目标读者对象包括但不限于以下相关人员。

人工智能行业的软件工程师。

对人工智能感兴趣的读者。相关专业从业人员。

机器学习、计算机学科相关专业的学生。


读者服务


示例代码。

学习视频。


读者可以通过扫码访问本书专享资源官网,获取示例代码、学习视频,加入读者群,下载最新学习资源或反馈书中的问题。



勘误和支持

由于笔者水平有限,书中难免会有疏漏和不妥之处,恳请广大读者批评指正。








目录

目 录

第1篇 深度学习基础篇

第1 章 PyTorch 简介与安装 ................. 2

1.1 PyTorch 简介 ................................... 2

1.2 PyTorch 的主要应用 ....................... 3

1.3 PyTorch 安装 ................................... 4

1.3.1 CPU 版本PyTorch 安装 ..................... 5

1.3.2 GPU 版本PyTorch 安装 ..................... 6

1.3.3 安装辅助库和安装测试 ...................... 7

1.4 本章小结 ....................................... 10

第2 章 机器学习基础与线性回归 ....... 11

2.1 机器学习基础 ............................... 11

2.2 线性回归 ....................................... 12

2.3 本章小结 ....................................... 18

第3 章 张量与数据类型 ...................... 19

3.1 PyTorch 张量 ................................. 19

3.1.1 初始化张量 ....................................... 19

3.1.2 张量类型 ........................................... 20

3.1.3 创建随机值张量 ............................... 21

3.1.4 张量属性 ........................................... 22

3.1.5 将张量移动到显存 ........................... 22

3.2 张量运算 ....................................... 23

3.2.1 与NumPy 数据类型的转换 ............. 24

3.2.2 张量的变形 ....................................... 24

3.3 张量的自动微分 ............................ 25

3.4 本章小结 ........................................ 26

第4 章 分类问题与多层感知器 ........... 27

4.1 torchvision 库 ................................. 27

4.2 加载内置图片数据集 .................... 27

4.3 多层感知器 .................................... 30

4.4 激活函数 ........................................ 33

4.4.1 ReLU 激活函数 ................................ 33

4.4.2 Sigmoid 激活函数 ............................. 34

4.4.3 Tanh 激活函数 .................................. 35

4.4.4 LeakyReLU 激活函数 ....................... 36

4.5 本章小结 ........................................ 37

第5 章 多层感知器模型与模型训练 .... 38

5.1 多层感知器模型 ............................ 38

5.2 损失函数 ........................................ 40

5.3 优化器 ............................................ 41

5.4 初始化模型 .................................... 42

5.5 编写训练循环 ................................ 42

5.6 本章小结 ........................................ 46

第6 章 梯度下降法、反向传播算法与内置优化器 ......................... 47

6.1 梯度下降法 .................................... 47

6.2 反向传播算法 ............................... 49

6.3 PyTorch 内置的优化器 ................. 50

6.3.1 SGD 优化器 ...................................... 51

6.3.2 RMSprop 优化器 .............................. 51

6.3.3 Adam 优化器 .................................... 51

6.4 本章小结 ........................................ 52

第2 篇 计算机视觉篇

第7 章 计算机视觉与卷积神经网络 .... 54

7.1 什么是卷积神经网络 ................... 54

7.2 池化层 ........................................... 57

7.3 卷积神经网络的整体架构 ............ 59

7.4 本章小结 ....................................... 60

第8 章 卷积入门实例 ......................... 61

8.1 数据输入 ....................................... 61

8.2 创建卷积模型并训练 ................... 62

8.3 函数式API .................................... 66

8.4 超参数选择 ................................... 67

8.5 本章小结 ....................................... 68

第9 章 图像读取与模型保存 ............... 69

9.1 加载图片数据集 ........................... 69

9.2 创建图片分类模型 ....................... 74

9.3 模型保存 ....................................... 77

9.3.1 保存和加载模型权重........................ 77

9.3.2 保存和恢复检查点 ........................... 77

9.3.3 保存最优参数 ................................... 79

9.4 本章小结 ....................................... 80

第10 章 多分类问题与卷积模型的优化 ..................................... 82

10.1 创建自定义Dataset 类 ................ 82

10.2 基础卷积模型 ............................. 87

10.3 Dropout 抑制过拟合 .................... 89

10.4 批标准化 ...................................... 93

10.5 学习速率衰减 .............................. 96

10.6 本章小结 ...................................... 98

第11 章 迁移学习与数据增强 ............. 99

11.1 什么是迁移学习 .......................... 99

11.2 数据增强 .................................... 103

11.3 微调 ............................................ 109

11.4 本章小结 .................................... 112

第12 章 经典网络模型与特征提取 ... 113

12.1 VGG ........................................... 113

12.2 ResNet ........................................ 115

12.3 TensorBoard 可视化 .................. 117

12.4 ResNetBasicBlock 结构 ............. 120

12.5 Inception ..................................... 123

12.6 DenseNet .................................... 126

12.7 DenseNet 预训练模型提取特征 .................................... 128

12.8 本章小结 .................................... 131

第13 章 图像定位基础 ..................... 132

13.1 简单图像定位模型 .................... 132

13.2 数据集观察 ................................ 133

13.3 创建模型输入 ............................ 138

13.4 创建图像定位模型 ................... 141

13.5 模型保存与测试 ....................... 146

13.6 本章小结 ................................... 147

第14 章 图像语义分割 ..................... 148

14.1 常见图像处理任务 ................... 148

14.2 图像语义分割 ........................... 150

14.3 U-Net 语义分割模型 ................. 152

14.4 创建输入dataset ........................ 154

14.5 反卷积 ........................................ 158

14.6 U-Net 模型代码实现 ................. 159

14.7 模型训练 .................................... 163

14.8 模型的保存和预测 .................... 166

14.9 本章小结 .................................... 168

第3 篇 自然语言处理和序列篇

第15 章 文本分类与词嵌入 .............. 172

15.1 文本的数值表示 ....................... 172

15.1.1 Word2vec ....................................... 174

15.1.2 Glove ............................................. 174

15.1.3 Embedding Layer ........................... 174

15.2 torchtext 加载内置文本数据集 .. 175

15.3 创建DataLoader 和文本分类模型 ........................................... 178

15.3.1 Xavier 初始化方法 ........................ 181

15.3.2 kaiming 初始化方法 ..................... 182

15.4 本章小结 ................................... 184

第16 章 循环神经网络与一维卷积神经网络 ............................ 185

16.1 循环神经网络的概念................ 185

16.2 长短期记忆网络 ........................ 192

16.3 门控循环单元 ............................ 194

16.4 LSTM 和GRU 高阶API ........... 195

16.5 循环神经网络的应用 ................ 197

16.6 中文文本分类实例 .................... 198

16.7 LSTM 模型的优化 .................... 201

16.8 一维卷积神经网络 .................... 203

16.9 本章小结 .................................... 207

第17 章 序列预测实例 ..................... 208

17.1 时间序列数据集准备 ................ 208

17.2 序列预测模型 ............................ 214

17.3 本章小结 .................................... 215

第4 篇 生成对抗网络和目标检测篇

第18 章 生成对抗网络 ..................... 218

18.1 GAN 的概念及应用 .................. 218

18.1.1 什么是GAN .................................. 218

18.1.2 GAN 的应用 .................................. 220

18.2 基本的GAN 实例 ..................... 221

18.3 深度卷积生成对抗网络 ............ 227

18.4 本章小结 .................................... 231

第19 章 目标检测 ............................ 232

19.1 什么是目标检测 ....................... 232

19.2 常用目标检测算法 ................... 234

19.3 PyTorch 目标检测模块 ............. 236

19.4 目标检测的图像标注................ 241

19.5 使用自行标注数据集训练目标检测模型 ............................ 242

19.6 本章小结 .................................... 249

参考文献 ............................................ 250


产品特色