GAN简介及原理分析

简介: GAN简介及原理分析

GAN简介及原理分析

生成式对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model,下文简写G)和判别模型(Discriminative Model,下文简写D)的互相博弈学习产生相当好的输出。判别模型(D)的任务就是判断一个实例是真实的还是由模型生成的;生成模型(G)的任务就是生成一个实例来骗过判别模型(D)。两个模型相互对抗,最后会达到一个平衡,即生成模型生成的实例与真实的没有区别,判别模型无法区分输入数据是生成的还是原始真实的数据。怎么更通俗的理解呢?现举如下例子:我们可以把GAN想象成是伪造古董的大师(后称伪造大师)和鉴宝专家之间的博弈,生成模型(generator)就相当于伪造大师,判别模型(discriminator)相当于鉴宝专家。Generator目的就是把假古董造的更像真的一样,从而骗过鉴宝专家;鉴宝专家则需要不断提高自己的鉴宝能力,尽可能的做出正确判断。
在下图两个场景中,左边为真实的输入数据x,当其经过判别器D时,我们希望其输出结果D(x)更接近与1(判别器越接近1表示越真,越接近0表示越假)。右边首先数据z通过生成器G生成了数据G(z)[图中的x],然后同样通过判别器D进行判断。我们希望对于判别器D来说使D(G(z))更靠近0,即对于生成的数据判别器判断其为假。对于生成器G来说,我们希望D(G(z))更靠近1(生成器越接近1表示生成的效果越好,越接近0表示生成的效果越差),即对生成的数据要求其效果更好,更接近真实数据。
在这里插入图片描述

GAN的损失函数

在这里插入图片描述
在这里插入图片描述

GAN应用

GAN的用于十分广泛,如图像生成、图像转换、风格迁移、图像修复等等。我们可以通过一些图片来直观的感受以下GAN达到的效果:

                                             风格迁移

在这里插入图片描述

                                             图像修复

在这里插入图片描述

从上面两张图中我们可以看出使用GAN进行相关的操作效果还是非常不错的,可以满足人们的需求。

相关文章
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
将强化学习引入NLP:原理、技术和代码实现
将强化学习引入NLP:原理、技术和代码实现
222 0
|
1月前
|
机器学习/深度学习 存储 人工智能
一文搞懂 Transformer 工作原理 !!
一文搞懂 Transformer 工作原理 !!
30 0
|
10月前
|
机器学习/深度学习 算法 计算机视觉
【YOLOX简述】
【YOLOX简述】
95 0
【YOLOX简述】
|
机器学习/深度学习 算法 Java
|
算法 PyTorch 算法框架/工具
从零开始学Pytorch(十七)之目标检测基础(一)
从零开始学Pytorch(十七)之目标检测基础
从零开始学Pytorch(十七)之目标检测基础(一)
|
机器学习/深度学习 PyTorch 算法框架/工具
从零开始学Pytorch(十七)之目标检测基础(二)
从零开始学Pytorch(十七)之目标检测基础
从零开始学Pytorch(十七)之目标检测基础(二)
|
机器学习/深度学习 算法 开发者
模型原理-1| 学习笔记
快速学习模型原理-1。
106 0
模型原理-1| 学习笔记
|
机器学习/深度学习 算法 开发者
模型原理-2| 学习笔记
快速学习模型原理-2。
83 0
模型原理-2| 学习笔记
|
搜索推荐 vr&ar
预训练语言模型概述(持续更新ing...)
预训练语言模型概述(持续更新ing...)
预训练语言模型概述(持续更新ing...)
|
机器学习/深度学习 算法 数据可视化
【PyTorch基础教程11】CNN的细节(学不会来打我啊)
在上面的全连接层中是将input的图像拉成一个向量,但是这样可能会导致:某两个相邻的点在处理后的向量中确实间距很远,这样就会丧失原有的空间结构。而CNN是直接按照图像的空间结构进行保存。
191 0
【PyTorch基础教程11】CNN的细节(学不会来打我啊)