生产对抗网络
2023-02-17 本文已影响0人
白艺空
生成对抗网络 – GAN 是最近2年很热门的一种无监督算法,他能生成出非常逼真的照片,图像甚至视频。我们手机里的照片处理软件中就会使用到它。
本文将详细介绍生成对抗网络 – GAN 的设计初衷、基本原理、10种典型算法和13种实际应用。
一句话来概括 GAN 的设计动机就是——自动化。
机器的超强算力可以解决很多人工无法解决的问题。自动化后,学习能力更强,适应性也更强。
人工判断生成结果的好坏——自动判断和优化
我们在《监督学习》中讲过,训练集需要大量的人工标注数据,这个过程是成本很高且效率很低的。而人工判断生成结果的好坏也是如此,有成本高和效率低的问题。
而 GAN 能自动完成这个过程,且不断的优化,这是一种效率非常高,且成本很低的方式。GAN是如何实现自动化的呢?下面我们讲解一下他的原理。
生成对抗网络(GAN)由2个重要的部分构成:
生成器(Generator):通过机器生成数据(大部分情况下是图像),目的是“骗过”判别器
判别器(Discriminator):判断这张图像是真实的还是机器生成的,目的是找出生成器做的“假数据”
下面详细介绍一下过程:
第一阶段:固定“判别器D”,训练“生成器G”
我们使用一个还 OK 判别器,让一个“生成器G”不断生成“假数据”,然后给这个“判别器D”去判断。
一开始,“生成器G”还很弱,所以很容易被揪出来。
但是随着不断的训练,“生成器G”技能不断提升,最终骗过了“判别器D”。
到了这个时候,“判别器D”基本属于瞎猜的状态,判断是否为假数据的概率为50%。
第二阶段:固定“生成器G”,训练“判别器D”
循环阶段一和阶段二即可