技术教育社区
www.teccses.org

Python深度学习:基于TensorFlow 第2版

封面

作者:吴茂贵

页数:362

出版社:机械工业出版社

出版日期:2022

ISBN:9787111712244

电子书格式:pdf/epub/txt

内容简介

这是一本能指导读者快速掌握TensorFlow和深度学习的著作,从TensorFlow的原理到应用,从深度学习到强化学习,本书提供了全栈解决方案。
第1版上市后销量和口碑俱佳,是深度学习领域的畅销书,被誉为TenSorFlow领域的标准著作。第2版在第1版的基础上,去芜存菁,与时具进,根据TensorFlow新版本全面升级,技术性、实战性、针对性、易读性均得到了进一步提升,必定能帮助读者更轻松、更高效地进入深度学习的世界。

作者简介

吴茂贵
资深大数据和人工智能技术专家,就职于中国外汇交易中心,在BI、数据挖掘与分析、数据仓库、机器学习等领域工作超过20年。在基于Spark、TensorFlow、PyTorch、Keras等的机器学习和深度学习方面有大量的工程实践实践。著有《Python深度学习:基于PyTorch》《深度实践Spark机器学习》等畅销书。
王冬
任职于博世(中国)投资有限公司,负责Bosch企业BI及工业4.0相关大数据和数据挖掘项目。对机器学习、人工智能有多年实践经验。
李涛
资深AI技术工程师,对PyTorch、Caffe、TensorFlow等深度学习框架以及计算机视觉技术有深刻的理解和丰富的实践经验,曾经参与和主导过服务机器人、无人售后店、搜索排序等多个人工智能相关的项目。
杨本法
高级算法工程师,工业表面缺陷检测设备开发架构师,在机器学习、文本挖掘、可视化等领域有多年实践经验。做过大型电商的推荐系统,知名手机厂商外壳表面检测设备。熟悉Hadoop、Spark生态圈的相关技术,对Python有丰富的实战经验。
张利
高级软件架构师,熟悉企业系统架构、云计算以及物联网应用。有丰富的Java、 Python系统开发和运维经验,机器学习倡导者和实践者。

本书特色

适读人群 :?对深度学习感兴趣的大学生、研究生、在职人员等?科研院所的研究人员?其他深度学习爱好者,如产品经理、投资人等(1)作者经验丰富:核心作者在大数据和人工智能领域有着超过20年的工作经验,实战经验非常丰富,其他几位作者也在大数据和人工智能领域颇有造诣。 (2)畅销书全面升级:第1版销量和口碑俱佳,是深度学习领域的畅销书,第2版根据TensorFlow新版本升级,技术性、实战性、针对性、易读性进一步提升。 (3)TensorFlow领域事实标准:因为内容扎实、可读性强,第1版被读者誉为TensorFlow领域的标准著作,是读者的shou选。 (4)深度学习双子星:本书是《Python深度学习:基于PyTorch(第2版)》的姊妹篇,这两本书均是深度学习领域的畅销书。 (5)进行谋划、通俗易懂:本书在内容的选择、安排和表现形式上精心谋划,目的是确保高质量内容的同时,让深度学习的学习门槛大大降低。

目录

第2版前言

第1版前言

第一部分 TensorFlow基础

第1章 NumPy基础 2

1.1 把图像数字化 3

1.1.1 数组属性 4

1.1.2 从已有数据中生成数组 4

1.1.3 利用 random 模块生成

数组 5

1.1.4 利用 arange、linspace

函数生成数组 7

1.2 存取元素 8

1.3 NumPy的算术运算 9

1.3.1 对应元素相乘 10

1.3.2 点积运算 11

1.4 数据变形 12

1.4.1 更改数组的形状 12

1.4.2 合并数组 15

1.5 通用函数 18

1.6 广播机制 20

1.7 用NumPy实现回归实例 21

1.8 小结 24

第2章 TensorFlow基础知识 25

2.1 安装配置 25

2.1.1 安装Anaconda 26

2.1.2 安装TensorFlow

CPU版 26

2.1.3 安装TensorFlow

GPU版 27

2.2 层次架构 29

2.3 张量 30

2.3.1 张量的基本属性 30

2.3.2 张量切片 31

2.3.3 操作形状 32

2.4 变量 33

2.5 NumPy与tf.Tensor比较 35

