生成对抗网络(Generative Adversarial Networks,简称GANs)是一种使用深度学习方法(如卷积神经网络)进行生成式建模的方法。
生成式建模是机器学习中的一项无监督学习任务,它涉及自动发现和学习输入数据中的规律或模式,以便模型能够生成或输出可能来自原始数据集的新示例。
GANs 是一种巧妙的训练生成模型的方法,它将问题框架为具有两个子模型的监督学习问题:我们训练的生成器模型用于生成新示例,以及尝试将示例分类为真实(来自领域)或虚假(生成)的判别器模型。这两个模型在一个零和博弈中对抗性地一起训练,直到判别器模型大约一半时间被欺骗,这意味着生成器模型正在生成合理的示例。
GANs 是一个令人兴奋且快速变化的领域,实现了生成模型的承诺,它们能够在各种问题领域生成逼真的示例,最显著的成就是在图像到图像转换任务中,例如将夏季照片转换为冬季,或白天转换为夜晚,以及生成物体、场景和人物的逼真照片,甚至人类也无法分辨真伪。
在这篇文章中,您将发现生成对抗网络(GANs)的温和介绍。
阅读本文后,你将了解:
- GANs 的背景,包括监督学习与无监督学习以及判别式建模与生成式建模。
- GANs 是一种通过将无监督问题视为有监督问题,并同时使用生成模型和判别模型来自动训练生成模型的架构。
- GANs 为复杂的领域特定数据增强提供了途径,并为需要生成解决方案的问题(例如图像到图像转换)提供了解决方案。
通过我的新书《使用 Python 的生成对抗网络》**启动您的项目**,其中包括**分步教程**和**所有示例的 Python 源代码文件**。
让我们开始吧。

生成对抗网络(GAN)入门
图片由 Barney Moss 拍摄,保留部分权利。
概述
本教程分为三个部分;它们是:
- 什么是生成模型?
- 什么是生成对抗网络?
- 为什么选择生成对抗网络?
什么是生成模型?
在本节中,我们将回顾生成模型的概念,探讨监督学习与无监督学习范式以及判别式建模与生成式建模。
监督学习与无监督学习
典型的机器学习问题涉及使用模型进行预测,例如预测建模。
这需要一个用于训练模型的数据集,该数据集由多个示例(称为样本)组成,每个示例都有输入变量(X)和输出类别标签(y)。通过展示输入示例、让模型预测输出并纠正模型使输出更接近预期输出,来训练模型。
在预测或监督学习方法中,目标是学习从输入 x 到输出 y 的映射,给定一组标记的输入-输出对……
— 第2页,《机器学习:概率视角》,2012年。
这种对模型的纠正通常被称为监督式学习,或监督学习。

监督学习示例
监督学习问题的例子包括分类和回归,监督学习算法的例子包括逻辑回归和随机森林。
还有另一种学习范式,模型只提供输入变量(X),问题没有输出变量(y)。
通过提取或总结输入数据中的模式来构建模型。模型没有进行修正,因为模型没有预测任何东西。
机器学习的第二种主要类型是描述性或无监督学习方法。在这里,我们只得到输入,目标是找到数据中“有趣的模式”。[...]这是一个不那么明确的问题,因为我们没有被告知要寻找哪种模式,也没有明显的错误度量可以使用(不像监督学习,我们可以将对给定 x 的 y 的预测与观测值进行比较)。
— 第2页,《机器学习:概率视角》,2012年。
这种缺乏修正的学习通常被称为无监督学习。

无监督学习示例
无监督学习问题的例子包括聚类和生成式建模,无监督学习算法的例子是 K-means 和生成对抗网络。
想从零开始开发GAN吗?
立即参加我为期7天的免费电子邮件速成课程(附示例代码)。
点击注册,同时获得该课程的免费PDF电子书版本。
判别式建模与生成式建模
在监督学习中,我们可能对开发一个模型感兴趣,该模型根据输入变量的示例来预测类别标签。
这种预测建模任务称为分类。
分类也传统上被称为判别式建模。
… 我们使用训练数据找到一个判别函数 f(x),它将每个 x 直接映射到一个类标签,从而将推断和决策阶段合并为一个学习问题。
— 第44页,《模式识别与机器学习》,2006年。
这是因为模型必须区分跨类别的输入变量示例;它必须选择或决定给定的示例属于哪个类别。

