博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Conditional GAN (CGAN) 条件生成网络
阅读量:2136 次
发布时间:2019-04-30

本文共 853 字,大约阅读时间需要 2 分钟。

Conditional GAN = Conditional Generation by GAN

Conditional GAN和GAN的Generator是一样的,差别就是在Discriminator

 

我们学过GAN,GAN的主要作用是用来做生成对象。输入向量,得到对应的对象,但是生成的对象无法控制

 

 

举一个文本生成图像的例子,Text-to-Image

用传统的做法,即Traditional supervised approach,怎么做?

在这里插入图片描述

         以上是数据的例子,我们训练一个neural netowrk,然后输入一个文字,输出对应一个图片,我们希望图片与目标图片越接近越好。

在这里插入图片描述

      这样做有什么问题呢?我们来看一下,例如文字:train对应的图片有很多张。例如下面的火车有正面,有侧面的,如果用传统的NN来训练,模型会想让火车长得像左边,又像一个右边的,这样的结果是不好的。模型会想产生多张图像的平均,结果就会很模糊。

 

Normal GAN

如果是用GAN来做:

先用Generator来生成图片,输入是两个:一个是条件,一个是从某个分布中sample出来的向量。
在这里插入图片描述

然后Discriminator来判断图片是否是生成的

在这里插入图片描述

这样做是有问题的,因为Discriminator只会根据生成的图片是否清晰,是否真实来进行判别,所以Generator 只会按这个标准来生成图片,而没有去按条件(例如:火车)来生成图片。

这里的Discriminator吃两个输入:一个是条件,一个是要判断的图片对象。输出是一个向量,输出向量要判断两个事情:

x is realistic or not + c and x are matched or not
下面是输出向量的例子:
在这里插入图片描述

 

 

Conditional GAN - Discriminator

常见的Discriminator构架如下图,把x丢到一个NN里面得到一个向量表示,然后把文字丢到一个NN里面得到一个向量表示,把两个向量concat起来之后,丢到一个NN里面得到具体的分数。

在这里插入图片描述

 

转载地址:http://mvygf.baihongyu.com/

你可能感兴趣的文章
03. 交换机的Telnet远程登陆配置
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
phpStudy安装yaf扩展
查看>>
密码 加密 加盐 常用操作记录
查看>>
TP 分页后,调用指定页。
查看>>
Oracle数据库中的(+)连接
查看>>
java-oracle中几十个实用的PL/SQL
查看>>
PLSQL常用方法汇总
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>
Oracle PL/SQL语言初级教程之异常处理
查看>>
Oracle PL/SQL语言初级教程之游标
查看>>
Oracle PL/SQL语言初级教程之操作和控制语言
查看>>
Oracle PL/SQL语言初级教程之过程和函数
查看>>
Oracle PL/SQL语言初级教程之表和视图
查看>>
Oracle PL/SQL语言初级教程之完整性约束
查看>>
PL/SQL学习笔记
查看>>
如何分析SQL语句
查看>>
结构化查询语言(SQL)原理
查看>>
SQL教程之嵌套SELECT语句
查看>>