深度学习基础——GAN生成对抗网络

生成对抗网络(GAN)的简介

生成对抗网络GAN(Generative adversarial networks)是Goodfellow等在2014年提出的一种生成式模型。GAN在结构上受博弈论中的二元零和博弈(即二元的利益之和为零,一方的所得正是另一方的所失)的启发,系统由一个生成器和一个判别器构成。

生成器和判别器均可以采用目前研究火热的深度神经网络构建。GAN的优化过程是一个极小极大博弈(Minimax game)问题,优化目标是达到纳什均衡,使生成器估测到数据样本的分布.

举个例子,生成器和判别器的关系就像假币制造商和警察之间的关系一样。

GAN网络结构如下图所示:

生成对抗网络(GANGenerative Adeversaial Networks)作为一种深度学习框架,是近几年来无监督学习方法最具前景的方法之一。2014年,lan Goodellow发表论文《Generative Adversaril Net》首次对GAN进行了说明描述。如图所示,GAN由两个模型组成:(1)生成模型(生成器)⑵判别模型(判别器)。在实验过程中,生成器会生成像训练图像的高仿图像,而判别器则需要判断生成器中的图像是否为真实图像。为了这个目的,生成器在每轮训练中会提高造假质量以生成更好的"假图像"来骗过判别器。判别器也需要提升判别能力来分辨是否造假。这形成了一种博弈,博弈的平衡点就是生成器生成的图像非常真实,二判别器的判别概率为50%。

生成对抗网络的应用

  • 卡通动漫图像生成
  • 图像超分辨率重建
  • 图像风格迁移
  • 从文本到图像生成

判别器与生成器模型的建立

处理数据后,需搭建GAN的网络模型;本节分别从权重初始化出发,搭建生成器、判别器和损失函数模型。

进行数据预处理后,要进行定义网络与训练模型,对应步骤为:

创建网络,创建生成器和判别器,定义损失函数与优化器,连接网络与损失函数。

生成器模型

生成器G通过图像反卷积操作将噪声图像生成目标图像,最后通过判别器来评估其接近真实图像的程度,生成器结构如图所示

建立生成器的步骤:第一步建立转置卷积函数,第二步建立批标准化函数,第三步建立GAN网络生成器模型,第四步加载预训练生成器模型,第五步实例化生成器模型。

判别器模型

判别器对生成器生成的图像进行判别,最终输出一个概率值来判断是否为真实图像。其结构如图所示

建立判别器模型步骤:第一步建立卷积函数,第二步建立GAN网络判别器模型,第三步加载预训练判别器模型,第四步实例化判别器模型。

相关推荐
知来者逆9 分钟前
计算机视觉——速度与精度的完美结合的实时目标检测算法RF-DETR详解
图像处理·人工智能·深度学习·算法·目标检测·计算机视觉·rf-detr
一勺汤12 分钟前
YOLOv11改进-双Backbone架构:利用双backbone提高yolo11目标检测的精度
人工智能·yolo·双backbone·double backbone·yolo11 backbone·yolo 双backbone
武汉唯众智创14 分钟前
高职人工智能技术应用专业(计算机视觉方向)实训室解决方案
人工智能·计算机视觉·人工智能实训室·计算机视觉实训室·人工智能计算机视觉实训室
Johny_Zhao25 分钟前
MySQL 高可用集群搭建部署
linux·人工智能·mysql·信息安全·云计算·shell·yum源·系统运维·itsm
一只可爱的小猴子35 分钟前
2022李宏毅老师机器学习课程笔记
人工智能·笔记·机器学习
地瓜机器人40 分钟前
乐聚机器人与地瓜机器人达成战略合作,联合发布Aelos Embodied具身智能
人工智能·机器人
带娃的IT创业者43 分钟前
《AI大模型趣味实战》基于RAG向量数据库的知识库AI问答助手设计与实现
数据库·人工智能
__Benco1 小时前
OpenHarmony - 小型系统内核(LiteOS-A)(十),魔法键使用方法,用户态异常信息说明
人工智能·harmonyos
小杨4041 小时前
python入门系列二十(peewee)
人工智能·python·pycharm
IT古董1 小时前
【漫话机器学习系列】225.张量(Tensors)
人工智能