首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生成对抗网络GAN系列(二)Conditional Generative Adversarial Nets(cGAN 条件GAN)

生成对抗网络GAN系列(二)Conditional Generative Adversarial Nets(cGAN 条件GAN)

作者头像
TeeyoHuang
发布2019-05-26 16:07:25
1.9K0
发布2019-05-26 16:07:25
举报

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1435731

生成对抗网络GAN系列(二)

--- Conditional Generative Adversarial Nets(cGAN 条件GAN)

---文末附代码

Conditional Generative Adversarial Nets 论文链接:https://arxiv.org/abs/1411.1784

1.简介

Conditional GAN 是在原始GAN之后一个比较早的改进版,虽然改动确实很简单,但是idea还是非常具有启发性。

2.核心思想

原始GAN的生成器G学到了数据的分布,生成出来的图片其实是随机的,也就是说这个G的生成过程处于一种没有指导的状态,虽然生成的图片,比如mnist数据集来说,生成的的确是数字,但是却没有具体的说是什么数字。 cGAN相当于在原始GAN的基础上加上一个条件:condition,以此来指导G的生成过程。

3.具体实现

在G和D的输入端都添加条件,则D就相当于多加了一部分信息,从而进行更为具体的判别;G的输入多了一个条件之后,生成的数据也就有了一个具体的方向。

损失函数变为:

用图像解释来说,改动其实很简单:

其中的y就是条件,跟数据x和噪声z同时分别输入进D和G网络中。仅仅做了这个改动而已。

4.结果

可以看出,数字是有序排列的,这是因为我们的y设置为一个包含数字0—9的向量

比起普通的原始GAN(下图)来说:生成的虽然是数字,但是是无序的随机数字

很明显,cGAN受到条件y的影响能够生成指定的数字,这就是条件发挥了作用

5.代码

pytorch 版本:https://github.com/TeeyoHuang/conditional-GAN

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年09月04日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 生成对抗网络GAN系列(二)
  • --- Conditional Generative Adversarial Nets(cGAN 条件GAN)
    • ---文末附代码
      • 1.简介
        • 2.核心思想
          • 3.具体实现
            • 4.结果
              • 5.代码
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档