《PyTorch生成对抗网络编程》简介:
畅销书《Python神经网络编程》作者最新力作;
全彩印刷,配套示例代码,图文并茂,易懂实用;
从零开始,用PyTorch构建自己的生成对抗网络。
生成对抗网络(Generative Adversarial Network,GAN)是神经网络领域的一颗新星,被誉为“机器 学习领域近 20 年来最酷的想法”。
本书以直白、简短的方式向读者介绍了生成对抗网络,指导读者如何使用PyTorch 按部就班地编写生成对抗网络。
全书共3章和5个附录,分别介绍了PyTorch基础知识,用PyTorch开发神经网络,改良神经网络以提升效果,引入CUDA和GPU以加速GAN训练,以及生成高质量图像的卷积GAN、条件式GAN等话题。附录部分介绍了在很多机器学习相关教程中被忽略的主题,包括计算平衡GAN的理想损失值、概率分布和采样,以及卷积如何工作,还简单解释了为什么梯度下降不适用于对抗式机器学习。
本书适合想初步了解GAN以及其工作原理的读者,也适合想要学习如何构建GAN的机器学习从业人员。对于正在学习机器学习相关课程的学生,本书可以帮助读者快速入门,为后续的学习打好基础。
《PyTorch生成对抗网络编程》目录:
第 1 章 PyTorch和神经网络 001
1.1 PyTorch入门 001
1.2 初试PyTorch神经网络 018
1.3 改良方法 043
1.4 CUDA基础知识 054
第 2 章 GAN初步 064
2.1 GAN的概念 064
2.2 生成1010格式规律 072
2.3 生成手写数字 090
2.4 生成人脸图像 117
第 3 章 卷积GAN和条件式GAN 140
3.1 卷积GAN 140
3.2 条件式GAN 166
3.3 结语 176
附录A 理想的损失值 178
A.1 MSE损失 178
A.2 BCE损失 179
附录B GAN学习可能性 186
B.1 GAN不会记忆训练数据 186
B.2 简单的例子 187
B.3 从一个概率分布中生成图像 188
B.4 为图像特征学习像素组合 189
B.5 多模式以及模式崩溃 190
附录C 卷积案例 191
C.1 例1: 卷积,步长为1,无补全 191
C.2 例2: 卷积,步长为2,无补全 192
C.3 例3: 卷积,步长为2,有补全 193
C.4 例4: 卷积,不完全覆盖 194
C.5 例5: 转置卷积,步长为2,无补全 194
C.6 例6: 转置卷积,步长为1,无补全 196
C.7 例7: 转置卷积,步长为2,有补全 197
C.8 计算输出大小 197
附录D 不稳定学习 199
D.1 梯度下降是否适用于训练GAN 199
D.2 简单的对抗案例 199
D.3 梯度下降并不适合对抗博弈 203
D.4 为什么是圆形轨迹 204
附录E 相关数据集和软件 205
E.1 MNIST数据集 205
E.2 CelebA数据集 205
E.3 英伟达和谷歌 206
E.4 开源软件 206
· · · · · ·