2.6 计算图 36

2.6.1 静态计算图 36

2.6.2 动态计算图 37

2.7 自动图 38

2.8 自动微分 39

2.9 损失函数 42

2.10 优化器 43

2.11 使用TensorFlow 2.0实现回归

实例 43

2.12 GPU加速 48

2.13 小结 50

第3章 TensorFlow构建模型的方法 51

3.1 利用低阶API构建模型 51

3.1.1 项目背景 51

3.1.2 导入数据 52

3.1.3 预处理数据 53

3.1.4 构建模型 55

3.1.5 训练模型 56

3.1.6 测试模型 57

3.1.7 保存恢复模型 57

3.2 利用中阶API构建模型 58

3.2.1 构建模型 58

3.2.2 创建损失评估函数 59

3.2.3 训练模型 59

3.3 利用高阶API构建模型 61

3.3.1 构建模型 61

3.3.2 编译及训练模型 63

3.3.3 测试模型 64

3.3.4 保存恢复模型 64

3.4 小结 65

第4章 TensorFlow数据处理 66

4.1 tf.data简介 66

4.2 构建数据集的常用方法 67

4.2.1 从内存中读取数据 68

4.2.2 从文本中读取数据 68

4.2.3 读取TFRecord格式

文件 70

4.3 如何生成自己的TFRecord格式

数据 70

4.3.1 把数据转换为TFRecord

格式的一般步骤 70

4.3.2 加载TFRecord文件

流程 72

4.3.3 代码实现 72

4.4 数据增强方法 75

4.4.1 常用的数据增强方法 75

4.4.2 创建数据处理流水线 77

4.5 小结 78

第5章 可视化 79

5.1 matplotlib 79

5.1.1 matplotlib的基本概念 79

5.1.2 使用matplotlib绘制

图表 81

5.1.3 使用rcParams 83

5.2 pyecharts 85

5.2.1 pyecharts的安装 85

5.2.2 使用pyecharts绘制

图表 86

5.3 TensorBoard 89

5.4 小结 92

第二部分 深度学习基础

第6章 机器学习基础 94

6.1 机器学习的一般流程 94

6.1.1 明确目标 94

6.1.2 收集数据 95

6.1.3 数据探索与预处理 95

6.1.4 模型选择 96

6.1.5 模型评估 96

6.2 监督学习 98

6.2.1 线性回归 98

6.2.2 逻辑回归 100

6.2.3 树回归 102

6.2.4 支持向量机 102

6.2.5 朴素贝叶斯分类器 105

6.2.6 集成学习 107

6.3 无监督学习 110

6.3.1 主成分分析 110

6.3.2 k均值算法 110

6.4 数据预处理 111

6.4.1 处理缺失值 111

6.4.2 处理分类数据 112

6.5 机器学习实例 113

6.6 小结 119

第7章 神经网络基础 120

7.1 单层神经网络 121

7.2 多层神经网络 122

7.2.1 多层神经网络的结构 122

7.2.2 各层之间的信息传输 123

7.2.3 使用多层神经网络解决

XOR问题 123

7.2.4 使用TensorFlow解决XOR问题 125

7.3 激活函数 126

7.3.1 sigmoid函数 127

7.3.2 softmax函数 127

7.3.3 tanh函数 128

7.3.4 ReLU函数 129

7.3.5 Leaky-ReLU函数 129

7.3.6 softplus函数 130

7.3.7 Dropout函数 130

7.4 正向和反向传播算法 130

7.4.1 单个神经元的BP算法 131

7.4.2 多层神经网络的BP

算法 132

7.5 解决过拟合问题 135

7.5.1 权重正则化 135

7.5.2 Dropout正则化 136

7.5.3 批量正则化 138

7.5.4 权重初始化 139

7.5.5 残差网络 140

7.6 选择优化算法 141

7.6.1 传统梯度更新算法 141

7.6.2 动量算法 142

7.6.3 NAG算法 144

7.6.4 AdaGrad算法 145

7.6.5 RMSProp算法 146

7.6.6 Adam算法 146

7.6.7 如何选择优化算法 147

7.7 使用tf.keras构建神经网络 148

7.7.1 tf.keras概述 148

7.7.2 tf.keras的常用模块 148

7.7.3 构建模型的几种方法 149

7.7.4 使用Sequential API

