本书主要介绍构建和训练生成对抗网络(GAN)的方法。全书共12 章,先介绍生成模型以及GAN 的工作原理,并概述它们的潜在用途,然后探索GAN 的基础结构(生成器和鉴
别器),引导读者搭建一个简单的对抗系统。
本书给出了大量的示例,教读者学习针对不同的场景训练不同的GAN,进而完成生成高分辨率图像、实现图像到图像的转换、生成对抗样本以及目标数据等任务,让所构建的系统
变得智能、有效和快速。
DI一部分 生成对抗网络(GAN)与生成模型导论
D 1 章 GAN 简介 3
1.1 什么是 GAN 5
1.2 GAN 是如何工作的 5
1.3 GAN 实战 6
1.3.1 GAN 的训练 7
1.3.2 达到平衡 10
1.4 为什么要学 GAN 11
1.5 小结 14
D 2 章 自编码器生成模型入门 15
2.1 生成模型简介16
2.2 自编码器如何用于GJ场景 16
2.3 什么是 GAN 的自编码器 18
2.4 自编码器的构成 18
2.5 自编码器的使用 20
2.6 无监督学习21
2.6.1 吐故纳新 21
2.6.2 使用自编码器生成 22
2.6.3 变分自编码器 23
2.7 代码J是生命23
2.8 为什么要尝试使用 GAN 30
2.9 小结 32
D 3 章 你的DI一个 GAN 模型:生成手写数字 . 33
3.1 GAN 的基础:对抗训练 33
3.1.1 代价函数 35
3.1.2 训练过程 35
3.2 生成器和鉴别器 37
3.2.1 对抗的目标 37
3.2.2 混淆矩阵 38
3.3 GAN 训练算法 38
3.4 教程:生成手写数字 39
3.4.1 导入模块并指定模型输入维度 40
3.4.2 构造生成器 41
3.4.3 构造鉴别器 41
3.4.4 搭建整个模型 42
3.4.5 训练 43
3.4.6 输出样本图像 44
3.4.7 运行模型 45
3.4.8 检查结果 45
3.5 结论 46
3.6 小结 46
D 4 章 深度卷积生成对抗网络(DCGAN)47
4.1 卷积神经网络48
4.1.1 卷积滤波器 48
4.1.2 参数共享 48
4.1.3 卷积神经网络可视化 48
4.2 DCGAN 简史 49
4.3 批归一化 50
4.3.1 理解归一化 50
4.3.2 计算批归一化 51
4.4 教程:用 DCGAN 生成手写数字 52
4.4.1 导入模块并指定模型输入维度 53
4.4.2 构造生成器 53
4.4.3 构造鉴别器 55
4.4.4 构建并运行 DCGAN 57
4.4.5 模型输出 59
4.5 结论 60
4.6 小结 60
D二部分 GAN 的前沿主题
D 5 章 训练与普遍挑战:为成功而 GAN 63
5.1 评估 65
5.1.1 评估框架 65
5.1.2 IS 67
5.1.3 FID 68
5.2 训练中的挑战70
5.2.1 增加网络深度 72
5.2.2 游戏设置 73
5.2.3 Z小-Z大 GAN 73
5.2.4 非饱和 GAN 74
5.2.5 何时停止训练 76
5.2.6 WGAN77
5.3 总结游戏设置80
5.4 训练技巧 81
5.4.1 输入的归一化 81
5.4.2 批归一化 81
5.4.3 梯度惩罚 82
5.4.4 对鉴别器进行更多的训练 82
5.4.5 避免稀疏梯度 83
5.4.6 平滑和带噪声的标签 83
5.5 小结 83
D 6 章 渐进式增长生成对抗网络(PGGAN) 85
6.1 潜在空间插值 86
6.2 它们发展如此之快 87
6.2.1 高分辨率层的渐进增长和平滑 87
6.2.2 示例实现 90
6.2.3 小批量标准偏差 91
6.2.4 均衡学习率 92
6.2.5 生成器中的像素级特征归一化 93
6.3 主要创新点总结 96
6.4 TensorFlow Hub 库及其实践 97
6.5 PGGAN 的实际应用 98
6.6 小结 101
D 7 章 半监督生成对抗网络(SGAN) 103
7.1 SGAN 简介105
。。。