判别式建模示例
或者,总结输入变量分布的无监督模型可以用于在输入分布中创建或生成新示例。
因此,这些类型的模型被称为生成模型。

生成式建模示例
例如,单个变量可能具有已知的高斯分布,或钟形分布。一个生成模型可能能够充分总结这个数据分布,然后被用来生成可能适合输入变量分布的新变量。
明确或隐式地建模输入和输出分布的方法被称为生成模型,因为通过从它们中采样,可以在输入空间中生成合成数据点。
— 第43页,《模式识别与机器学习》,2006年。
事实上,一个非常好的生成模型可能能够生成的新示例不仅合理,而且与问题领域的真实示例无法区分。
生成模型示例
朴素贝叶斯是一个生成模型的例子,它通常被用作判别模型。
例如,朴素贝叶斯通过总结每个输入变量和输出类别的概率分布来工作。当进行预测时,会为每个变量计算每个可能结果的概率,然后组合这些独立概率,并预测最有可能的结果。反过来使用时,可以从每个变量的概率分布中进行采样,以生成新的合理(独立)特征值。
生成模型的其他例子包括潜在狄利克雷分配(Latent Dirichlet Allocation,简称LDA)和高斯混合模型(Gaussian Mixture Model,简称GMM)。
深度学习方法可以作为生成模型使用。两个流行的例子包括受限玻尔兹曼机(Restricted Boltzmann Machine,简称RBM)和深度信念网络(Deep Belief Network,简称DBN)。
深度学习生成建模算法的两个现代例子包括变分自编码器(Variational Autoencoder,简称VAE)和生成对抗网络(Generative Adversarial Network,简称GAN)。
什么是生成对抗网络?
生成对抗网络(Generative Adversarial Networks),简称GANs,是一种基于深度学习的生成模型。
更一般地说,GANs 是一种用于训练生成模型的模型架构,在这种架构中最常见的是使用深度学习模型。
GAN 架构最早由 Ian Goodfellow 等人在2014年的论文《生成对抗网络》中提出。
一种名为深度卷积生成对抗网络(Deep Convolutional Generative Adversarial Networks,简称DCGAN)的标准化方法,它能够产生更稳定的模型,后来由 Alec Radford 等人在2015年的论文《使用深度卷积生成对抗网络进行无监督表示学习》中正式提出。
如今,大多数 GANs 至少是松散地基于 DCGAN 架构……
— NIPS 2016 教程:生成对抗网络, 2016。
GAN模型架构涉及两个子模型:一个用于生成新示例的**生成器模型**,以及一个用于将生成的示例分类为真实(来自领域)或虚假(由生成器模型生成)的**判别器模型**。
- 生成器。用于从问题域生成新的合理示例的模型。
- **判别器**。用于将示例分类为真实(*来自领域*)或虚假(*生成*)的模型。
生成对抗网络基于一种博弈论场景,其中生成器网络必须与一个对手竞争。生成器网络直接生成样本。它的对手,判别器网络,试图区分来自训练数据的样本和来自生成器的样本。
— 第699页,《深度学习》,2016年。
生成器模型
生成器模型接收一个固定长度的随机向量作为输入,并在该领域中生成一个样本。
该向量从高斯分布中随机抽取,并用于为生成过程提供种子。经过训练后,这个多维向量空间中的点将对应于问题领域中的点,形成数据分布的压缩表示。
这个向量空间被称为潜在空间,或者由潜在变量组成的向量空间。潜在变量,或隐藏变量,是对一个领域很重要但不能直接观察到的变量。
潜在变量是我们无法直接观察到的随机变量。
— 第67页,《深度学习》,2016年。
我们通常将潜在变量或潜在空间称为数据分布的投影或压缩。也就是说,潜在空间提供了观察到的原始数据(例如输入数据分布)的压缩或高层概念。在 GANs 的情况下,生成器模型将意义赋予所选潜在空间中的点,这样从潜在空间中抽取的新点可以作为输入提供给生成器模型,并用于生成新的不同输出示例。
机器学习模型可以学习图像、音乐和故事的统计潜在空间,然后它们可以从这个空间中采样,创造出具有与模型在训练数据中看到的特征相似的新艺术品。
— 第270页,《使用 Python 进行深度学习》,2017年。
训练完成后,生成器模型被保留并用于生成新样本。