构建神经网络实例 150

7.7.5 使用Functional API

构建神经网络实例 156

7.7.6 使用Subclassing API

构建神经网络实例 157

7.8 小结 158

第8章 视觉处理基础 159

8.1 从全连接层到卷积层 159

8.1.1 图像的两个特性 160

8.1.2 卷积神经网络概述 161

8.2 卷积层 162

8.2.1 卷积核 163

8.2.2 步幅 165

8.2.3 填充 166

8.2.4 多通道上的卷积 166

8.2.5 激活函数 168

8.2.6 卷积函数 168

8.2.7 转置卷积 169

8.2.8 特征图与感受野 171

8.2.9 全卷积网络 171

8.3 池化层 172

8.3.1 局部池化 173

8.3.2 全局池化 174

8.4 现代经典网络 175

8.4.1 LeNet-5模型 175

8.4.2 AlexNet模型 176

8.4.3 VGG模型 177

8.4.4 GoogLeNet模型 178

8.4.5 ResNet模型 179

8.4.6 DenseNet模型 179

8.5 卷积神经网络分类实例 181

8.5.1 使用Subclassing API

构建网络 181

8.5.2 卷积神经网络分类实例的

主要步骤 181

8.5.3 通过数据增强提升

性能 184

8.5.4 通过现代网络架构提升

网络性能 185

8.6 小结 187

第9章 自然语言处理基础 188

9.1 从语言模型到循环神经网络 188

9.1.1 链式法则 189

9.1.2 马尔可夫假设与N元

语法模型 189

9.1.3 从N元语法模型到隐含

状态表示 189

9.1.4 从神经网络到有隐含

状态的循环神经网络 190

9.1.5 使用循环神经网络构建

语言模型 192

9.1.6 多层循环神经网络 192

9.2 正向传播与随时间反向传播 193

9.3 现代循环神经网络 196

9.3.1 LSTM 196

9.3.2 GRU 197

9.3.3 Bi-RNN 197

9.4 几种特殊架构 198

9.4.1 编码器?-?解码器架构 198

9.4.2 Seq2Seq架构 200

9.5 循环神经网络的应用场景 201

9.6 循环神经网络实践 202

9.6.1 使用LSTM实现文本

分类 202

9.6.2 把CNN和RNN组合

在一起 203

9.7 小结 206

第10章 注意力机制 207

10.1 注意力机制概述 207

10.1.1 两种常见注意力

机制 208

10.1.2 来自生活的注意力 208

10.1.3 注意力机制的本质 208

10.2 带注意力机制的编码器?-?解码器架构 210

10.2.1 引入注意力机制 211

10.2.2 计算注意力分配值 212

10.3 可视化Transformer架构 215

10.3.1 Transformer的顶层

设计 215

10.3.2 编码器与解码器的

输入 216

10.3.3 自注意力 217

10.3.4 多头注意力 220

10.3.5 自注意力与卷积神经

网络、循环神经网络的

异同 222

10.3.6 为加深Transformer

网络层保驾护航的几种

方法 223

10.3.7 如何进行自监督

学习 224

10.3.8 Transformer在视觉

领域的应用 225

10.4 使用TensorFlow实现

Transformer 227

10.4.1 Transformer

架构图 227

10.4.2 架构说明 227

10.4.3 构建缩放的点积注意力

模块 228

10.4.4 构建多头注意力

模块 229

10.4.5 构建前馈神经网络

模块 230

10.4.6 构建EncoderLayer

模块 230

10.4.7 构建Encoder模块 231

10.4.8 构建DecoderLayer

模块 232

10.4.9 构建Decoder模块 233

10.4.10 构建Transformer

模型 234

10.4.11 定义掩码函数 235

10.5 小结 238

第11章 目标检测 239

11.1 目标检测及主要挑战 239

11.1.1 边界框的表示 240

11.1.2 手工标注图像的

真实值 241

11.1.3 主要挑战 244

11.1.4 选择性搜索 245

11.1.5 锚框 245

11.1.6 RPN算法 247

11.2 优化候选框的算法 248

11.2.1 交并比 248

11.2.2 非极大值抑制 248

11.2.3 边框回归 249

11.2.4 使候选框输出为固定

大小 251

11.3 典型的目标检测算法 253

11.3.1 R-CNN 253

11.3.2 Fast R-CNN 254

