返回

生成式对抗网络(GAN)【第六章】

发布时间:2022-10-30 08:33:36 185
# 数据

文章目录

  • ​​Generator Network​​
  • ​​GAN​​
  • ​​Uncoditional generation​​
  • ​​Generator​​
  • ​​Discriminator​​
  • ​​Basic Idea of GAN​​
  • ​​Algorithm​​
  • ​​Theory behind GAN​​
  • ​​WGAN​​
  • ​​Wasserstein distance​​
  • ​​Conditional Generation​​
  • ​​Conditional GAN​​

Generator Network

Network 拿来当 Generator 来使用

现在 Network 的输入会加上一个 randomvariable (z),z 是从一个分布中 取样出来的,现在的 Network 是同时看 xz 得到输出。

由于 z 的值随机,所以 y 的输出也就不一样,此时 Network 的输出不是单一的一个东西,而是一个复杂的 distribution

这个可以输出一个 distributionNetwork,我们就叫它 generator

生成式对抗网络(GAN)【第六章】_计算机视觉

GAN

Uncoditional generation

Generator

此时 Generator 它的输入就是 z,输出就是 y

假设 z 是从一个 normal distributionsample 出来的向量(维度自定义)
输出是一个卡通图像(可以看成一个高维度的向量)
当输入不同时,输出也会改变。

生成式对抗网络(GAN)【第六章】_ide_02

Discriminator

除了 generator 外,还需要训练 discriminator(本质上也是一个 neural network

它的作用是:拿一个图片作为输入,输出是一个数值(数字越大代表输入的图片越像是真实的二次元人物的图像)。

generatordiscriminator 都是 neural network,它们的架构完全可以人为设计/选择(如:CNNTransform)。

生成式对抗网络(GAN)【第六章】_ide_03

Basic Idea of GAN

直观上理解:generator 优化的目标是骗过 discriminator 的识别,而 discriminator 优化的目标是去更好的识别出 generator 生成的图像。

生成式对抗网络(GAN)【第六章】_计算机视觉_04

Algorithm

假设 GeneratorDiscriminator 的参数已经被初始化了。

  1. 固定住generator,只训练此时的discriminator
    此时将随机产生的向量作为输入,输出的是很奇怪的一些图片
    用真正的卡通图像跟generator产生出来的结果,去训练discriminator(训练的目标是分辨真正的卡通图像与generator产生出来的卡通图像之间的差异)

生成式对抗网络(GAN)【第六章】_深度学习_05

  1. 固定住discriminator,只训练此时的generator(训练的目标是骗过discriminator,也就是discriminator输出值越大越好)

生成式对抗网络(GAN)【第六章】_数据_06

  1. 反复的训练discriminatorgenerator

生成式对抗网络(GAN)【第六章】_数据_07

Theory behind GAN

Normal Distribution 随机生成一堆 vector,丢到 Generator 以后,会产生一个比较复杂的 Distribution(叫做 PG),真正的 Data 也形成了另外一个 Distribution,叫做 Pdata,我们期待 PGPdata 越接近越好。

此时的 Loss function 可以理解为 PGPdatadivergence

生成式对抗网络(GAN)【第六章】_深度学习_08

通过 smaple 出来的数据来估测 Divergence

生成式对抗网络(GAN)【第六章】_ide_09

 

Discriminator 训练的目标:给来自 Pdata 的数据更高的分数,给来自 PG 的数据更低的分数。

最大化 Object function 这个 V,相当于要让前面的来自 PdatayD(y) 越大越好,后面的来自 PGyD(y) 越小越好。(等同于 Minimize Cross Entropy,当作训练一个 Classifier

生成式对抗网络(GAN)【第六章】_生成对抗网络_10

 

小的 divergence 对应小的 Object FuctionMaximum 值:小的 divergence 说明 PGPdata 很像,对 discriminatortrain 一个 binaryclassifier)来说,这两对资料是混在一起的,那就很难分开,这个问题就很难,在解这个 Optiminzation Problem 的时候,就没有办法让这个 Objective 的值非常地大,所以 这个 Objective VMaximum 的值就比较小。

生成式对抗网络(GAN)【第六章】_ide_11

 

生成式对抗网络(GAN)【第六章】_数据_12

 

JS divergence 的问题

生成式对抗网络(GAN)【第六章】_生成对抗网络_13

 

生成式对抗网络(GAN)【第六章】_数据_14

WGAN

Wasserstein distance 代替 JS divergence

Wasserstein distance

可以理解为用推土机将 P 推到 Q 的距离

生成式对抗网络(GAN)【第六章】_数据_15

可能有多种移动方法,Wd 需要用最小的一种来定义

生成式对抗网络(GAN)【第六章】_计算机视觉_16

生成式对抗网络(GAN)【第六章】_生成对抗网络_17

 

Wasserstein distance 如何计算:

生成式对抗网络(GAN)【第六章】_计算机视觉_18

 

生成式对抗网络(GAN)【第六章】_数据_19

Conditional Generation

之前的 Generator 的输入都是一个随机的分布,而 Conditional Generation 是为了操控 Generator 的输出。给 Generator 一个 x 让其根据 x 和 z 来产生 y

生成式对抗网络(GAN)【第六章】_计算机视觉_20

Conditional GAN

discriminator 训练:需要将 yx 都作为输入,然后产生一个数值(图片辨别 + 图片跟文字匹配)

生成式对抗网络(GAN)【第六章】_计算机视觉_21

 

应用:

生成式对抗网络(GAN)【第六章】_生成对抗网络_22

 

生成式对抗网络(GAN)【第六章】_计算机视觉_23

 

生成式对抗网络(GAN)【第六章】_生成对抗网络_24

 

生成式对抗网络(GAN)【第六章】_生成对抗网络_25

 

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线