GAN 生成器模型示例
判别器模型
判别器模型将来自领域的一个示例(真实或生成)作为输入,并预测一个二进制类别标签:真实或虚假(生成)。
真实示例来自训练数据集。生成的示例由生成器模型输出。
判别器是一个正常的(且易于理解的)分类模型。
训练过程结束后,判别器模型被丢弃,因为我们对生成器更感兴趣。
有时,生成器可以被重新利用,因为它已经学会了有效地从问题领域的示例中提取特征。部分或全部特征提取层可以用于使用相同或相似输入数据的迁移学习应用中。
我们建议构建良好图像表示的一种方法是训练生成对抗网络(GANs),然后将生成器和判别器网络的一部分作为特征提取器用于监督任务。
——《使用深度卷积生成对抗网络进行无监督表示学习》,2015年。

GAN 判别器模型示例
GANs作为双人游戏
生成式建模是一个无监督学习问题,正如我们在前一节中讨论的那样,尽管 GAN 架构的一个巧妙特性是生成模型的训练被框架为一个监督学习问题。
生成器和判别器这两个模型一起训练。生成器生成一批样本,这些样本连同来自领域的真实示例一起提供给判别器,并被分类为真实或虚假。
然后更新判别器,使其在下一轮中更好地辨别真实和虚假样本,重要的是,生成器根据生成的样本欺骗判别器的程度(或不程度)进行更新。
我们可以把生成器想象成一个伪造者,试图制造假钱,而判别器则像警察,试图放行真钱并抓住假钱。为了在这场游戏中取得成功,伪造者必须学会制造与真钱无法区分的假钱,而生成器网络必须学会创建与训练数据具有相同分布的样本。
— NIPS 2016 教程:生成对抗网络, 2016。
通过这种方式,这两个模型相互竞争,它们在博弈论意义上是对抗性的,并且正在玩一个零和游戏。
因为 GAN 框架可以自然地用博弈论工具进行分析,所以我们称 GAN 为“对抗性”的。
— NIPS 2016 教程:生成对抗网络, 2016。
在这种情况下,零和意味着当判别器成功识别真实和虚假样本时,它会获得奖励或模型参数无需更改,而生成器则会因模型参数的大幅更新而受到惩罚。
反过来,当生成器成功欺骗判别器时,它会获得奖励,或者模型参数无需更改,但判别器会受到惩罚,其模型参数也会更新。
在极限情况下,生成器每次都生成来自输入域的完美副本,判别器无法分辨,并在每种情况下都预测“不确定”(例如,真实和虚假各占50%)。这只是一个理想化情况的例子;我们不需要达到这个地步就能获得一个有用的生成器模型。

