【GAN模型结构】从最简单的全卷积GAN一起开始玩转GAN

GAN知识点(一):GAN的网络结构与损失 该知识点中,我们首先介绍生成对抗网络GAN的主要模型架构——生成器和鉴别器。其次,我们介绍GAN的损失函数以及相关的训练过程。 阅读详情

大家好,今天开设新专栏《GAN模型结构》。在这个专栏中,我们会讲述各种各样的GAN的网络结构及其在各类任务中的应用。

作者&编辑 | 言有三

三年前GAN刚出来的时候就开始关注GAN了,去年也写过一篇综述,【技术综述】有三说GANs(上),不过因为时间问题一直没有更新更多的内容。


今年公众号也开设了GAN优化专栏,内容更新的差不多了,现在GAN模型结构也走起,在这两个网络专栏的加持下,希望我们能从理论到实践彻底玩转GAN。

1 GAN的基本结构

在机器学习中有两类模型,即判别式模型和生成是模型。

判别式模型即Discriminative Model,又被称为条件概率模型,它估计的是条件概率分布。生成式模型即Generative Model ,它估计的是联合概率分布,两者各有特点。

640?wx_fmt=png

640?wx_fmt=png

常见的判别式模型有Logistic Regression,Linear Regression,SVM,Traditional Neural Networks

Nearest Neighbor,CRF等。

常见的生成式模型有Naive Bayes,Mixtures of Gaussians, HMMs,Markov Random Fields等。


而GAN,即Generative adversarial net,则同时包含判别式模型和生成式模型,如下:

640?wx_fmt=jpeg

判别式模型就是大家熟悉的分类任务模型,输入图像,输出分类概率。生成式模型则是输入一维向量,输出二维图像,如下:

640?wx_fmt=png

这就是用于图像生成的最早的网络结构,剩下来的问题,就是如何分别设计判别器和生成器。

2 全卷积GAN

DCGAN[1]是第一个用全卷积网络做数据生成的,下面我们看看它的生成器和判别器。


2.1 生成器

640?wx_fmt=png

输入为1×100的向量,然后经过一个全连接层学习,reshape为4×4×1024的张量,再经过4个上采样的反卷积网络,生成64×64的图,各层的配置如下:

640?wx_fmt=png

2.2 判别器

输入64×64大小的图,经过4次卷积,分辨率降低为4×4的大小,每一个卷积层的配置如下:

640?wx_fmt=png

判别器和分类器的损失函数都采用了sigmoid_cross_entropy_with_logits,即sigmoid分类损失。


2.3 实验


下面我们采用开源项目进行实践,GitHub地址如下:https://github.com/carpedm20/DCGAN-tensorflow/。

由于MNIST任务作者已经做过,我们来完成一个新的任务,生成嘴部表情,样本如下:

640?wx_fmt=png

下图分别是判别器和生成器损失图:

640?wx_fmt=png

640?wx_fmt=png

由于生成对抗网络的判别器和生成器是交替训练相互对抗,所以它们各自的损失曲线不可能像通常的图像任务一样一直下降直到很低的水平,而是有一个先下降再上升的过程。


对于判别器来说,刚开始没有学习,因此性能很差,随着训练进行,判别器的损失降低。但是因为生成器的性能在不断提升,所以一段时间之后,判别器的损失可能又会增加,不过在这个实验中不明显。


对于生成器来说,刚开始没有学习,性能很差,随着训练进行,性能越来越好,在本实验中,生成器损失下降到一定程度后又增加了,说明继续迭代无法再改善性能。


总的来说,两者相互对抗,直到达到一个较好的平衡,但是光从损失曲线本身,我们仍然难以分辨出模型的性能好坏,因此还要看真正生成的样本。

640?wx_fmt=jpeg

从左到右分别是第2,10,50,100个epoch的结果。从上图结果来看,随着训练的进行,逐渐生成了许多有意义且非常逼真的样本。不过最终生成的图像仍然有一部分效果很差,这是因为DCGAN本身模型性能所限,后续可以使用更好的模型进行改进。


2.4 总结


总的来说就这么多,更多细节大家可以自己去跑实验。DCGAN的原始论文中总结了很多的技巧,但是随着技术的发展,其中的一些技巧不再必要或者通用,因此这里我们先不总结,以后再回过头来一起看。


DCGAN模型非常浅,原理简单,生成分辨率低,所以简单的任务仍然不能完美地完成,后面会有更多模型从各个方向来进行改进。

参考文献

