机器学习李宏毅学习笔记14

文章介绍了GAN的基本概念,包括Generator如何从简单分布生成复杂输出,以及Discriminator的任务是区分真实与生成的图像。训练过程中,两者相互博弈,逐步提升生成图像的真实感。这是一个涉及深度学习和图像生成的模型。
摘要由CSDN通过智能技术生成


前言

生成式对抗网络GAN(一)基本介绍


一、GAN

以前都是给定x,输出y。现在添加一个z,输入是x和z。z是不固定的,每次随机生成,来自一个简单的分布。从而y变成一个复杂的分布。这种network叫做generator。当任务需要一点创造性的时候(同一个输入可能有多个输出的时候),会需要这种做法,让输出是根据概率输出。
在这里插入图片描述
在这里插入图片描述
以二次元图片输出为例,向量通过generator之后,输出一个图片。z一般是一个低纬度向量(维度是自己来定的),而图片是一个高纬度向量。

在GAN里面除了要训练generator之外,还要训练一个discriminator,discriminator输入一张图片输出一个数值,输出得值越大,表示输入的图片越像是真的。
在这里插入图片描述

二、大致训练过程

Discriminator就像Generator的天敌。
一开始的generator参数是随机的,画出来的也是杂乱的,discriminator的目标就是分辨出和真正的二次元图片的区别。之后第二代的generator调整参数,目的是骗过第一代的discriminator,discriminator也会进化,不断重复。

在这里插入图片描述
Generator和discriminator是两个network,假设这两个都初始化了,

第一步:不动generator,训练discriminator。
在这里插入图片描述
丢一堆向量给generator,输出是乱七八糟的和正常图片不像。从数据库中抽样几个正常图片,训练discriminator,目的是分辨真正的和generator产生的。把真的当做1,产生的当做0。分辨可以当做分类问题也可以当做regression问题来做。

第二步:不动discriminator,训练generator。
希望generator产生的,欺骗discriminator。向量经过generator产生图片后,让discriminator的分数越高越好。训练方法和之前gradient descent一样,不过这里是要让discriminator的loss越大越好,让discriminator的输出越大越好。
在这里插入图片描述

第三步:反复进行第一步和第二步。

在这里插入图片描述


总结

学习视频地址:https://www.bilibili.com/video/BV13Z4y1P7D7/?p=14&spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=3a369b537e1d34ff9ba8f8ab23afedec

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值