生成对抗网络模型架构示例
[训练]促使判别器尝试学习正确地将样本分类为真实或虚假。同时,生成器试图欺骗分类器,使其相信其样本是真实的。在收敛时,生成器的样本与真实数据无法区分,判别器在所有地方都输出1/2。判别器随后可以被丢弃。
— 第700页,《深度学习》,2016年。
GANs与卷积神经网络
GANs 通常处理图像数据,并使用卷积神经网络(CNNs)作为生成器和判别器模型。
这可能是因为该技术首次描述是在计算机视觉领域,并使用了卷积神经网络和图像数据,也因为近年来卷积神经网络在各种计算机视觉任务(如物体检测和人脸识别)中普遍取得了显著进展,达到了最先进的水平。
对图像数据建模意味着潜在空间(生成器的输入)提供了用于训练模型的图像或照片集的压缩表示。这也意味着生成器生成新的图像或照片,提供了一个可以轻松被开发人员或模型用户查看和评估的输出。
也许正是这一点,即能够直观评估生成输出的质量,才导致了计算机视觉应用对CNNs的关注,以及GANs相对于其他生成模型(无论是基于深度学习还是其他)能力的大幅飞跃。
条件GANs
GANs 的一个重要扩展是用于有条件地生成输出。
生成模型可以被训练以从输入领域生成新示例,其中输入(来自潜在空间的随机向量)被一些额外的输入(条件)所提供。
额外的输入可以是类别值,例如生成人物照片时的男性或女性,或者是数字,在生成手写数字图像的情况下。
生成对抗网络可以扩展到条件模型,如果生成器和判别器都以一些额外信息 y 为条件。y 可以是任何类型的辅助信息,例如类标签或来自其他模态的数据。我们可以通过将 y 作为附加输入层输入判别器和生成器来实现条件化。
——《条件生成对抗网络》,2014年。
判别器也受到条件限制,这意味着它既接收真实或虚假的输入图像,也接收额外的输入。在分类标签类型条件输入的情况下,判别器会期望输入属于该类别,从而反过来教导生成器生成该类别的示例以欺骗判别器。
通过这种方式,条件 GAN 可以用于生成特定类型的领域示例。
更进一步,GAN模型可以以领域中的一个示例(例如图像)为条件。这使得GANs能够应用于文本到图像转换,或图像到图像转换。这催生了一些更令人印象深刻的GANs应用,例如风格迁移、照片上色、将夏季照片转换为冬季或白天转换为夜晚等等。
在用于图像到图像转换的条件 GAN 中,例如将白天转换为夜晚,判别器被提供真实和生成的夜间照片示例,以及(以)真实的白天照片作为输入。生成器被提供来自潜在空间的随机向量,以及(以)真实的白天照片作为输入。

条件生成对抗网络模型架构示例
为什么选择生成对抗网络?
深度学习方法在计算机视觉等领域取得的许多重大进展之一是一种称为数据增强的技术。
数据增强能够产生性能更好的模型,既能提高模型技能,又能起到正则化作用,减少泛化误差。它的工作原理是在模型训练的输入问题领域中创建新的、人工但合理的示例。
在图像数据的情况下,这些技术是原始的,涉及裁剪、翻转、缩放以及对训练数据集中现有图像的其他简单转换。
成功的生成式建模为数据增强提供了一种替代的、潜在更具领域特定的方法。事实上,数据增强是生成式建模的简化版本,尽管很少这样描述。
…用潜在(未观测)数据扩充样本。这称为数据增强。[…]在其他问题中,潜在数据是实际应该观测但缺失的数据。
— 第276页,《统计学习的要素》,2016年。
在复杂领域或数据量有限的领域,生成建模为建模提供了更多训练的途径。GANs 在深度强化学习等领域的这种用例中取得了巨大成功。
有许多研究原因表明 GANs 很有趣、很重要并且需要进一步研究。Ian Goodfellow 在他2016年的会议主旨演讲和相关技术报告《NIPS 2016 教程:生成对抗网络》中概述了其中的一些原因。
在这些原因中,他强调了 GANs 成功地建模高维数据、处理缺失数据以及 GANs 提供多模态输出或多个合理答案的能力。
也许 GANs 最引人注目的应用是在需要生成新示例的任务中的条件 GANs。在这里,Goodfellow 指出了三个主要示例。
- **图像超分辨率**。能够生成输入图像的高分辨率版本。
- 艺术创作:创作新的艺术图像、素描、绘画等的能力。
- **图像到图像转换**。能够跨领域转换照片,例如从白天到夜晚,从夏季到冬季等等。
也许 GANs 被广泛研究、开发和使用的最主要原因是它们的成功。GANs 已经能够生成非常逼真的照片,以至于人类无法分辨它们是真实生活中不存在的物体、场景和人物。
“惊人”不足以形容它们的能力和成功。