[1] Radford A, Metz L, Chintala S. Unsupervised representation learning with deep convolutional generative adversarial networks[J]. arXiv preprint arXiv:1511.06434, 2015.

总结

DCGAN因为结构非常简单,内容就讲这么多,这只是咱们GAN网络结构的开始,吃完这顿前菜,咱们后会有期。


下期预告:金字塔结构GAN。

知识星球推荐

640?wx_fmt=jpeg

有三AI知识星球由言有三维护,内设网络结构1000变,数据集,AI1000问,AI知识汇总,AI书籍,看图猜技术,项目开发,Github推荐八大学习板块,欢迎加入。

今日网络结构

640?wx_fmt=jpeg

转载文章请后台联系

侵权必究

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

往期精选

GAN(生成对抗网络)算法超详细解读 生成对抗网络(GAN)是一种深度学习模型,由 Ian Goodfellow 等人于 2014 年提出。它的核心思想是通过对抗过程,让生成模型和判别模型相互竞争,最终实现生成高质量的样本。GAN 在图像生成、图像修复、超分辨率等领域取得了显著的成功。生成对抗网络(GAN)是一个强大的生成模型,通过生成器和判别器的对抗过程,能够生成高质量的样本。虽然 GAN 的训练较为复杂,但其广泛的应用前景和高效的生成能力使其成为深度学习领域的重要研究方向。 阅读详情

相关推荐

生成对抗网络(三)DCGAN讲解

生成对抗网络DCGAN讲解 Abstract 1. Introduction 2. Related Work 3. APPROACH AND MODEL ARCHITECTURE                  原文:Deep Convo...

Raywit的博客 1万+

生成对抗网络(GAN)教程 - 多图详解

一.生成对抗网络简介 1.生成对抗网络模型主要包括两部分:生成模型和判别模型。 生成模型是指我们可以根据任务、通过模型训练由输入的数据生成文字、图像、视频等数据。 [1]比如RNN部分讲的用于生成奥巴马演讲稿的RNN模型,通过输入开头词就能生成下来。 [2]或者由有马赛克的图像通过模型变成清晰的图像,第一张是真实,第四张是合成的。 ...

马飞飞的博客 10万+

【算法底座研究室】生成对抗网络(GAN):从原理到实际应用

随着研究的不断深化,GAN衍生出多种变体,如DCGAN、WGAN、CycleGAN、Pix2Pix、StyleGAN、BigGAN等,在各自领域都有突出的表现。尽管GAN在训练稳定性、模式崩溃、数据需求与合规性等方面仍面临挑战,但通过不断的算法优化和理论研究(如WGAN、StyleGAN、BigGAN、Diffusion-GAN融合等),其性能和应用广度都在快速提升。自基础的GAN提出以来,各类变体在网络结构、损失设计、训练策略上不断演进,为计算机视觉、医疗影像、内容创作与游戏等行业带来深远影响。

高校图书馆高级系统架构师/研究馆员,推动高校AI从概念演示到可评审、可交付、可运维:路线图与立项评审、PoC交付、评测回归与上线运维(Baseline/Eval/Ops)。 2075

GAN简介及原理分析

GAN简介及原理分析 生成式对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model,下文简写G)和判别模型(Discriminative Model,下文简写D)的互相博弈学习产生相当好的输出。判别模型(D)的任务就是判断一个实例是真实的还是由模型生成的;生成模型(G)的任务就是生成一个实例来骗过判别模型(D)。两个模型相互对抗,最后会

秃头小苏的博客 8191

PyTorch实战(20)——生成对抗网络(Generative Adversarial Network,GAN)

自生成对抗网络 (Generative Adversarial Network, GAN) 提出以来,一直是一个活跃的研究和开发领域。本节探索了 GAN 的基本概念,重点解析了其两大核心组件——生成器与判别器的架构设计,深入阐述了 GAN 模型的整体工作机制,并使用 PyTorch 从零开始实现了深度卷积生成对抗网络 (Deep Convolutional GAN, DCGAN)。

盼小辉丶的博客 3575

驯服电源尖峰:从BUCK/BOOST环路剖析到高di/dt噪声的实战抑制

本文深入探讨了电源系统中高di/dt噪声的产生机制及抑制方法,通过BUCK/BOOST电路的环路分析,揭示了电流路径不连续导致的电压尖峰问题。文章提供了实用的PCB布局技巧和噪声抑制策略,包括最短回路原则、铺铜优化和过孔阵列战术,帮助工程师有效降低EMI噪声,提升电源系统的稳定性。

