生成对抗网络(GAN):监督学习与自然语言处理应用
1. 监督学习与GAN架构
监督学习是利用带标签的数据让机器进行学习的过程。在GAN领域,有几种架构采用了监督学习的方式,包括CGAN、BiGAN、AC GAN和监督顺序GAN(Supervised seq - GAN)。
1.1 CGAN(条件生成对抗网络)
CGAN即条件生成对抗网络。在其架构中,类标签会与真实样本关联。生成器G和判别器D都会使用类标签进行训练。具体操作如下:
1. 将噪声向量和类标签作为输入提供给生成器G,G会输出假图像。
2. 把类标签、真实图像和G生成的假图像作为输入提供给判别器D,D要区分真实图像和假图像,并判断图像所属的类别。
其损失函数与普通GAN类似,但在真实样本、判别器和生成器项中添加了类标签“c”。使用二元交叉熵损失,当判别器D不能正确区分时,采用随机梯度下降来优化G和D。
判别器损失函数:
[L_{CGAN}(D) = \mathbb{E}_{r \sim p_d(r)} [\log D(r|c)]]
生成器损失函数:
[L_{CGAN}(G) = \mathbb{E}_{n \sim p_n(n)} [\log (1 - D(G(n|c)))]]
使用最小 - 最大博弈理论,若图像是真实样本,D应输出1,所以要最大化D;若图像来自生成器,D应输出0,所以要最小化G。整体损失函数为:
[\min_G \max_D L_{CGAN}(G, D) = \min_G \max_D { \mathbb{E} {r \sim p_d(r)} [\log D(
超级会员免费看
订阅专栏 解锁全文
2156

被折叠的 条评论
为什么被折叠?