11.3.3 Faster R-CNN 255

11.3.4 Mask R-CNN 256

11.3.5 YOLO 257

11.3.6 Swin Transformer 257

11.3.7 各种算法的性能

比较 258

11.4 小结 258

第12章 生成式深度学习 259

12.1 用变分自编码器生成图像 259

12.1.1 自编码器 259

12.1.2 变分自编码器 260

12.1.3 用变分自编码器生成

图像实例 261

12.2 GAN简介 263

12.2.1 GAN的架构 264

12.2.2 GAN的损失函数 265

12.3 用GAN生成图像 266

12.3.1 判别器 266

12.3.2 生成器 266

12.3.3 训练模型 267

12.3.4 可视化结果 267

12.4 VAE与GAN的异同 267

12.5 CGAN 268

12.5.1 CGAN的架构 268

12.5.2 CGAN 判别器 269

12.5.3 CGAN生成器 269

12.5.4 训练模型 270

12.5.5 动态查看指定标签的

图像 270

12.6 提升GAN训练效果的一些

技巧 270

12.7 小结 271

第三部分 深度学习实践

第13章 实战生成式模型 274

13.1 Deep Dream模型 274

13.1.1 Deep Dream的

原理 274

13.1.2 Deep Dream算法的

流程 275

13.1.3 使用TensorFlow实现Deep Dream 275

13.2 风格迁移 277

13.2.1 内容损失 278

13.2.2 风格损失 279

13.2.3 训练模型 281

13.3 小结 282

第14章 目标检测实例 283

14.1 数据集简介 283

14.2 准备数据 284

14.3 训练模型 286

14.4 测试模型 292

14.5 小结 293

第15章 人脸检测与识别实例 294

15.1 人脸识别简介 294

15.2 项目概况 297

15.3 项目详细实施步骤 297

15.3.1 图像预处理 298

15.3.2 构建模型 299

15.3.3 测试模型 300

15.4 小结 302

第16章 文本检测与识别实例 303

16.1 项目架构说明 303

16.2 项目实施步骤 304

16.2.1 手工生成训练数据 304

16.2.2 数据预处理 306

16.2.3 构建模型 308

16.2.4 训练模型 309

16.3 小结 311

第17章 基于Transformer的

对话实例 312

17.1 数据预处理 312

17.2 构建注意力模块 315

17.3 构建Transformer架构 316

17.4 定义损失函数 320

17.5 初始化并编译模型 321

17.6 测试评估模型 321

17.7 小结 322

第18章 基于Transformer的

图像处理实例 323

18.1 导入数据 323

18.2 预处理数据 324

18.3 构建模型 326

18.4 编译、训练模型 329

18.5 可视化运行结果 330

18.6 小结 331

第四部分 强化学习

第19章 强化学习基础 334

19.1 强化学习基础概述 334

19.1.1 智能体与环境的

交互 335

19.1.2 回报 335

19.1.3 马尔可夫决策过程 336

19.1.4 贝尔曼方程 336

19.1.5 贝尔曼优方程 337

19.1.6 同步策略与异步

策略 337

19.1.7 有模型训练与无模型

训练 337

19.2 时序差分算法 338

19.3 Q-Learning算法 338

19.3.1 Q-Learning算法的

主要流程 339

19.3.2 Q函数 339

19.3.3 贪婪策略 340

19.4 SARSA 算法 340

19.5 DQN算法 340

19.5.1 Q-Learning算法的

局限性 341

19.5.2 用深度学习处理强化学习时需要解决的问题 341

19.5.3 用DQN解决问题的

方法 341

19.5.4 定义损失函数 342

19.5.5 DQN的经验回放

机制 342

19.5.6 目标网络 342

19.5.7 网络模型 342

19.5.8 DQN算法的实现 343

19.6 小结 344

第20章 强化学习实践 345

20.1 Q-Learning算法实例 345

20.2 SARSA算法实例 346

20.2.1 游戏场景 346

20.2.2 核心代码说明 347

20.3 用TensorFlow实现DQN算法 348

20.4 小结 352

附录A TensorFlow-GPU 2+

升级安装配置 353

附录B 从TensorFlow1.x升级到TensorFlow 2.x 360

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Python深度学习:基于TensorFlow 第2版》
Article link:https://www.teccses.org/1407666.html