weixin_29587015的博客 275

GAN模型总结

GAN模型一、什么是GAN模型 生成对抗网络(Generative Adversarial Network)由一个生成网络与一个判别网络组成。生成网络从潜在空间(latent space)中随机采样作为输入,其输出结果需要尽量模仿训练集中的真实样本。判别网络的输入则为真实样本或生成网络的输出,其目的是将生成网络的输出从真实样本中尽可能分辨出来。而生成网络则要尽可能地欺骗判别网络。两个网络相互对抗

lreaderl的博客 1万+

Halcon-AOI外观缺陷检测系列

Halcon-AOI外观缺陷检测系列

Jumy_S的博客 1668

【生成对抗网络】Deep Convolution GAN (DCGAN) 详细解读

DCGAN,全称是Deep Convolution Generative Adversarial Networks(深度卷积生成对抗网络),是Alec Radfor等人于2015年提出的一种模型。该模型在Original GAN的理论基础上,开创性地将 CNN 和 GAN 相结合以实现对图像的处理,并提出了 一系列的对网络结构的限制,以提高网络的稳定性。

__阿健__的博客 3万+

带你一分钟了解电感与磁珠的区别

在电路设计中会经常使用到电感和磁珠,虽然在电路中的作用有所不同,但它们都属于磁性电子元器件,本文简单介绍下电感和磁珠的区别电感和磁珠电感和磁珠的结构主要由磁性材料金属线圈和外壳组成,具体结构如下图所示:电感磁珠结构图电感其实是金属线圈缠绕在磁芯上,而磁珠是在内部折叠后外围包裹着铁氧体磁性材料。电感器(Inductor)又称扼流器、电抗器、动态电抗器是储能器件,能够把电能转化为磁能而存储起来的元件。磁珠则是能量转换(消耗)器件,将流过他的高频信号以热能的形式消耗掉。

攻城狮鹏哥 1410

TSMC 40nm LP工艺下,新手画版图最容易踩的5个坑(附Cadence避坑指南)

本文详细解析了TSMC 40nm LP工艺下版图设计的5个常见陷阱,包括MOS管尺寸转换、DNW隔离、Guard Ring设计、金属布线和DRC检查。通过Cadence实战技巧和设计规则优化,帮助新手工程师规避典型错误,提升版图设计效率和质量。

weixin_26800111的博客 458

基于GAN的图像水印去除器,效果堪比PS高手

作者 | 李翔转载自视说AI(ID:techtalkai)简介:李翔,国内某互联网大厂AI民工,前携程酒店图像技术负责人,计算机视觉和深度学习重度爱好者,在ICCV和CV...

AI科技大本营 8899

Scratch全攻略:从入门到实践的编程之旅

Scratch 是一款由麻省理工学院(MIT)开发的图形化编程工具 ,它诞生的初衷是为了让编程教育更加普及,尤其是让孩子们能够轻松接触和学习编程。与传统的基于文本代码的编程方式不同,Scratch 通过将编程指令以图形化的积木形式呈现,极大地降低了编程的门槛,让编程变得如同搭积木一样简单有趣。

邓邓子的博客 1万+

生成对抗网络玩转图像水印

作者:李翔来源:视说AI01 写在前面当前互联网飞速发展,越来越多的公司、组织和个人都选择在网上展示和分享图像。为了保护图像版权,大家都会选择在图像上打上透明或者半透明的水印。随着水印被...

华章IT官方博客 694

ETAS工具导入DBC生成Com协议栈

ETAS工具导入DBC主要也是生成arxml用的,ETAS推荐使用Cobra导入,本文介绍导入过程及注意事项不管是导入DBC还是arxml,本质上都是为了生成对应的com协议栈,目的是为了减少重复的工作量,所以,前期定义好收发的矩阵很重要,一般导入一次之后,后面就可以按变更点手动更改了。

赞的博客 1713

ISP算法:自动白平衡(AWB)

1. 为什么要做白平衡? 人类视觉系统具有颜色恒常性特点,一次人类对物体观察不受光源影响。但是Sensor在不同光线下,物体呈现的颜色不同,在晴朗天空下会偏蓝,在烛光下会偏红。如图: 2.什么是自动白平衡? 为了消除光源对于图像传感器成像的影响,模拟人类视觉系统的颜色恒常性。保证在任何场景下看到的白色是真正的白色。 3. 如何做自动白平衡? 只要乘以一个对角矩阵,便可以进行白平衡...

a200800170331的专栏 1万+

生成对抗网络(GAN)

