生成对抗网络(GAN)简介在机器学习中,有不同的方法可以预测未见数据集上的输出。此外,深度学习和神经网络是机器学习的一部分,它们是如此强大的技术,能够从零开始生成新的人脸,这些人脸以前甚至不存在,但在训练数据的帮助下看起来很自然,而这是可能的,名为GAN或生成对抗网络的技术。生成对抗网络(GANs)最近最受欢迎的无监督机器学习创新是由伊恩·j·古德费罗在2014年。GAN是一类算法机器学习框架,具有两个连接的神经网络,可以分析、捕获和复制数据集中的变化。此外,这两个神经网络在GAN机器学习中相互对抗,因此被称为敌对的网络.它最常用于各种ML应用程序,例如图像生成、视频生成和语音生成。在本主题中,我们将讨论生成式机器学习(GAN), GAN在机器学习中的应用,GANs如何工作,GANs的组成部分,通过生成式对抗网络(GANs)进行训练和预测的步骤,生成式对抗网络面临的挑战,GANs的类型等。因此,让我们从机器学习中的生成对抗网络(GANs)开始快速介绍。 什么是机器学习中的生成对抗网络?生成对抗网络(GAN)被定义为生成建模技术,用于在训练数据集的基础上生成新的数据集。新生成的数据集与训练数据集相似。 GANs主要包含两个能够捕捉、复制和分析数据集变化的神经网络。这两个神经网络被称为生成器和鉴别器,它们都相互竞争。 生成式对抗网络(Generative Adversarial Network)这个术语由三个词组成,每个词都有各自的含义,具体如下:
为什么需要GANs?随着技术的进步,有各种可能的方法可以通过在训练数据集中引入一些噪声来愚弄ML算法和神经网络,从而对数据进行错误分类。但随着机器学习的创新,人们正在开发各种技术,以防止对图像进行错误分类。因此,人们发现GANs可以生成新的数据集,这些数据集看起来像训练数据集,因此可以开始可视化像训练数据一样的新模式。 GANs的应用GANs是机器学习中非常流行的方法,在现实场景中有各种应用。以下是生成对抗网络(GANs)的几个最著名的应用,如下:
除了这些应用,GANs在机器学习中还有很多其他的应用,具体如下:
一旦GAN在机器学习中的研究达到顶峰,在未来,我们也将看到GAN在生成高质量视频、音频和图像方面的应用。此外,微软已经与OpenAI合作研究GPT,并在下一个层次上探索GAN的力量。 生成式对抗网络的组成生成式对抗网络主要由两个部分组成,即发电机而且鉴频器.顾名思义,生成器根据训练数据集生成一个不可见数据的虚假输出,并使鉴别器误以为这些虚假数据是准确的。此外,鉴别器充当警察,用于区分训练数据和生成数据,识别生成器创建的样本中的异常,并将其分类为Fake或genuine。然而,整个过程将继续,直到生成器获胜,并最终在假数据上愚弄鉴别器。GANs的组成如下: ![]()
![]() 这个过程一直持续到生成器欺骗鉴别器为止,一旦实现了这一点,就创建了广义GAN模型。 生成对抗网络(GANs)的训练我们现在已经讨论了生成对抗网络(GANs)及其组件的基本概念。现在是时候进一步学习机器学习中GANs的训练和预测了。 下面是单独训练GANs组件的几个基本步骤。具体如下: 步骤1:确定实际问题:这在实时项目中非常重要。如果你能发现实际的问题,你就能有效地解决这个问题。在GANs中,无论你的目标是什么,你都需要定义它,这意味着你想要创建什么,如音频、诗歌、文本或图像,都是一种问题类型。 步骤2:选择合适的GAN架构:虽然有这么多的GAN架构,如DCGAN、条件GAN、无条件GAN、最小二乘法GAN、辅助分类器GAN、双视频鉴别器GAN、SRGAN、循环GAN和信息GAN,但我们必须定义在我们的项目中使用哪种类型的GAN架构。 step3:在真实数据集上对discriminator进行训练: 鉴别器总是在真实数据集上进行训练,并且它只包含前向路径机制,不遵循n代的反向传播。此外,它只提供无噪声或虚假内容的实际数据。此外,对于假图像,鉴别器使用生成器创建的实例作为负输出。 一些动作发生在鉴别器训练过程中。
第四步:对发电机进行培训:生成器的训练过程从引入一些假输入开始。最初,我们给生成器一些虚假的输入,但后来它通过添加一些随机噪声产生一些虚假的输出。此外,每当生成器得到训练时,鉴别器保持不活动,而当鉴别器得到训练时,生成器保持不活动。在使用任何随机噪声作为输入为生成器训练提供训练的同时,它的目标是将其转换为有意义的数据以提供有意义的输出,该过程需要时间并在多个epoch下运行: 以下是在假输入上训练生成器的几个简单步骤:
步骤5:为鉴别者提供虚假输入的培训:在这一步中,我们将样本传递给鉴别器,以预测数据是真实的还是假的。进一步,将抽取器收到的反馈再次提供给生成器,对样本进行修改。 GANs是如何工作的?如上所述,GAN包含两个神经网络,其中一个称为Generator G(x),另一个称为Discriminator D(x)。顾名思义,这两种方式都是以对抗的方式进行的。生成器总是试图生成与训练数据相似的假数据来欺骗鉴别器,即生成新的数据实例。而鉴别器的目的是从实际数据中识别虚假数据,即评估数据的真实性。这两个神经网络同时工作,从复杂的数据中学习,包括图像、音频或视频文件。 假设我们试图生成手写数字类似于MNIST数据集,这发生在现实世界中;现在,鉴别器的目标是将准确的MNIST数据集的实例识别为真实的。同时,生成器创建新的合成图像并将它们传递给鉴别器。生成器希望这些图像被识别为准确的,即使它们是假的。它生成尽可能多的手写数字来欺骗鉴别器。鉴别器的目的是识别来自生成器的图像为假的。 GANs的工作可以概括为以下几个步骤:
![]() 不同类型的生成对抗网络(GAN)
下一个话题
数据管理的机器学习
|