提交 cb55352a 编写于 作者: W wizardforcel

2020-12-06 11:30:51

上级 9b1dffea
......@@ -81,9 +81,9 @@
* Mac 版 Zipeg / iZip / UnRarX
* 适用于 Linux 的 7-Zip / PeaZip
本书的代码包也托管在 GitHub 的 [https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects) 。 如果代码有更新,它将在现有的 GitHub 存储库中进行更新。
本书的代码包也托管在 [GitHub](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects)。 如果代码有更新,它将在现有的 GitHub 存储库中进行更新。
**[https://github.com/PacktPublishing/](https://github.com/PacktPublishing/) 中,我们还提供了丰富的图书和视频目录中的其他代码包。** 。 去看一下!
[这个页面](https://github.com/PacktPublishing/)中,我们还提供了丰富的图书和视频目录中的其他代码包。 去看一下!
......
......@@ -4,7 +4,7 @@
在本章中,我们将研究**生成对抗网络****GAN** )。 它们是一种深度神经网络架构,它使用无监督的机器学习来生成数据。 他们在 2014 年由 Ian Goodfellow,Yoshua Bengio 和 Aaron Courville 的论文中介绍了 , ,可在以下链接中找到: [https:/ /arxiv.org/pdf/1406.2661](https://arxiv.org/pdf/1406.2661) 。 GAN 具有许多应用,包括图像生成和药物开发。
在本章中,我们将研究**生成对抗网络****GAN** )。 它们是一种深度神经网络架构,它使用无监督的机器学习来生成数据。 他们在 2014 年由 Ian Goodfellow,Yoshua Bengio 和 Aaron Courville 的论文中介绍[可在以下链接中找到](https://arxiv.org/pdf/1406.2661)。 GAN 具有许多应用,包括图像生成和药物开发。
本章将向您介绍 GAN 的核心组件。 它将带您了解每个组件的工作方式以及 GAN 背后的重要概念和技术。 它还将简要概述使用 GAN 的优缺点 ,并深入了解某些实际应用。
......@@ -249,7 +249,7 @@ The architecture of the discriminator network
初始分数是 GAN 使用最广泛的评分算法。 它使用预训练的 Inception V3 网络(在 Imagenet 上进行训练)来提取生成图像和真实图像的特征。 由 Shane Barrat 和 Rishi Sharma 在其论文*关于初始分数*的注释( [https://arxiv.org/pdf/1801.01973.pdf](https://arxiv.org/pdf/1801.01973.pdf)中提出。 初始分数或简称 IS,用于衡量所生成图像的质量和多样性。 让我们看一下 *IS* 的等式:
初始分数是 GAN 使用最广泛的评分算法。 它使用预训练的 Inception V3 网络(在 Imagenet 上进行训练)来提取生成图像和真实图像的特征。 由 Shane Barrat 和 Rishi Sharma 在其论文[《关于初始分数的注释》](https://arxiv.org/pdf/1801.01973.pdf)中提出。 初始分数或简称 IS,用于衡量所生成图像的质量和多样性。 让我们看一下 *IS* 的等式:
![](img/0d33c46a-0a5f-4027-919c-30b910e6d93b.png)
......@@ -278,7 +278,7 @@ The architecture of the discriminator network
为了克服初始分数的各种缺点,Martin Heusel 等人在他们的论文 *GAN 中提出了**Fréchlet 初始距离**( **FID** ), 规模更新规则收敛到局部 Nash 平衡*[https://arxiv.org/pdf/1706.08500.pdf](https://arxiv.org/pdf/1706.08500.pdf)
为了克服初始分数的各种缺点,Martin Heusel 等人在他们的论文 *GAN 中提出了**Fréchlet 初始距离**( **FID** ),[收敛到局部纳什平衡的规模更新规则](https://arxiv.org/pdf/1706.08500.pdf)
计算 FID 分数的公式如下:
......@@ -305,7 +305,7 @@ There are more scoring algorithms available that have been recently proposed by
Alec Radford,Luke Metz 和 Soumith Chintala 在名为*深度卷积生成对抗网络*的无监督表示学习*中提出了**深层卷积 GAN** ( **DCGAN** )。 ,可通过以下链接获得:* [https://arxiv.org/pdf/1511.06434.pdf](https://arxiv.org/pdf/1511.06434.pdf) 。 香草 GAN 通常在其网络中没有**卷积神经网络****CNN** )。 这是在 DCGAN 的引入下首次提出的。 我们将在[第 3 章](../Text/3.html)*使用条件 GAN* **进行面部老化,以学习如何使用 DCGAN 生成**动漫 ch 动漫面孔。
Alec Radford,Luke Metz 和 Soumith Chintala 在名为*深度卷积生成对抗网络*的无监督表示学习*中提出了**深层卷积 GAN** ( **DCGAN** ),[可通过以下链接获得](https://arxiv.org/pdf/1511.06434.pdf) 。 香草 GAN 通常在其网络中没有**卷积神经网络**( **CNN** )。 这是在 DCGAN 的引入下首次提出的。 我们将在[第 3 章](../Text/3.html)和*使用条件 GAN* **进行面部老化,以学习如何使用 DCGAN 生成**动漫 ch 动漫面孔。
......@@ -315,7 +315,7 @@ Alec Radford,Luke Metz 和 Soumith Chintala 在名为*深度卷积生成对抗
StackGAN 由 Han Zhang,Tao Xu,Li Hongsheng Li 等人在其题为*的论文中提出。StackGAN:使用堆叠式生成对抗网络*进行文本到照片般逼真的图像合成,可从以下链接获得: [https://arxiv.org/pdf/1612.03242.pdf](https://arxiv.org/pdf/1612.03242.pdf) 。 他们使用 StackGAN 来探索文本到图像的合成,并获得了令人印象深刻的结果。 StackGAN 是一对网络,当提供文本描述时,它们会生成逼真的图像。 我们将在[第 6 章](../Text/6.html)*StackGAN –文本到真实图像的图像合成中,学习如何使用 StackGAN 从文本描述生成逼真的图像。*
StackGAN 由 Han Zhang,Tao Xu,Li Hongsheng Li 等人在其题为*的论文中提出。StackGAN:使用堆叠式生成对抗网络*进行文本到照片般逼真的图像合成,[可从以下链接获得](https://arxiv.org/pdf/1612.03242.pdf)。 他们使用 StackGAN 来探索文本到图像的合成,并获得了令人印象深刻的结果。 StackGAN 是一对网络,当提供文本描述时,它们会生成逼真的图像。 我们将在[第 6 章](../Text/6.html)*StackGAN –文本到真实图像的图像合成中,学习如何使用 StackGAN 从文本描述生成逼真的图像。*
......@@ -325,7 +325,7 @@ StackGAN 由 Han Zhang,Tao Xu,Li Hongsheng Li 等人在其题为*的论文
CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题为*使用循环一致对抗网络*的不成对图像到图像翻译的论文中提出。 在以下链接中: [https://arxiv.org/pdf/1703.10593](https://arxiv.org/pdf/1703.10593) 。 CycleGAN 具有一些非常有趣的潜在用途,例如将照片转换为绘画,反之亦然,将夏天拍摄的照片转换为冬天,反之亦然,或者将马的图像转换为斑马的图像,反之亦然。 我们将在[第 7 章](../Text/7.html)*CycleGAN-将绘画变成照片*中学习如何使用 CycleGAN 将绘画变成照片。
CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题为*使用循环一致对抗网络*的不成对图像到图像翻译的论文中提出。 [在以下链接中](https://arxiv.org/pdf/1703.10593)。 CycleGAN 具有一些非常有趣的潜在用途,例如将照片转换为绘画,反之亦然,将夏天拍摄的照片转换为冬天,反之亦然,或者将马的图像转换为斑马的图像,反之亦然。 我们将在[第 7 章](../Text/7.html)*CycleGAN-将绘画变成照片*中学习如何使用 CycleGAN 将绘画变成照片。
......@@ -335,7 +335,7 @@ CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题
3D-GAN 由 Wu Jiajun Wu,Zhengkai Zhang,薛天凡,William T. Freeman 和 Joshua B. Tenenbaum 在其名为*的论文中提出,该论文通过 3D 生成-专家对模型学习概率形状的对象形状*可通过以下链接获得: [https://arxiv.org/pdf/1610.07584](https://arxiv.org/pdf/1610.07584) 。 在制造业和 3D 建模行业中,生成对象的 3D 模型具有许多用例。 一旦在对象的 3D 模型上进行训练,3D-GAN 网络便能够生成不同对象的新 3D 模型。 我们将在[第 2 章](../Text/2.html)*3D-GAN-使用* GAN 生成形状中学习如何使用 3D-GAN 生成对象的 3D 模型。
3D-GAN 由 Wu Jiajun Wu,Zhengkai Zhang,薛天凡,William T. Freeman 和 Joshua B. Tenenbaum 在其名为*的论文中提出,该论文通过 3D 生成-专家对模型学习概率形状的对象形状*[可通过以下链接获得](https://arxiv.org/pdf/1610.07584)。 在制造业和 3D 建模行业中,生成对象的 3D 模型具有许多用例。 一旦在对象的 3D 模型上进行训练,3D-GAN 网络便能够生成不同对象的新 3D 模型。 我们将在[第 2 章](../Text/2.html)*3D-GAN-使用* GAN 生成形状中学习如何使用 3D-GAN 生成对象的 3D 模型。
......@@ -345,7 +345,7 @@ CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题
有条件 GAN 的面部老化由 Grigory Antipov,Moez Baccouche 和 Jean-Luc Dugelay 在他们的题为*有条件的通用对抗网络*的面部老化的论文中提出,可通过以下链接获得: [https://arxiv.org/pdf/1702.01983.pdf](https://arxiv.org/pdf/1702.01983.pdf) 。 面部老化具有许多行业用例,包括跨年龄的面部识别,寻找迷路的孩子以及娱乐。 我们将在[第 3 章](../Text/3.html)*使用条件 GAN* 进行面部衰老中,学习如何训练条件 GAN 生成给定目标年龄的人脸。
有条件 GAN 的面部老化由 Grigory Antipov,Moez Baccouche 和 Jean-Luc Dugelay 在他们的题为*有条件的通用对抗网络*的面部老化的论文中提出,[可通过以下链接获得](https://arxiv.org/pdf/1702.01983.pdf)。 面部老化具有许多行业用例,包括跨年龄的面部识别,寻找迷路的孩子以及娱乐。 我们将在[第 3 章](../Text/3.html)*使用条件 GAN* 进行面部衰老中,学习如何训练条件 GAN 生成给定目标年龄的人脸。
......@@ -355,7 +355,7 @@ CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题
pix2pix 网络 是由 Phillip Isola , 朱俊彦 , 周廷辉介绍的 和 Alexei A. Efros 在他们的论文*带条件对抗网络*的图像到图像翻译中,可通过以下链接获得: [https://arxiv.org/abs/1611.07004](https://arxiv.org/abs/1611.07004) 。 pix2pix 网络具有与 CycleGAN 网络类似的用例。 它可以将建筑物标签转换为建筑物图片(我们将在 pix2pix 章节中看到一个类似的示例),b 缺失并将白色图像转换为彩色图像,将白天至夜晚的图像,草图转换为照片, 和航拍图像到类似地图的图像。
pix2pix 网络 是由 Phillip Isola , 朱俊彦 , 周廷辉介绍的 和 Alexei A. Efros 在他们的论文*带条件对抗网络*的图像到图像翻译中,[可通过以下链接获得](https://arxiv.org/abs/1611.07004)。 pix2pix 网络具有与 CycleGAN 网络类似的用例。 它可以将建筑物标签转换为建筑物图片(我们将在 pix2pix 章节中看到一个类似的示例),b 缺失并将白色图像转换为彩色图像,将白天至夜晚的图像,草图转换为照片, 和航拍图像到类似地图的图像。
For a list of all the GANs in existence, refer to *The GAN Zoo*, an article by Avinash Hindupur available at [https://github.com/hindupuravinash/the-gan-zoo](https://github.com/hindupuravinash/the-gan-zoo).
......@@ -468,7 +468,7 @@ For a list of all the GANs in existence, refer to *The GAN Zoo*, an article by A
小批量判别是稳定 GAN 训练的另一种方法。 它是由 Ian Goodfellow 等人在 *GAN 训练的改进技术*中提出的,该技术可从 [https://arxiv.org/pdf/1606.03498.pdf](https://arxiv.org/pdf/1606.03498.pdf) 获得。 为了理解这种方法,让我们首先详细研究问题。 在训练 GAN 时,当我们将独立的输入传递给鉴别器网络时,梯度之间的协调可能会丢失,这将阻止鉴别器网络学习如何区分由生成器网络生成的各种图像。 这是模式崩溃,这是我们之前讨论的问题。 为了解决这个问题,我们可以使用小批量判别。 下图很好地说明了此过程:
小批量判别是稳定 GAN 训练的另一种方法。 它是由 Ian Goodfellow 等人在 *GAN 训练的改进技术*中提出的,该技术可从[这里](https://arxiv.org/pdf/1606.03498.pdf)获得。 为了理解这种方法,让我们首先详细研究问题。 在训练 GAN 时,当我们将独立的输入传递给鉴别器网络时,梯度之间的协调可能会丢失,这将阻止鉴别器网络学习如何区分由生成器网络生成的各种图像。 这是模式崩溃,这是我们之前讨论的问题。 为了解决这个问题,我们可以使用小批量判别。 下图很好地说明了此过程:
![](img/f542b337-7bc3-475e-b3ee-00a963352321.png)
......@@ -522,7 +522,7 @@ For a list of all the GANs in existence, refer to *The GAN Zoo*, an article by A
之前,分类器的标签/目标值为 0 或 1; 0 代表假图片,1 代表真实图片。 因此,GAN 容易出现对抗性示例,其中是神经网络的输入,导致神经网络的输出不正确。 标签平滑是一种向鉴别器网络提供平滑标签的方法。 这意味着我们可以使用十进制值,例如 0.9(true),0.8(true),0.1(fake)或 0.2(fake),而不是将每个示例都标记为 1(true)或 0(fake)。 我们对真实图像和伪图像的目标值(标签值)进行平滑处理。 标签平滑可以降低 GAN 中对抗性示例的风险。 要应用标签平滑,请为图像分配标签 0.9、0.8 和 0.7、0.1、0.2 和 0.3。 要查找有关标签平滑的更多信息,请参阅以下论文: [https://arxiv.org/pdf/1606.03498.pdf](https://arxiv.org/pdf/1606.03498.pdf)
之前,分类器的标签/目标值为 0 或 1; 0 代表假图片,1 代表真实图片。 因此,GAN 容易出现对抗性示例,其中是神经网络的输入,导致神经网络的输出不正确。 标签平滑是一种向鉴别器网络提供平滑标签的方法。 这意味着我们可以使用十进制值,例如 0.9(true),0.8(true),0.1(fake)或 0.2(fake),而不是将每个示例都标记为 1(true)或 0(fake)。 我们对真实图像和伪图像的目标值(标签值)进行平滑处理。 标签平滑可以降低 GAN 中对抗性示例的风险。 要应用标签平滑,请为图像分配标签 0.9、0.8 和 0.7、0.1、0.2 和 0.3。 要查找有关标签平滑的更多信息,[请参阅以下论文](https://arxiv.org/pdf/1606.03498.pdf)
......@@ -534,7 +534,7 @@ For a list of all the GANs in existence, refer to *The GAN Zoo*, an article by A
批量归一化是一种对特征向量进行归一化以使其没有均值或单位方差的技术。 它用于稳定学习并处理较差的权重初始化问题。 这是预处理步骤,适用于网络的隐藏层,可帮助我们减少内部协变量偏移。
批次归一化由 Ioffe 和 Szegedy 在其 2015 年论文*批次归一化:通过减少内部协变量偏移来加速深度网络训练中引入。* 可以在以下链接中找到: [https://arxiv.org/pdf/1502.03167.pdf](https://arxiv.org/pdf/1502.03167.pdf)
批次归一化由 Ioffe 和 Szegedy 在其 2015 年论文*批次归一化:通过减少内部协变量偏移来加速深度网络训练中引入。[可以在以下链接中找到](https://arxiv.org/pdf/1502.03167.pdf)
The benefits of batch normalization are as follows:
......@@ -554,7 +554,7 @@ The benefits of batch normalization are as follows:
如上一节所述,批次归一化仅通过利用来自该批次的信息来对一批样本进行归一化。 实例规范化是一种略有不同的方法。 在实例归一化中,我们仅通过利用来自该特征图的信息来归一化每个特征图。 实例规范化由 Dmitry Ulyanov 和 Andrea Vedaldi 在标题为*的论文中介绍了实例规范化:快速风格化*的缺失成分,可通过以下链接获得: [https://arxiv.org/pdf /1607.08022.pdf](https://arxiv.org/pdf/1607.08022.pdf)
如上一节所述,批次归一化仅通过利用来自该批次的信息来对一批样本进行归一化。 实例规范化是一种略有不同的方法。 在实例归一化中,我们仅通过利用来自该特征图的信息来归一化每个特征图。 实例规范化由 Dmitry Ulyanov 和 Andrea Vedaldi 在标题为*的论文中介绍了实例规范化:快速风格化*的缺失成分,[可通过以下链接获得](https://arxiv.org/pdf/1607.08022.pdf)
......
......@@ -4,7 +4,7 @@
3D-GAN 是用于 3D 形状生成的 GAN 体系结构。 由于处理 3D 图像涉及复杂性,因此 3D 形状生成通常是一个复杂的问题。 3D-GAN 是一种可以生成逼真的,变化的 3D 形状的解决方案,由吴嘉俊,张成凯,薛天凡等人在题为*的论文中介绍,该文章通过 3D 生成专家模型学习对象形状的概率潜在空间 建模*。 可以在 [http://3dgan.csail.mit.edu/papers/3dgan_nips.pdf](http://3dgan.csail.mit.edu/papers/3dgan_nips.pdf) 上找到该论文。 在本章中,我们将使用 Keras 框架实现 3D-GAN。
3D-GAN 是用于 3D 形状生成的 GAN 体系结构。 由于处理 3D 图像涉及复杂性,因此 3D 形状生成通常是一个复杂的问题。 3D-GAN 是一种可以生成逼真的,变化的 3D 形状的解决方案,由吴嘉俊,张成凯,薛天凡等人在题为*的论文中介绍,该文章通过 3D 生成专家模型学习对象形状的概率潜在空间 建模*。 可以在[这个页面](http://3dgan.csail.mit.edu/papers/3dgan_nips.pdf)上找到该论文。 在本章中,我们将使用 Keras 框架实现 3D-GAN。
我们将涵盖以下主题:
......@@ -156,7 +156,7 @@ A fully convolutional network is a network without fully connected dense layers
该项目的 urce 代码可在 GitHub 上的以下链接中找到: [https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects)
该项目的 urce 代码可在 GitHub 上的[以下链接](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects)中找到
运行以下命令来设置项目:
......@@ -200,7 +200,7 @@ pip install -r requirements.txt
在本章中,我们将使用 3D ShapeNets 数据集,该数据集可从 [http://3dshapenets.cs.princeton.edu/3DShapeNetsCode.zip](http://3dshapenets.cs.princeton.edu/3DShapeNetsCode.zip) 获得。 它由 Wu 和 Song 等人发行。 并包含 40 个对象类别的正确注释的 3D 形状。 我们将使用目录中可用的体积数据,我们将在本章稍后详细讨论。 在接下来的几节中,我们将下载,提取和浏览数据集。
在本章中,我们将使用 3D ShapeNets 数据集,该数据集可从[这个页面](http://3dshapenets.cs.princeton.edu/3DShapeNetsCode.zip)获得。 它由 Wu 和 Song 等人发行。 并包含 40 个对象类别的正确注释的 3D 形状。 我们将使用目录中可用的体积数据,我们将在本章稍后详细讨论。 在接下来的几节中,我们将下载,提取和浏览数据集。
The 3D ShapeNets dataset is for academic use only. If you intend to use the dataset for commercial purposes, request permission from the authors of the paper, who can be reached at the following email address: `shurans@cs.princeton.edu`.
......@@ -808,7 +808,7 @@ TensorBoard 的 GRAPHS 部分包含两个网络的图形 。 如果网络性能
* **损失函数**:二进制交叉熵是最适合 3D-GAN 的损失函数。
* **两个网络中的层数**:根据可用的训练数据量,在网络中尝试不同的层数。 如果您有足够的可用数据来进行训练,则可以使网络更深。
我们还可以通过使用 Hyperopt( [https://github.com/hyperopt/hyperopt](https://github.com/hyperopt/hyperopt) )或 Hyperas( [https:// github .com / maxpumperla / hyperas](https://github.com/maxpumperla/hyperas) 选择最佳的超参数集。
我们还可以通过使用 [Hyperopt](https://github.com/hyperopt/hyperopt)[Hyperas](https://github.com/maxpumperla/hyperas) 选择最佳的超参数集。
......
......@@ -4,7 +4,7 @@
**条件 GAN****cGAN** )是 GAN 模型的扩展。 它们允许生成具有特定条件或属性的图像,因此被证明比香草 GAN 更好。 在本章中,我们将实现一个 cGAN,该 cGAN 一旦经过培训,就可以执行自动面部老化。 Grigory Antipov,Moez Baccouche 和 Jean-Luc Dugelay 在其名为 *有条件生成对抗网络* 的人脸衰老的论文中,首先介绍了我们将要实现的 cGAN 网络。 可以在以下链接中找到: [https://arxiv.org/pdf/1702.01983.pdf](https://arxiv.org/pdf/1702.01983.pdf)
**条件 GAN****cGAN** )是 GAN 模型的扩展。 它们允许生成具有特定条件或属性的图像,因此被证明比香草 GAN 更好。 在本章中,我们将实现一个 cGAN,该 cGAN 一旦经过培训,就可以执行自动面部老化。 Grigory Antipov,Moez Baccouche 和 Jean-Luc Dugelay 在其名为 *有条件生成对抗网络* 的人脸衰老的论文中,首先介绍了我们将要实现的 cGAN 网络。 [可以在以下链接中找到](https://arxiv.org/pdf/1702.01983.pdf)
在本章中,我们将介绍以下主题:
......@@ -96,7 +96,7 @@ cGAN 的问题在于它们无法学习将属性 *y* 的 输入图像 *x* 逆映
面部识别网络的主要目标是在给定图像中识别人的身份。 对于我们的任务,我们将使用没有完全连接的层的预训练的 Inception-ResNet-2 模型。 Keras 有一个很好的预训练模型库。 出于实验目的,您也可以使用其他网络,例如 Inception 或 ResNet-50。 要了解有关 Inception-ResNet-2 的更多信息,请访问链接 [https://arxiv.org/pdf/1602.07261.pdf](https://arxiv.org/pdf/1602.07261.pdf) 。 一旦提供了图像,经过预训练的 Inception-ResNet-2 网络将返回相应的嵌入。 可以通过计算嵌入的欧几里德距离来计算针对真实图像和重建图像的提取的嵌入。 关于年龄识别网络的更多信息将在 Age-cGAN 部分的 *Keras 实现中进行介绍。*
面部识别网络的主要目标是在给定图像中识别人的身份。 对于我们的任务,我们将使用没有完全连接的层的预训练的 Inception-ResNet-2 模型。 Keras 有一个很好的预训练模型库。 出于实验目的,您也可以使用其他网络,例如 Inception 或 ResNet-50。 要了解有关 Inception-ResNet-2 的更多信息,[请访问链接](https://arxiv.org/pdf/1602.07261.pdf)。 一旦提供了图像,经过预训练的 Inception-ResNet-2 网络将返回相应的嵌入。 可以通过计算嵌入的欧几里德距离来计算针对真实图像和重建图像的提取的嵌入。 关于年龄识别网络的更多信息将在 Age-cGAN 部分的 *Keras 实现中进行介绍。*
......@@ -230,7 +230,7 @@ pip install -r requirements.txt
The authors of the paper titled *Deep expectation of real and apparent age from a single image without facial landmarks,* which is available at[https://www.vision.ee.ethz.ch/en/publications/papers/articles/eth_biwi_01299.pdf](https://www.vision.ee.ethz.ch/en/publications/papers/articles/eth_biwi_01299.pdf), have scraped these images from Wikipedia and made them available for academic purposes. If you intend to use the dataset for commercial purposes, contact the authors at `rrothe@vision.ee.ethz.ch`.
您可以从以下链接手动下载数据集,并将所有压缩文件放置在 Age-cGAN 项目内的目录中,网址为 [https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki /](https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/)
您可以从[以下链接](https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/)手动下载数据集,并将所有压缩文件放置在 Age-cGAN 项目内的目录中。
执行以下步骤以下载和提取数据集。
......@@ -1265,7 +1265,7 @@ image_resizer.compile(loss=loss, optimizer='adam')
fr_model.compile(loss=loss, optimizer="adam")
```
请参阅 [https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects/Age-cGAN/main.py](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects/Age-cGAN/main.py) 以获取`build_fr_model()`功能。
请参阅[这里](https://github.com/PacktPublishing/Generative-Adversarial-Networks-Projects/Age-cGAN/main.py)以获取`build_fr_model()`功能。
4. 接下来,创建另一个对抗模型。 在此对抗模型中,我们将具有三个网络:编码器,生成器和面部识别模型:
......
......@@ -4,7 +4,7 @@
众所周知,卷积层确实擅长处理图像。 他们能够学习重要的特征,例如边缘,形状和复杂的对象,有效的, ,例如神经网络,例如 Inception,AlexNet, **视觉几何组****VGG** )和 ResNet。 Ian Goodfellow 等人在其名为*生成对抗性网络*的论文中提出了具有密集层的**生成对抗网络****GAN** ),该网络可在 以下链接: [https://arxiv.org/pdf/1406.2661.pdf](https://arxiv.org/pdf/1406.2661.pdf) 。 复杂的神经网络,例如**卷积神经网络****CNN** ),**递归神经网络****RNN** )和**长短 长期记忆****LSTM** )最初并未在 GAN 中进行测试。 **深度卷积生成对抗网络****DCGAN** )的发展是使用 CNN 进行图像生成的重要一步。 DCGAN 使用卷积层而不是密集层。 它们是由研究人员 Alec Radford , Luke Metz , Soumith Chintala 等提出的,我在其论文中,*通过深度卷积生成对抗性技术* *网络*的无监督表示学习,可以在以下链接中找到:[https:// arxiv.org/pdf/1511.06434.pdf](https://arxiv.org/pdf/1511.06434.pdf) 。 从那时起,DCGAN 被广泛用于各种图像生成任务。 在本章中,我们将使用 DCGAN 架构生成动漫角色。
众所周知,卷积层确实擅长处理图像。 他们能够学习重要的特征,例如边缘,形状和复杂的对象,有效的, ,例如神经网络,例如 Inception,AlexNet, **视觉几何组****VGG** )和 ResNet。 Ian Goodfellow 等人在其名为*生成对抗性网络*的论文中提出了具有密集层的**生成对抗网络****GAN** ),[该网络可在以下链接获得](https://arxiv.org/pdf/1406.2661.pdf)。 复杂的神经网络,例如**卷积神经网络****CNN** ),**递归神经网络****RNN** )和**长短 长期记忆****LSTM** )最初并未在 GAN 中进行测试。 **深度卷积生成对抗网络****DCGAN** )的发展是使用 CNN 进行图像生成的重要一步。 DCGAN 使用卷积层而不是密集层。 它们是由研究人员 Alec Radford , Luke Metz , Soumith Chintala 等提出的,我在其论文中,*通过深度卷积生成对抗性技术* *网络*的无监督表示学习,[可以在以下链接中找到](https://arxiv.org/pdf/1511.06434.pdf)。 从那时起,DCGAN 被广泛用于各种图像生成任务。 在本章中,我们将使用 DCGAN 架构生成动漫角色。
在本章中,我们将介绍以下主题:
......@@ -174,7 +174,7 @@ pip install -r requirements.txt
要训练 DCGAN 网络,我们需要一个动漫人物数据集,其中包含人物的裁剪面孔。 收集数据集有多种方法。 我们可以使用公开可用的数据集,也可以抓取一个,只要不违反网站的抓取政策即可。 在本章中,我们将仅出于教育和演示目的刮取图像。 我们使用名为 `gallery-dl` 的搜寻器工具从 `pixiv.net` 抓取了图像。 这是一个命令行工具,可用于从网站下载图像集,例如 [pixiv.net](http://pixiv.net)[exhentai.org](http://exhentai.org)[danbooru.donmai.us](http://danbooru.donmai.us) , 和更多。 它可通过以下链接获得: [https://github.com/mikf/gallery-dl](https://github.com/mikf/gallery-dl)
要训练 DCGAN 网络,我们需要一个动漫人物数据集,其中包含人物的裁剪面孔。 收集数据集有多种方法。 我们可以使用公开可用的数据集,也可以抓取一个,只要不违反网站的抓取政策即可。 在本章中,我们将仅出于教育和演示目的刮取图像。 我们使用名为 `gallery-dl` 的搜寻器工具从 `pixiv.net` 抓取了图像。 这是一个命令行工具,可用于从网站下载图像集,例如 [pixiv.net](http://pixiv.net)[exhentai.org](http://exhentai.org)[danbooru.donmai.us](http://danbooru.donmai.us) 和更多。 [它可通过以下链接获得](https://github.com/mikf/gallery-dl)
......@@ -233,7 +233,7 @@ Download images at your own risk. The information given is for educational purpo
在本节中,我们将从图像中裁剪出面孔。 我们将使用 **python-animeface** 从图像中裁剪出面孔。 这是一个开源 GitHub 存储库,可从命令行的图像中自动裁剪面部。 它可以通过以下链接公开获得: [https://github.com/nya3jp/python-animeface](https://github.com/nya3jp/python-animeface)
在本节中,我们将从图像中裁剪出面孔。 我们将使用 **python-animeface** 从图像中裁剪出面孔。 这是一个开源 GitHub 存储库,可从命令行的图像中自动裁剪面部。 [它可以通过以下链接公开获得](https://github.com/nya3jp/python-animeface)
执行以下步骤来裁剪图像并调整其大小:
......@@ -983,7 +983,7 @@ Tensorboard 的 **GRAPHS** 部分包含两个网络的图形。 如果网络性
* **MNIST 字符的生成**:MNIST 数据集包含 60,000 张手写数字图像。 要训​​练复杂的监督学习模型,MNIST 数据集是不够的。 DCGAN 一旦受过训练,将生成可以添加到原始数据集中的新数字。
* **人脸生成**:DCGAN 使用卷积神经网络,非常擅长生成逼真的图像。
* **特征提取器**:训练后,可以使用鉴别器从中间层提取特征。 这些提取的功能在样式转移和面部识别等任务中很有用。 样式转移涉及生成图像的内部表示,用于计算样式和内容损失。 请参阅以下论文,以了解有关样式转换的更多信息: [https://arxiv.org/pdf/1508.06576.pdf](https://arxiv.org/pdf/1508.06576.pdf)
* **特征提取器**:训练后,可以使用鉴别器从中间层提取特征。 这些提取的功能在样式转移和面部识别等任务中很有用。 样式转移涉及生成图像的内部表示,用于计算样式和内容损失。 请参阅[以下论文](https://arxiv.org/pdf/1508.06576.pdf),以了解有关样式转换的更多信息
......
......@@ -4,7 +4,7 @@
**超分辨率生成对抗网络****SRGAN** ,是**生成对抗网络****GAN** ), 低分辨率图像中的高分辨率图像,具有更好的细节和更高的质量 。 CNN 较早用于产生高分辨率图像,该图像可以更快地训练并达到高水平的精度。 但是,在某些情况下,它们无法恢复更精细的细节,并且通常会生成模糊的图像。 在本章中,我们将在 Keras 框架中实现一个 SRGAN 网络,该网络将能够生成高分辨率图像。 SRGAN 在标题为*使用生成对抗网络的逼真的单图像超分辨率的论文中引入,*,作者是 Christian Ledig,Lucas Theis,Ferenc Huszar, Jose Caballero,Andrew Cunningham 等*和*可以在以下链接中找到: [https://arxiv.org/pdf/1609.04802.pdf](https://arxiv.org/pdf/1609.04802.pdf)
**超分辨率生成对抗网络****SRGAN** ,是**生成对抗网络****GAN** ), 低分辨率图像中的高分辨率图像,具有更好的细节和更高的质量 。 CNN 较早用于产生高分辨率图像,该图像可以更快地训练并达到高水平的精度。 但是,在某些情况下,它们无法恢复更精细的细节,并且通常会生成模糊的图像。 在本章中,我们将在 Keras 框架中实现一个 SRGAN 网络,该网络将能够生成高分辨率图像。 SRGAN 在标题为*使用生成对抗网络的逼真的单图像超分辨率的论文中引入,*,作者是 Christian Ledig,Lucas Theis,Ferenc Huszar, Jose Caballero,Andrew Cunningham 等[可以在以下链接中找到](https://arxiv.org/pdf/1609.04802.pdf)
在本章中, e 将涵盖以下主题:
......@@ -268,7 +268,7 @@ pip install -r requirements.txt
在本章中,我们将使用大型 **CelebFaces 属性****CelebA** )数据集,该数据集可从 [http://mmlab.ie.cuhk.edu.hk 获得 /projects/CelebA.html](http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html) 。 数据集包含 202、599 名名人的面部图像。
在本章中,我们将使用大型 **CelebFaces 属性****CelebA** )数据集,该数据集可从[这里](http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html)获得。 数据集包含 202、599 名名人的面部图像。
The dataset is available for non-commercial research purposes only and can't be used for commercial purposes. If you intend to use the dataset for commercial purposes, seek permissions from the owners of the images.
......
......@@ -223,7 +223,7 @@ The architecture of the Stage-II generator
类似于生成器网络,鉴别器网络是一个深度卷积神经网络,并且包含额外的下采样层,因为图像的大小比 Stage-I 中的鉴别器网络大。 鉴别器是一个可识别匹配的鉴别器(有关更多信息,请参见以下链接: [https://arxiv.org/pdf/1605.05396.pdf](https://arxiv.org/pdf/1605.05396.pdf),它使我们可以更好地实现 图片和条件文字。 在训练期间,鉴别器将真实图像及其对应的文本描述作为正样本对,而负样本对则由两组组成。 第一组是具有不匹配的文本嵌入的真实图像,而第二组是具有相应的文本嵌入的合成图像。 让我们看一下鉴别器网络的体系结构,如下图所示:
类似于生成器网络,鉴别器网络是一个深度卷积神经网络,并且包含额外的下采样层,因为图像的大小比 Stage-I 中的鉴别器网络大。 鉴别器是一个可识别匹配的鉴别器(有关更多信息,[请参见以下链接](https://arxiv.org/pdf/1605.05396.pdf),它使我们可以更好地实现 图片和条件文字。 在训练期间,鉴别器将真实图像及其对应的文本描述作为正样本对,而负样本对则由两组组成。 第一组是具有不匹配的文本嵌入的真实图像,而第二组是具有相应的文本嵌入的合成图像。 让我们看一下鉴别器网络的体系结构,如下图所示:
![](img/a8c04bff-bd5a-4350-8b08-bd2ef6ae193b.png)
......@@ -317,7 +317,7 @@ pip install -r requirements.txt
在本节中,我们将使用 CUB 数据集,该数据集是不同鸟类的图像数据集,可以在以下链接中找到: [http://www.vision.caltech.edu/visipedia/CUB-200 -2011.html](http://www.vision.caltech.edu/visipedia/CUB-200-2011.html) 。 CUB 数据集包含 11,788 个高分辨率图像。 我们还将需要 char-CNN-RNN 文本嵌入,可以在以下链接中找到它们: [https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE](https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE) 。 这些是预训练的文本嵌入。 按照以下几节中给出的说明下载和提取数据集。
在本节中,我们将使用 CUB 数据集,该数据集是不同鸟类的图像数据集,[可以在以下链接中找到](http://www.vision.caltech.edu/visipedia/CUB-200-2011.html)。 CUB 数据集包含 11,788 个高分辨率图像。 我们还将需要 char-CNN-RNN 文本嵌入,[可以在以下链接中找到它们](https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE)。 这些是预训练的文本嵌入。 按照以下几节中给出的说明下载和提取数据集。
......@@ -327,7 +327,7 @@ pip install -r requirements.txt
可以从 [http://www.vision.caltech.edu/visipedia/CUB-200-2011.html](http://www.vision.caltech.edu/visipedia/CUB-200-2011.html) 手动下载`CUB`数据集。 另外,我们可以执行以下命令来下载数据集:
可以从[这里](http://www.vision.caltech.edu/visipedia/CUB-200-2011.html)手动下载`CUB`数据集。 另外,我们可以执行以下命令来下载数据集:
```py
wget http://www.vision.caltech.edu/visipedia-data/CUB-200-2011/CUB_200_2011.tgz
......@@ -335,7 +335,7 @@ wget http://www.vision.caltech.edu/visipedia-data/CUB-200-2011/CUB_200_2011.tgz
下载数据集后,我们可以将其提取并放在`data/birds/`目录中。
从以下链接下载 char-CNN-RNN 嵌入: [https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE](https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE)
[从以下链接下载 char-CNN-RNN 嵌入](https://drive.google.com/open?id=0B3y_msrWZaXLT1BZdVdycDY5TEE)
......
......@@ -4,7 +4,7 @@
CycleGAN 是一种**生成对抗性** **网络****GAN** )的类型,用于跨域传输任务,例如更改图像的样式,将绘画转变为照片, 反之亦然,例如照片增强功能,更改照片的季节等等。 CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题为*的非配对图像到图像转换中使用循环一致对抗网络*引入。 该产品于 2018 年 2 月在加州大学伯克利分校的 **Berkeley AI Research****BAIR** )实验室生产,可通过以下链接获得: [https://arxiv.org/pdf/1703.10593.pdf](https://arxiv.org/pdf/1703.10593.pdf) 。 由于其广泛的使用案例,CycleGAN 在 GAN 社区引起了轰动。 在本章中,我们将与 CycleGAN 一起使用,尤其是使用它们将绘画转换为照片。
CycleGAN 是一种**生成对抗性** **网络****GAN** )的类型,用于跨域传输任务,例如更改图像的样式,将绘画转变为照片, 反之亦然,例如照片增强功能,更改照片的季节等等。 CycleGAN 由朱俊彦,Taesung Park,Phillip Isola 和 Alexei A. Efros 在题为*的非配对图像到图像转换中使用循环一致对抗网络*引入。 该产品于 2018 年 2 月在加州大学伯克利分校的 **Berkeley AI Research****BAIR** )实验室生产,[可通过以下链接获得](https://arxiv.org/pdf/1703.10593.pdf)。 由于其广泛的使用案例,CycleGAN 在 GAN 社区引起了轰动。 在本章中,我们将与 CycleGAN 一起使用,尤其是使用它们将绘画转换为照片。
在本章中,我们将介绍以下主题:
......@@ -128,7 +128,7 @@ These hyperparameters are best suited for the Keras framework. If you are using
鉴别器网络的架构类似于 PatchGAN 网络中的鉴别器架构。 它是一个深度卷积神经网络,包含多个卷积块。 基本上,它会拍摄形状为(128、128、3)的图像,并预测该图像是真实的还是假的。 它包含几个 ZeroPadding2D 层,可以在以下链接中找到其文档: [https://keras.io/layers/convolutional/#zeropadding2d](https://keras.io/layers/convolutional/#zeropadding2d) 。 下表详细显示了鉴别器网络的体系结构:
鉴别器网络的架构类似于 PatchGAN 网络中的鉴别器架构。 它是一个深度卷积神经网络,包含多个卷积块。 基本上,它会拍摄形状为(128、128、3)的图像,并预测该图像是真实的还是假的。 它包含几个 ZeroPadding2D 层,[可以在以下链接中找到其文档](https://keras.io/layers/convolutional/#zeropadding2d)。 下表详细显示了鉴别器网络的体系结构:
| **图层名称** | **超参数** | **输入形状** | **输出形状** |
| 输入层 | `none` | (128, 128, 3) | (128, 128, 3) |
......@@ -287,7 +287,7 @@ pip install -r requirements.txt
在本章中,我们将使用`monet2photo`数据集。 该数据集是开放源代码,可以由 UC Berkeley 的 **Berkeley AI Research****BAIR** )实验室使用。 您可以从以下链接选择手动下载数据集: [https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/monet2photo.zip](https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/monet2photo.zip)
在本章中,我们将使用`monet2photo`数据集。 该数据集是开放源代码,可以由 UC Berkeley 的 **Berkeley AI Research****BAIR** )实验室使用。 [您可以从以下链接选择手动下载数据集](https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/monet2photo.zip)
下载后,将其解压缩到根目录中。
......@@ -1111,9 +1111,10 @@ CycleGAN 有许多应用。 在本章中,我们使用了 CycleGAN 将画作转
CycleGAN 有许多已知的用例。 使用以下文章寻求帮助,探索新用途:
* *通过深度学习(CycleGAN)将 Fortnite 变成 PUBG:* [https://towardsdatascience.com/turning-fortnite-into-pubg-with-deep-learning-cyclegan- 2f9d339dcdb0](https://towardsdatascience.com/turning-fortnite-into-pubg-with-deep-learning-cyclegan-2f9d339dcdb0)
* [*GAN-CycleGAN(用图片玩魔术):*](https://towardsdatascience.com/turning-fortnite-into-pubg-with-deep-learning-cyclegan-2f9d339dcdb0) [https://medium.com/@jonathan_hui/gan-cyclegan-6a50e7600d7](https://medium.com/@jonathan_hui/gan-cyclegan-6a50e7600d7)
* *CycleGANs 简介:* [https://medium.com/coding-blocks/introduction-to-cyclegans-1dbdb8fbe781](https://medium.com/coding-blocks/introduction-to-cyclegans-1dbdb8fbe781)
* *在 TensorFlow 中理解和实现 CycleGAN:* [https://hardikbansal.github.io/CycleGANBlog/](https://hardikbansal.github.io/CycleGANBlog/)
* [通过深度学习(CycleGAN)将 Fortnite 变成 PUBG](https://towardsdatascience.com/turning-fortnite-into-pubg-with-deep-learning-cyclegan-2f9d339dcdb0)
* [GAN-CycleGAN(用图片玩魔术)](https://towardsdatascience.com/turning-fortnite-into-pubg-with-deep-learning-cyclegan-2f9d339dcdb0)
* [GAN 和 CycleGAN](https://medium.com/@jonathan_hui/gan-cyclegan-6a50e7600d7)
* [CycleGANs 简介](https://medium.com/coding-blocks/introduction-to-cyclegans-1dbdb8fbe781)
* [在 TensorFlow 中理解和实现 CycleGAN](https://hardikbansal.github.io/CycleGANBlog/)
......@@ -4,7 +4,7 @@
Pix2pix 是一种**生成对抗网络****GAN** ),用于图像到图像的翻译。 图像到图像转换是一种将图像的一种表示形式转换为另一种表示形式的方法。 Pix2pix 学习从输入图像到输出图像的映射。 它可用于将黑白图像转换为彩色图像,将草图转换为照片,将白天图像转换为夜间图像,将卫星图像转换为地图图像。 pix2pix 网络最早是由菲利普·伊索拉(Phillip Isola),朱俊彦,周婷慧,阿列克谢·埃弗罗斯(Alexei A. Efros)在名为*和条件对抗网络*的图像到图像转换中引入的。 可以在以下链接中找到: [https://arxiv.org/pdf/1611.07004.pdf](https://arxiv.org/pdf/1611.07004.pdf)
Pix2pix 是一种**生成对抗网络****GAN** ),用于图像到图像的翻译。 图像到图像转换是一种将图像的一种表示形式转换为另一种表示形式的方法。 Pix2pix 学习从输入图像到输出图像的映射。 它可用于将黑白图像转换为彩色图像,将草图转换为照片,将白天图像转换为夜间图像,将卫星图像转换为地图图像。 pix2pix 网络最早是由菲利普·伊索拉(Phillip Isola),朱俊彦,周婷慧,阿列克谢·埃弗罗斯(Alexei A. Efros)在名为*和条件对抗网络*的图像到图像转换中引入的。 可以在[以下链接中找到](https://arxiv.org/pdf/1611.07004.pdf)
在本章中,我们将介绍以下主题:
......@@ -35,7 +35,7 @@ Pix2pix 是条件 GAN 的变体。 我们已经在 [第 3 章](../Text/3.html)
与其他 GAN 相似,pix2pix 由两个网络组成:生成器网络和鉴别器网络。 发电机网络的体系结构受 U-Net( [https://arxiv.org/pdf/1505.04597.pdf](https://arxiv.org/pdf/1505.04597.pdf) )的体系结构的启发。 同样,鉴别器网络的架构也受到 PatchGAN( [https://arxiv.org/pdf/1604.04382.pdf](https://arxiv.org/pdf/1604.04382.pdf)架构的启发。 这两个网络都是深度卷积神经网络。 在本节中,我们将详细探讨 pix2pix。
与其他 GAN 相似,pix2pix 由两个网络组成:生成器网络和鉴别器网络。 发电机网络的体系结构受 [U-Net](https://arxiv.org/pdf/1505.04597.pdf) 的体系结构的启发。 同样,鉴别器网络的架构也受到 [PatchGAN](https://arxiv.org/pdf/1604.04382.pdf) 架构的启发。 这两个网络都是深度卷积神经网络。 在本节中,我们将详细探讨 pix2pix。
......@@ -559,7 +559,7 @@ decoder1 = concatenate([decoder1, encoder7], axis=3)
decoder1 = Activation('relu')(decoder1)
```
第一个上采样模块从编码器部分的最后一层获取输入。 它具有一个 2D 上采样层,一个 2D 卷积层,一个批处理归一化层,一个脱落层,一个串联操作和一个激活函数。 请参阅 Keras 文档以找到有关这些层的更多信息,该文档可从 [https://keras.io/](https://keras.io/) 获得。
第一个上采样模块从编码器部分的最后一层获取输入。 它具有一个 2D 上采样层,一个 2D 卷积层,一个批处理归一化层,一个脱落层,一个串联操作和一个激活函数。 请参阅 Keras 文档以找到有关这些层的更多信息,该文档可从[这里](https://keras.io/)获得。
6. 同样,添加以下七个卷积块,如下所示:
......
......@@ -157,18 +157,18 @@ GAN 已被证明对图像生成任务很有用。 GAN 中的大部分研究目
您可以探索的其他 GAN 架构包括:
* **BigGAN***大规模 GAN 训练,用于高保真自然图像合成*[https://arxiv.org/pdf/1809.11096.pdf](https://arxiv.org/pdf/1809.11096.pdf)
* **WaveGAN** :使用生成的对抗网络合成音频( [https://arxiv.org/abs/1802.04208](https://arxiv.org/abs/1802.04208)
* **开始***开始:边界均衡生成对抗网络*[https://arxiv.org/abs/1703.10717](https://arxiv.org/abs/1703.10717)
* **AC-GAN***使用辅助分类器 GAN*[https://arxiv.org/abs/1610.09585](https://arxiv.org/abs/1610.09585) )的条件图像合成
* **AdaGAN***AdaGAN:增强生成模型*[https://arxiv.org/abs/1701.02386v1](https://arxiv.org/abs/1701.02386v1)
* **ArtGAN***ArtGAN:带有条件分类 GAN* 的艺术品合成( [https://arxiv.org/abs/1702.03410](https://arxiv.org/abs/1702.03410)
* **BAGAN***BAGAN:平衡 GAN* 的数据增强( [https://arxiv.org/abs/1803.09655](https://arxiv.org/abs/1803.09655)
* **BicycleGAN***迈向多模态图像到图像翻译*[https://arxiv.org/abs/1711.11586](https://arxiv.org/abs/1711.11586)
* **CapsGAN***CapsGAN:为生成对抗网络使用动态路由*[https://arxiv.org/abs/1806.03968](https://arxiv.org/abs/1806.03968)
* **E-GAN***进化生成对抗网络*[https://arxiv.org/abs/1803.00657](https://arxiv.org/abs/1803.00657)
* **WGAN***Wasserstein GAN*[h](https://arxiv.org/abs/1701.07875v2) [ttps://arxiv.org/abs/1701.07875v2](https://arxiv.org/abs/1701.07875v2) )
* [**BigGAN**:用于高保真自然图像合成的大规模 GAN 训练](https://arxiv.org/pdf/1809.11096.pdf)
* [**WaveGAN**:使用生成的对抗网络合成音频](https://arxiv.org/abs/1802.04208)
* [**BEGAN**:BEGAN:边界均衡生成对抗网络](https://arxiv.org/abs/1703.10717)
* [**AC-GAN**:使用辅助分类器 GAN 的条件图像合成](https://arxiv.org/abs/1610.09585)
* [**AdaGAN**:AdaGAN:增强生成模型](https://arxiv.org/abs/1701.02386v1)
* [**ArtGAN**:ArtGAN:带有条件分类 GAN 的艺术品合成](https://arxiv.org/abs/1702.03410)
* [**BAGAN**:BAGAN:平衡 GAN 的数据增强](https://arxiv.org/abs/1803.09655)
* [**BicycleGAN**:从多模态图像迈向图像翻译](https://arxiv.org/abs/1711.11586)
* [**CapsGAN**:CapsGAN:为生成对抗网络使用动态路由](https://arxiv.org/abs/1806.03968)
* [**E-GAN**:进化生成对抗网络](https://arxiv.org/abs/1803.00657)
* [**WGAN**:Wasserstein GAN](https://arxiv.org/abs/1701.07875v2)
研究人员还开发了数百种其他 GAN 架构。
......
......@@ -75,9 +75,9 @@
* Mac 版 Zipeg / iZip / UnRarX
* 适用于 Linux 的 7-Zip / PeaZip
本书的代码包也托管在 GitHub 的 **[https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with -Python](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python)** 。 如果代码有更新,它将在现有 GitHub 存储库上进行更新。
本书的代码包也托管在 [GitHub](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python)。 如果代码有更新,它将在现有 GitHub 存储库上进行更新。
**[https://github.com/PacktPublishing/](https://github.com/PacktPublishing/) 中,我们还提供了丰富的图书和视频目录中的其他代码包。**去看一下!
[这个页面](https://github.com/PacktPublishing/)中,我们还提供了丰富的图书和视频目录中的其他代码包。去看一下!
......@@ -87,7 +87,7 @@
我们还提供了 PDF 文件,其中包含本书中使用的屏幕截图/图表的彩色图像。 您可以在此处下载: [http://www.packtpub.com/sites/default/files/downloads/ 9781789348279 _ColorImages.pdf](http://www.packtpub.com/sites/default/files/downloads/Bookname_ColorImages.pdf)
我们还提供了 PDF 文件,其中包含本书中使用的屏幕截图/图表的彩色图像。 [您可以在此处下载](http://www.packtpub.com/sites/default/files/downloads/Bookname_ColorImages.pdf)
......
......@@ -25,7 +25,7 @@
本章中提供的代码要求:
* Python 3.5+(强烈建议您使用 Anaconda 发行版: [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/)
* Python 3.5+(强烈建议您使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 库:
* 科学 0.19+
* NumPy 1.10+
......@@ -34,7 +34,7 @@
* Matplotlib 2.0+
* 海上 0.9+
可以在 GitHub 存储库中找到示例: [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter01](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter01)
[可以在 GitHub 存储库中找到示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter01)
......
......@@ -24,7 +24,7 @@
本章中提供的代码要求:
* Python 3.5+(强烈建议您使用 Anaconda 发行版: [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/) [](https://www.anaconda.com/download/))
* Python 3.5+(强烈建议您使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 库:
* 科学 0.19+
* NumPy 1.10+
......@@ -33,11 +33,9 @@
* Matplotlib 2.0+
* 海上 0.9+
该数据集可以通过 UCI 获得。 可以从 [https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/wdbc.data](https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/wdbc.data) 下载 CSV 文件,并且不需要任何预处理 用于添加在加载阶段将出现的列名。
该数据集可以通过 UCI 获得。 可以从[这里](https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/wdbc.data)下载 CSV 文件,并且不需要任何预处理 用于添加在加载阶段将出现的列名。
这些示例可在 GitHub 存储库上找到:
[https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/Chapter02](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter02)
[这些示例可在 GitHub 存储库上找到](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter02)
......
......@@ -25,7 +25,7 @@
本章中提供的代码要求:
* Python 3.5+(强烈建议您使用 Anaconda 发行版: [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/)
* Python 3.5+(强烈建议您使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 库:
* 科学 0.19+
* NumPy 1.10+
......@@ -34,11 +34,9 @@
* Matplotlib 2.0+
* 海上 0.9+
数据集 可以通过 UCI 获得。 可以从 [https://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work](https://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work) 下载 CSV 文件,并且不需要任何预处理,除了添加了 将在加载阶段发生。
数据集 可以通过 UCI 获得。 可以从[这里](https://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work)下载 CSV 文件,并且不需要任何预处理,除了添加了 将在加载阶段发生。
Github 存储库中提供了示例:
[https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/Chapter03](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter03)
[Github 存储库中提供了示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter03)
......@@ -282,7 +280,7 @@ The point x<sub class="calibre26">2</sub> is density-reachable from x<sub class=
旷工数据集(按照本章开头的说明进行下载)由 740 条记录组成,其中包含有关请假几天的员工的信息。 共有 20 个属性,分别代表年龄,服务时间,教育程度,习惯,疾病,纪律衰竭,交通费用,从家到办公室的距离等(这些字段的完整说明,请参见 [https:// archive。 ics.uci.edu/ml/datasets/旷课+ at + work](https://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work) )。 我们的目标是预处理数据并应用 DBSCAN,以发现具有特定语义内容的密集区域。
旷工数据集(按照本章开头的说明进行下载)由 740 条记录组成,其中包含有关请假几天的员工的信息。 共有 20 个属性,分别代表年龄,服务时间,教育程度,习惯,疾病,纪律衰竭,交通费用,从家到办公室的距离等(这些字段的完整说明,请参见[这里](https://archive.ics.uci.edu/ml/datasets/Absenteeism+at+work))。 我们的目标是预处理数据并应用 DBSCAN,以发现具有特定语义内容的密集区域。
第一步是按以下方式加载 CSV 文件(必须更改占位符`<data_path>`,以指向文件的实际位置):
......
......@@ -25,7 +25,7 @@
本章中提供的代码要求以下内容:
* Python 3.5+(强烈建议使用 Anaconda 发行版( [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/)
* Python 3.5+(强烈建议使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 库:
* 科学 0.19+
* NumPy 1.10+
......@@ -34,9 +34,9 @@
* Matplotlib 2.0+
* 海上 0.9+
数据集 可以从 UCI 机器学习存储库中获得。 可以从 [https://archive.ics.uci.edu/ml/datasets/water+treatment+plant](https://archive.ics.uci.edu/ml/datasets/water+treatment+plant) 下载 CSV 文件,除了添加列名外,不需要任何预处理。 ,这将在加载阶段发生。
数据集 可以从 UCI 机器学习存储库中获得。 可以从[这里](https://archive.ics.uci.edu/ml/datasets/water+treatment+plant)下载 CSV 文件,除了添加列名外,不需要任何预处理。 ,这将在加载阶段发生。
可以在 GitHub 存储库上找到示例: [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/Chapter04](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter04)
[可以在 GitHub 存储库上找到示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter04)
......
......@@ -34,7 +34,7 @@
* Matplotlib 2.0+
* 海上 0.9+
可以在 GitHub 存储库中的 [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter05](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter05) 中找到示例
[可以在 GitHub 存储库中找到示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter05)
......
......@@ -27,7 +27,7 @@
本章将介绍的代码需要以下内容:
* Python 3.5+(强烈建议使用 Anaconda 发行版( [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/)
* Python 3.5+(强烈建议使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 以下库:
* 科学 0.19+
* NumPy 1.10+
......@@ -36,7 +36,7 @@
* Matplotlib 2.0+
* 海上 0.9+
可以在 GitHub 存储库中找到这些示例,网址为 [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter07](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter07)
[可以在 GitHub 存储库中找到这些示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter07)
......
......@@ -36,9 +36,9 @@
* Matplotlib 2.0+
* 海上 0.9+
* TensorFlow 1.5+
* 深度信任网络( [https://github.com/albertbup/deep-belief-network](https://github.com/albertbup/deep-belief-network)
* [深度信任网络](https://github.com/albertbup/deep-belief-network)
这些示例可在 GitHub 存储库中找到,网址为 [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/Chapter08](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter08)
[这些示例可在 GitHub 存储库中找到](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter08)
......@@ -1059,7 +1059,7 @@ Structure of a generic DBN
在此示例中,我们要使用 DBN 来查找 MNIST 数据集的低维表示。 由于这些模型的复杂性很容易增加,我们将限制该过程为 500 个随机样本。 该实现基于 Deep-belief-network 软件包( [https://github.com/albertbup/deep-belief-network](https://github.com/albertbup/deep-belief-network),该软件包同时支持 NumPy 和 TensorFlow。 在前一种情况下,必须从`dbn`包中导入类(其名称保持不变),而在后一种情况下,必须是`dbn.tensorflow`包。 在此示例中,我们将使用要求较少的 NumPy 版本,但也请读者检查 TensorFlow 版本。
在此示例中,我们要使用 DBN 来查找 MNIST 数据集的低维表示。 由于这些模型的复杂性很容易增加,我们将限制该过程为 500 个随机样本。 该实现基于 [Deep-belief-network 软件包](https://github.com/albertbup/deep-belief-network),该软件包同时支持 NumPy 和 TensorFlow。 在前一种情况下,必须从`dbn`包中导入类(其名称保持不变),而在后一种情况下,必须是`dbn.tensorflow`包。 在此示例中,我们将使用要求较少的 NumPy 版本,但也请读者检查 TensorFlow 版本。
让我们从加载和规范化数据集开始,如下所示:
......
......@@ -23,7 +23,7 @@
本章将介绍的代码需要以下内容:
* Python 3.5+(强烈建议使用 Anaconda 发行版( [https://www.anaconda.com/distribution/](https://www.anaconda.com/distribution/)
* Python 3.5+(强烈建议使用 [Anaconda 发行版](https://www.anaconda.com/distribution/)
* 库如下:
* 科学 0.19+
* NumPy 1.10+
......@@ -34,7 +34,7 @@
* TensorFlow 1.5+
* Keras 2+(仅适用于数据集实用程序功能)
可以在 GitHub 存储库中找到这些示例,网址为 [https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/Chapter09](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter09)
[可以在 GitHub 存储库中找到这些示例](https://github.com/PacktPublishing/HandsOn-Unsupervised-Learning-with-Python/tree/master/Chapter09)
......
......@@ -66,7 +66,7 @@ TensorFlow 是 Google 的开放源代码框架,用于构建机器学习 AI 应
我们建议您先按顺序阅读前四章,然后运行 [http://github.com/jeffxtang/mobiletfbook](http://github.com/jeffxtang/mobiletfbook) 。 这将帮助您确保已为 TensorFlow 移动应用程序开发设置了全部开发环境,并且知道如何将 TensorFlow 集成到自己的 iOS 和/或 Android 应用程序中。 如果您是 iOS 开发人员,还将学习如何在 TensorFlow 中使用 Objective-C 或 Swift,以及何时以及如何使用 TensorFlow pod 或手动 TensorFlow iOS 库。
我们建议您先按顺序阅读前四章,然后运行[这里](http://github.com/jeffxtang/mobiletfbook)。 这将帮助您确保已为 TensorFlow 移动应用程序开发设置了全部开发环境,并且知道如何将 TensorFlow 集成到自己的 iOS 和/或 Android 应用程序中。 如果您是 iOS 开发人员,还将学习如何在 TensorFlow 中使用 Objective-C 或 Swift,以及何时以及如何使用 TensorFlow pod 或手动 TensorFlow iOS 库。
然后,如果您需要构建自定义的 TensorFlow Android 库,请转到[第 7 章](../Text/07.html)*使用 CNN 和 LSTM 识别图形*,以及如果您想学习如何在 您的移动应用程序,请查看[第 8 章](../Text/08.html)*使用 RNN 预测股价* , 和[章 10](../Text/10.html)*构建类似 AlphaZero 的手机游戏应用程序*
......@@ -118,9 +118,9 @@ As we have to stop with a specific TensorFlow version at certain points to get t
* Mac 版 Zipeg / iZip / UnRarX
* 适用于 Linux 的 7-Zip / PeaZip
本书的代码包也托管在 Packt GitHub 帐户的 [https://github.com/PacktPublishing/Intelligent-Mobile-Projects-with-TensorFlow](https://github.com/PacktPublishing/Intelligent-Mobile-Projects-with-TensorFlow) 上。 如果代码有更新,它将在现有的 GitHub 存储库中进行更新。
本书的代码包也托管在 [Packt GitHub 帐户](https://github.com/PacktPublishing/Intelligent-Mobile-Projects-with-TensorFlow)上。 如果代码有更新,它将在现有的 GitHub 存储库中进行更新。
**[https://github.com/PacktPublishing/](https://github.com/PacktPublishing/) 中,我们还提供了丰富的图书和视频目录中的其他代码包。** 。 去看一下!
[这个页面](https://github.com/PacktPublishing/) 中,我们还提供了丰富的图书和视频目录中的其他代码包。 去看一下!
......
......@@ -4,7 +4,7 @@
本章介绍如何设置开发环境,以使用 TensorFlow 构建所有 iOS 或 Android 应用程序,本书其余部分对此进行了讨论。 我们不会详细讨论可用于开发的所有受支持的 TensorFlow 版本,OS 版本,Xcode 和 Android Studio 版本,因为可以在 TensorFlow 网站( [http:// www.tensorflow.org](http://www.tensorflow.org)或通过 Google。 相反,我们将在本章中简要讨论示例工作环境,以便我们能够快速了解​​可使用该环境构建的所有出色应用程序。
本章介绍如何设置开发环境,以使用 TensorFlow 构建所有 iOS 或 Android 应用程序,本书其余部分对此进行了讨论。 我们不会详细讨论可用于开发的所有受支持的 TensorFlow 版本,OS 版本,Xcode 和 Android Studio 版本,因为可以在 [TensorFlow 网站](http://www.tensorflow.org)或通过 Google。 相反,我们将在本章中简要讨论示例工作环境,以便我们能够快速了解​​可使用该环境构建的所有出色应用程序。
如果您已经安装了 TensorFlow,Xcode 和 Android Studio,并且可以运行和测试示例 TensorFlow iOS 和 Android 应用程序,并且如果您已经安装了 NVIDIA GPU 以进行更快的深度学习模型训练,则可以跳过本章。 或者,您可以直接跳到您不熟悉的部分。
......@@ -25,7 +25,7 @@
TensorFlow 是领先的机器智能开源框架。 当 Google 在 2015 年 11 月将 TensorFlow 作为一个开源项目发布时,已经有其他一些类似的深度学习开源框架:Caffe,Torch 和 Theano。 在 5 月 10 日的 Google I / O 2018 上,GitHub 上的 TensorFlow 已达到 99000 星,在 4 个月内增加了 14k 星,而 Caffe 仅增加了 2k 至 24k 星。 两年后,它已经成为*和*最流行的开源框架,用于训练和部署深度学习模型(它对传统机器学习也有很好的支持)。 截至 2018 年 1 月,TensorFlow 在 GitHub 上拥有近 8.5 万颗星( [https://github.com/tensorflow/tensorflow](https://github.com/tensorflow/tensorflow) ),而其他三个领先的开源深度学习框架 Caffe( [https ://github.com/BVLC/caffe](https://github.com/BVLC/caffe) ),CNTK( [https://github.com/Microsoft/CNTK](https://github.com/Microsoft/CNTK) )和 Mxnet( [https://github.com/ apache / incubator-mxnet](https://github.com/apache/incubator-mxnet)分别拥有 22k,13k 和 12k 颗星。
TensorFlow 是领先的机器智能开源框架。 当 Google 在 2015 年 11 月将 TensorFlow 作为一个开源项目发布时,已经有其他一些类似的深度学习开源框架:Caffe,Torch 和 Theano。 在 5 月 10 日的 Google I / O 2018 上,GitHub 上的 TensorFlow 已达到 99000 星,在 4 个月内增加了 14k 星,而 Caffe 仅增加了 2k 至 24k 星。 两年后,它已经成为*和*最流行的开源框架,用于训练和部署深度学习模型(它对传统机器学习也有很好的支持)。 截至 2018 年 1 月,TensorFlow 在 GitHub 上拥有[近 8.5 万颗星](https://github.com/tensorflow/tensorflow),而其他三个领先的开源深度学习框架 [Caffe](https://github.com/BVLC/caffe)[CNTK](https://github.com/Microsoft/CNTK)[Mxnet](https://github.com/apache/incubator-mxnet) 分别拥有 22k,13k 和 12k 颗星。
If you're a little confused about the buzz words machine learning, deep learning, machine intelligence, and artificial intelligence (AI), here's a quick summary: machine intelligence and AI are really just the same thing; machine learning is a field, also the most popular one, of AI; deep learning is one special type of machine learning, and is also the modern and most effective approach to solving complicated problems such as computer vision, speech recognition and synthesis, and natural language processing. So in this book, when we say AI, we primarily mean deep learning, the savior that took AI from the long winter to the summer. For more information about the AI winter and deep learning, you can check out [https://en.wikipedia.org/wiki/AI_winter](https://en.wikipedia.org/wiki/AI_winter) and [http://www.deeplearningbook.org](http://www.deeplearningbook.org).
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册