文章目录前言GAN的原理简介用GAN生成动漫头像 前言 生成对抗网络(Generative Adversarial Net, GAN)是近年来深度学习中十分热门的方向。本文将简要介绍GAN的基本原理,并带领读者实现一个简单的生成对抗网络,用以生成动漫人物的头像。 GAN的原理简介 GAN的开山之作是被称为“GAN之父”的Ian Goodfellow发表于2014年的经典论文Generative Adversarial Networks,在这篇论文中他提出了生成对抗网络,并设计了第一个GAN实验——手写数字生

如果想成为中心,那么就到中心去吧。 2011

航天设备研制中的形态分类:电性件、正样件及其他关键形态详解

航天设备的研制是一个高度复杂且严谨的工程过程,涉及多个阶段的不同产品形态。这些形态各具特点,在研制流程中承担着不同的验证任务和工程目标。本文将系统介绍航天设备研制中的主要形态,包括**电性件(EM)**、**正样件(FM)**以及**结构热控件(STM)**、**鉴定件(QM)**和**初样件(PFM)**等,详细解析它们的定义、用途和工程意义,帮助读者全面理解航天产品从设计到飞行的全生命周期管理。

ScilogyHunter的博客 1665

【图像上色小综述】生成对抗网络的GAN法

点击上方“机器学习与生成对抗网络”,关注"星标"获取有趣、好玩的前沿干货!超100篇!CVPR 2020最全GAN论文梳理汇总!0,图像上色及其分类图像上色一般分为两种:...

idol24的博客 5241

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

【百战GAN】新手如何开始你的第一个生成对抗网络(GAN)任务

大家好,欢迎来到专栏《百战GAN》,我们在公众号已经输出了非常多的GAN相关的理论,这一次我们开设《百战GAN》专栏,在这个专栏里,我们会进行算法的核心...

hacker_long的专栏 901

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

GAN(生成对抗网络)发展

引言:之前对GAN进行相关的介绍,并在组内进行分享;但之前的分享比较偏向于GAN的前世,对于GAN的今生关注的程度不高,本文重点对GAN的今生进行梳理。 GAN的今生 GAN的前世之前进行过相关总结,在此不再进行赘述,具体可以观看李弘毅老师的讲课视频,深入浅出;Goodfellow在写成 Geneative adversarial nets 这一划时代的大作的时候自然是留了为数众多的坑代填,后来...

NCU_wander的博客 1909

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

用 GAN 生成手写数字图像(附代码,轻量可在本地训练)

生成器 G:输入一段随机噪声,输出一张图像,目标是“骗过”判别器;判别器 D:输入一张图像,判断其是真实样本还是生成样本。G 和 D 相互对抗,G 不断学习如何生成更加真实的图像,D 不断提高识别真假图像的能力,最终达到一个动态平衡。

m0_74167177的博客 1438

【神经网络】GAN生成对抗网络

1.GAN基本原理 \qquadGAN生成式对抗神经网络,是一种非监督学习算法,通过使用两个神经网络进行博弈进而实现学习。生成对抗网络是由一个生成网络和一个判别网络构成的。生成网络从latent space中进行随机采样作为网络的输入,使得输出结果尽量类似于真是样本;判别网络的输入为真实样本或者是生成网络的输出,其目标是尽量的从真实样本中识别出由生成网络得到的生成样本。在训练的过程中,生成网络和...

小小小草儿的博客哟 4578

Hello, GAN and HIFI-GAN!

笔者已经听说并跑过一些GAN网络,对GAN有了一些基础的认识。但若要我详细地介绍GAN,又仿佛无从说起。借着梳理这篇博客的机会,让我们重新认识一下这位生成领域的大牛——GAN!为了加深对GAN的理解,笔者还会在第三部分详细介绍HIFI-GAN。

wangcr_pangge的博客 1670

【模型解读】历数GAN的5大基本结构

生成对抗网络是近几年来无监督学习领域里最大的进展,被誉为下一代深度学习,不管是研究热度还是论文数量,已经逼近甚至超越传统判别式的CNN架构。这一次我们简单介绍一下生成对抗...

hacker_long的专栏 1567
上一篇: 【AI不惑境】计算机视觉中注意力机制原理及其模型发展和应用
下一篇: 【NLP】如何系统性的学习NLP,有三AI-NLP知识星球等你来
言有三
言有三 领域专家: 人工智能技术领域 领域专家: 人工智能技术领域
博客等级 码龄15年 3635粉丝 976原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言有三

三人行必有AI

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值