GANs能力从2014年到2017年的发展示例。摘自《人工智能的恶意使用:预测、预防和缓解》,2018年。
进一步阅读
如果您想深入了解,本节提供了更多关于该主题的资源。
文章
书籍
- 第20章 深度生成模型,深度学习, 2016.
- 第8章 生成式深度学习,使用Python进行深度学习, 2017.
- 机器学习:概率视角, 2012.
- 模式识别与机器学习, 2006.
- 统计学习基础, 2016.
论文
- 生成对抗网络, 2014.
- 使用深度卷积生成对抗网络的无监督表征学习, 2015.
- NIPS 2016 教程:生成对抗网络, 2016.
- 条件生成对抗网络, 2014.
- 人工智能的恶意使用:预测、预防和缓解, 2018.
文章
总结
在这篇文章中,您发现了生成对抗网络(GANs)的温和介绍。
具体来说,你学到了:
- GANs 的背景,包括监督学习与无监督学习以及判别式建模与生成式建模。
- GANs 是一种通过将无监督问题视为有监督问题,并同时使用生成模型和判别模型来自动训练生成模型的架构。
- GANs 为复杂的领域特定数据增强提供了途径,并为需要生成解决方案的问题(例如图像到图像转换)提供了解决方案。
你有什么问题吗?
在下面的评论中提出你的问题,我会尽力回答。
GAN模型的有趣介绍。GAN模型是一个生成模型,GAN在特征学习方面与其他深度模型相比有什么优势?
谢谢。
我不确定 GANs 是否能在特征学习方面有所帮助。
使用迁移学习,从训练好的判别器权重可能会有帮助
写得非常棒,杰森。
这里有一些非常有趣的 GANs 相关内容,您可以考虑将其纳入文章的结尾部分
– https://adversarial-ml-tutorial.org
– http://scholarsy.blogspot.com/2018/11/deoldify-freeopen-photo-retoucher-based.html
– https://www.amazon.in/Hands-Unsupervised-Learning-Using-Python/dp/1492035645
感谢分享。
我有一个关于“GAN书籍”的帖子计划,其中评论了许多例子。
这是一篇很棒的帖子。
谢谢!
嗨,杰森,你正在准备一本关于GAN的书吗?
是的。它正在慢慢成形。
太棒了!
嗨,杰森!这篇文章确实很棒,我可以看到 GAN 模型可以用于信用评分系统。你能向我推荐任何用于信用评分系统的最佳深度学习模型吗?我非常喜欢你的帖子。我将感谢你的推荐,杰森。上帝保佑你!
我目前还不确定,也许将来我会写关于这个话题的文章。
也许可以尝试在 Google 学术搜索上查找?
嗨,杰森!我们什么时候能看到一些关于 GANs 的动手教程,以便开始使用它们?
很快就会!
它们都已编写完成并已安排发布。
太棒了
谢谢!
嗨,杰森……感谢你提供了关于GAN的精彩信息
你有没有关于这些技术的实践教程……
感谢分享您的帖子
是的,我有很多教程已经写好并计划很快在博客上发布。
谢谢杰森。我期待你的GAN书籍。
谢谢!我对此非常兴奋。
您知道哪些 GANs 已经用于脑电图(EEG)信号分析吗?
手头没有,抱歉。
非常感谢您对GANs的精彩介绍
不客气,很高兴您觉得有用。
这些技术确实很有趣。我计划在一个实验项目中实现GANs,以深入探索这些模型。非常感谢您介绍了GANs。
谢谢。
很高兴听到您的项目!
杰森,深度学习中哪些模型更适合用于人脸特征提取,以通过深度学习进行人脸识别和个性判断。
好问题,也许可以从人脸检测算法开始,找到人脸,然后为每个主要情绪使用分类算法。
这将有助于人脸检测
https://machinelearning.org.cn/how-to-perform-face-detection-with-classical-and-deep-learning-methods-in-python-with-keras/
我还建议您在 Google 学术搜索上查看最新研究成果。
关于GAN的详细信息很棒。我才刚刚开始深入研究GAN,但希望在接下来的3-6个月内能开始在项目中使用GAN。
很棒的帖子!
谢谢!
你好,Jason。
我被分配了一个项目,即仅通过眼睛生成一个人脸。是否有可能用 GAN 实现它?
如果可以,请告诉我步骤。
也可以给我发邮件
是的,听起来是一个很棒的项目。
你可以把它当作一个图像到图像的转换问题来处理,例如输入一只眼睛,输出一张脸。也许可以探索一个修改过的条件GAN或pix2pix模型?
GANs 现在引起了我的注意。如果我错了请指正,GANs 可以用来对训练数据进行上采样,并在过程中对训练数据进行特征工程以添加额外特征吗?
谢谢杰森!
据我所知,没有。
它可以用于计算机视觉问题的数据增强。
有一个问题,GANs 属于半监督学习还是无监督学习?
谢谢你。
它们是一种无监督学习,通过自监督学习进行训练。
这个可能会有帮助
https://machinelearning.org.cn/types-of-learning-in-machine-learning/
非常好的文章,我想问你如何用 gan 制作换脸
谢谢。
也许可以从准备一个面部数据集开始,然后探索使用 cyclegan 模型。
这将是一个非常有趣的项目
谢谢!
感谢分享如此丰富的资源。我需要启动一个使用GAN的项目,一如既往,您的文章让我对这个话题有了很好的理解。
谢谢,很高兴听到这个。
嘿,杰森,感谢您对 GANs 的精彩而深入的解释。我是一名研究 GANs 以及如何提高 GAN 网络性能的博士生。很想知道您是否有关于 EBGAN 的教程。
请看这个关于提高性能的内容
https://machinelearning.org.cn/how-to-code-generative-adversarial-network-hacks/
感谢您的建议。
非常感谢!!!!
不客气。
嗨,Jason,
我有一个有点离题的问题,但我希望您能包容我。您是一位优秀的博主和研究员,我知道您阅读了大量的研究论文来更新自己的深度学习知识。我也在尝试阅读研究论文,但我发现很难找到学习一篇论文的先决条件。论文中给出了很多参考文献,但一个人不可能全部阅读。那么您能告诉我一些技巧,如何才能找到先决论文,以便很好地学习和理解一篇论文吗?
谢谢,
没有技巧。你不断地查找术语和概念,直到你理解到足以继续下去,或者忽略那些对你想要了解的内容不重要的细节。
杰森,很棒的文章。谢谢!
阿卜杜尔
我同意杰森的意见。还有
对于许多研究论文来说,会有一篇基础性的、必读的论文。你需要找到并彻底理解它。
谢谢,非常具有教育意义且描述清晰????
不客气。
你好杰森,这是一篇很棒的帖子!
我想问你,我目前正在做图像到地图的转换,GANs 肯定可以帮助我完成这项工作,但是地图上有很多物体,GAN 能帮助我发现训练过程中没有使用过的物体吗?
谢谢!
嗯,如果新物体与之前见过的物体非常相似,模型可能能够猜到。理想情况下,您希望拥有非常有代表性的训练数据。
谢谢,
gans的停止标准是什么?
我可以使用提前停止法吗?
当生成的图像达到您想要的质量时,或者当模型明显崩溃时。
很棒的文章。如果包含循环GAN会更有帮助。
你可以在博客上找到关于 cyclegan 的帖子,使用搜索功能。
https://machinelearning.org.cn/?s=cyclegan&post_type=post&submit=Search
抱歉没有注意到,感谢您的回复。我将充分利用它,感谢您提供如此高质量的博客。
不客气。
嗨 Jason
我在几个月前购买的《使用 Python 的生成对抗网络》一书中的内容和示例描述得非常详细。
您能否分享一些关于 TABULAR GAN 实现的教程,因为它与一维数据的实时实现有关。
很棒的建议,谢谢你。
太棒了……
谢谢!
感谢这篇很棒的文章!
不客气!
内容有趣、有用、简洁,对初学者学习来说解释得很好。
此致。
谢谢。
谢谢你。
不客气。
嗨,杰森,感谢您撰写了如此精彩的博客;我经常引用它。
我有一个关于生成器和判别器之间“对抗游戏”的澄清问题。在这篇文章的引言中,您提到
> 这两个模型在零和博弈中对抗性地一起训练,直到判别器模型大约一半时间被欺骗,这意味着生成器模型正在生成合理的示例。
在原始论文中,训练的(可以说是)主要目标是让生成器产生输出,使得当判别器评估生成器的输出时
> 判别器无法区分这两种分布,即 D(x) = 1/2
其中 D(x) 是输出来自数据而非生成器的概率。这将在您的文章后面讨论。
我不清楚您对“大约一半时间欺骗判别器”的解释来自何处;我的解释是收敛条件是 D(x)=1/2,而不是“一半时间被欺骗”。您能澄清一下吗?谢谢。
两种描述指的是同一件事。另外,它不是“收敛”的,因为 GANs 不会收敛,它是一个动力学系统的半稳定状态。
你好..
感谢您对GANs的精彩介绍,我将使用这些GANs模型进行土壤分类和作物建议,它会产生更好的结果吗?请回复我是否可以使用这些模型?
你的问题是什么?
感谢这篇精彩的帖子和介绍。
真的很有助于我准备研讨会
真的很有助于我准备研讨会,谢谢 🙂
感谢您的反馈,Akshay!
嗨
我最近才熟悉GAN。我想用GAN运行我的项目;我有一个来自牙医术前和术后图像的数据集,我想生成术后图像。我可以用哪种GAN来完成这个项目?
嗨 Mohammadreza...虽然我无法具体谈论您的项目,但我可以提供以下资源作为介绍。
https://machinelearning.org.cn/how-to-develop-an-information-maximizing-generative-adversarial-network-infogan-in-keras/
您能推荐一篇对GANs更温和的介绍性文章吗?我的教育背景是电气工程和数学,并接受过机器学习和卷积神经网络的培训。但是,我就是无法理解所提供的解释。提前感谢。
嗨,William……以下内容可能会让您感兴趣
https://machinelearning.org.cn/resources-for-getting-started-with-generative-adversarial-networks/
很棒的帖子,简要介绍了 GANs 的工作原理。谢谢!
非常有启发性的帖子。您会发布任何关于在非图像数据上实现 cGANs 的文章吗?
感谢您的反馈和建议,Catherine!这个主题非常适合考虑未来的内容!敬请期待!
感谢您的教导。
我有一个问题,请帮我解答。我能否使用 GANs 从一个模式生成周期信号,并且能够改变其频率?如果不能,我应该使用哪种神经网络来实现这个目的?
非常感谢
嗨,Milad……不客气!理论上这听起来很合理。以下内容也可能对您感兴趣:
https://ataspinar.com/2018/04/04/machine-learning-with-signal-processing-techniques/
非常感谢 Jason 的这篇教程。我有一个问题
如果我有例如五个数值作为输入,图像作为输出,应该使用哪种 GAN 方法(哪些步骤)?或者使用其他神经网络?
我想开发一个模型,它基于速度、流量等数值(作为数值输入)来预测以图像形式(例如 28x28x3)的温度分布(作为输出)。
提前感谢。
你好 Aleksandar……非常欢迎!你可能需要考虑结合 CNN 和前馈神经网络的混合模型。以下资源可能对你了解集成模型有帮助
https://machinelearning.org.cn/start-here/#ensemble
抱歉,但你能简单解释一下你是怎么考虑进行这个的吗?有没有可能在没有 GAN 的情况下完成这个?我知道 CNN 和 ANN,但在这种情况下,集成模型能给我带来什么?提前感谢
我有一个问题……是否可能,从零数据开始(即使用一个完全没有训练过且未复制他人作品的 GAN),使用例如 5 张图片的训练集来工作?
你好 Jason……以下位置是开始查询的好地方
https://machinelearning.org.cn/start-here/#gans
谢谢,很棒的帖子。我有一个问题
在生成对抗网络(GANs)中:为什么两个网络(判别器网络和生成器网络)需要同时训练?
提前感谢。
你好 Dima……非常欢迎!我们强烈推荐以下资源
https://machinelearning.org.cn/generative_adversarial_networks/
谢谢你的帖子。我在生成对抗网络(GANs)中有一个问题
为什么两个网络(判别器网络和生成器网络)需要
同时训练?(步骤 1 我们训练判别器网络,然后步骤 2 训练生成器网络,
然后步骤 1 ... 步骤 2 ... 直到收敛),提前感谢。
你好 Dima……我希望以下资源能帮助你解答疑问
https://machinelearning.org.cn/generative_adversarial_networks/