当前位置: 首页 > news >正文

Conditional GAN

Text-to-Image

对于根据文字生成图像的问题,传统的做法就是训练一个NN,然后输入一段文字,输出对应一个图片,输出图片与目标图片越接近越好。存在的问题就是,比如火车对应的图片有很多张,如果用传统的NN来训练,模型会产生多张图像的平均,结果就会很模糊。

Conditional GAN

Conditional GAN与普通GAN的区别在于输入加入了一个额外的condition,并且在训练的时候使得输出的结果拟合这个 condition。

此时的discriminator的输入是generator的输出和conditional vector,此时discriminator有两个任务:

  1. 判断图片质量的好坏(图片是否是真实图片)。
  2. 图片是否和输入条件匹配。

Algorithm

训练D(固定G):

  1. 首先从database中抽取m个样本,每个样本都是一对条件和图片。
  2. 从一个分布中抽取m个vector z;然后每个vector都加上条件,表示为(c,z)。
  3. 将(c,z)输入generator,生成m张图片x (条件+图片)。
  4. 从database中随机选取m个真实图片 x
  5. 计算损失,最大化损失。

训练G(固定D):

  1. 随机产生m个噪声,随机从database中抽取m个条件;
  2. 通过generator得到G(C,Z),然后经过discriminator得到D(G(C,Z)),更改G中的参数,使得它的得分越高越好。

具体设计条件GAN判别器,有两种方式:

  1. 图片x经过一个网络变成一个code,条件经过一个网络也变成一个code;把这两种code组合在一输入到网络里面,输出一个分数。
  2. 首先让图片经过一个网络,输出一个分数(用于判断图片是否真实),同时这个网络也输出一个code,这个code和条件结合起来输入到另外一个网络里,也输出一个分数(图片和文字是否匹配)。

Stack GAN(叠加生成对抗网络)

第一个网络生成小的图片,第二个网络生成大的图片。

  • Image-to-image

传统做法存在的问题就是产生的图片很模糊,是因为它是许多张图片的平均。

Conditional GAN的做法就是,generator的输入一张图片和noise z,输出一张图片,discriminator会输入产生的image和input,输出一个scalar。通过算法的迭代,生成下面第三张图片,看起来很清晰,但和真实的图片还是有差异。所以提出了GAN+close,对generator生成的image加上限制,使得生成的image与真实对象越接近越好,得到第四张图片。

  • Speech Enhancement(语音增强)

这里和image-to-image原理类似,都是把G的输入和输出作为D的输入。

  • Video Generation

   Video Generation能够根据影片的前几帧产生后几帧。conditional 为之前几帧的图片。

 

 

http://www.lryc.cn/news/239077.html

相关文章:

  • OOM问题排查+Jvm优化
  • 链表:C++实现
  • 使用JMX监控ZooKeeper和Kafka
  • 蓝桥等考C++组别七级008
  • sam和mobilesam导出预处理的onnx
  • 开源与闭源:大模型发展的双重走向
  • c# 逆变 / 协变
  • electron使用better-sqlite3打包失败(electron打包有进程没有界面)
  • 2.6文件服务器
  • 【C++ 学习 ㊴】- 详解 C++ 的 I/O 流
  • js算法面试题(附答案)
  • 2023 年戴森设计大奖得主是谁?给大楼降温、争取救援机会
  • 〖大前端 - 基础入门三大核心之JS篇㊲〗- DOM改变元素节点的css样式、HTML属性
  • 【word技巧】Word制作试卷,ABCD选项如何对齐?
  • OpenHarmony 4.1计划明年Q1发布, 5.0预计Q3发布
  • 蓝桥等考C++组别八级002
  • 秋招JAVA面经总结
  • Postgresql源码(116)提升子查询案例分析
  • CNP实现应用CD部署
  • kubeadm join 192.168.10.16:6443 --token xxx报错Failed to request cluster-info
  • 车载以太网-传输层-TCP
  • java:简单入门定时任务的几种方式Timer、Quartz、Spring Task
  • 木子-前端-方法标签属性小记(普通jsp/html篇)2023~2024
  • 音视频项目—基于FFmpeg和SDL的音视频播放器解析(十七)
  • 使用netty实现WebSocket协议通信
  • uniapp开发小程序,包过大解决方案
  • Go语言中string与byte转换
  • 机器学习8:在病马数据集上进行算法比较(ROC曲线与AUC)
  • 70. 爬楼梯 --力扣 --JAVA
  • 体感互动游戏VR游戏AR体感游戏软件开发