深度学习《CGAN新认识》

article/2025/11/5 18:31:54

本文是学习自李宏毅深度学习教程的内容,之前学习过CGAN,本文想做一些补充的内容,也算是完善下认识。
也是因为自己有强迫症。

1:网络结构稍加改变
之前认识的CGAN的结构如下:
在这里插入图片描述

最后在D网络输入的地方,只输出一个标量,这个标量既要代表是否是真实的图片,还要代表C和Z是否是匹配的,这样做的话呢,如果给一个样本输入,最后给了个低分,我们就无法区分出到底是哪个原因导致的。

因此对D网络稍稍做了点改变就是为了使我们能区分出是哪个原因导致的,也就是输出两个标量,一个代表是真实的?另一个代表数据X和条件C是不是匹配的?
在这里插入图片描述

输出是两个标量,可以在基础上稍加改进,增加一个小网络结构
在这里插入图片描述

两个标量的含义都是容易理解的,只不过分开做了表示,在结果解释上就更加清晰明了,最后只会需要将这俩的损失和相加即可。

2:负样本来源
以前我们学的负样本来自G的构造,期望D 把G构造的X判定为不是真实数据。
现在还有一个负样本(X,C)pair是来自真实数据源本身,那就是真实的标签tag和随机采样的真实X,也就是驴唇不对马嘴,虽然D会觉得X是真实的,但是C和X不匹配,这也是不行的。所以这也是负样本。

在这里插入图片描述

对于G来说,没有变化,此处增加了一项负样本的计算。


http://chatgpt.dhexx.cn/article/saiAseH0.shtml

相关文章

CGAN结构讲解

前言 本文适用于对CGAN结构不懂得同学,所谓CGAN,就是conditional Gan,针对GAN本身不可控的缺点,加入监督信息,指导GAN网络进行生成。 CGAN结构 y就是加入的监督信息,比如说MNIST数据集可以提供数字label信…

深度学习《CGAN模型》

一:介绍 CGAN全程是Conditional Generative Adversarial Network,回想一下,传统的GAN或者其他的GAN都是通过一堆的训练数据,最后训练出了G网络,随机输入噪声最后产生的数据是这些训练数据类别中之一,我们提…

【pytorch】基于mnist数据集的cgan手写数字生成实现

(左边是数据集中的真图,右边是生成器生成的假图) 文章目录 0. 特别提示1. 学习目标2. 环境配置2.1. Python2.2. Pytorch2.3. Jupyter notebook2.4. Matplotlib 3. 具体实现3.1. 导入模块3.2. 设置随机种子3.3. 超参数配置3.4. 数据集3.5. 数据…

TensorFlow实现CGAN

条件GAN就是在GAN的基础上加入了一个条件y,在生成器和判别器中加入条件参与训练,这样训练出来的模型可以根据设置的条件生成想到的图,一般条件可以为label。CGAN的论文为:《Conditional Generative Adversarial Nets》。CGAN的结构…

【Keras-CGAN】MNIST / CIFAR-10

本博客是 One Day One GAN [DAY 3] 的 learning notes!用 CGAN 来做 MNIST 图片的生成! 参考 【Keras-MLP-GAN】MNIST 文章目录 1 CGAN(Conditional Generative Adversarial Nets)2 CGAN for MNIST2.1 导入必要的库2.2 搭建 gene…

CGAN及代码实现

前言 本文主要介绍CGAN及其代码实现阅读本文之前,建议先阅读GAN(生成对抗网络)本文基于一次课程实验,代码仅上传了需要补充部分 CGAN 全称: C o n d i t i o n a l G e n e r a t i v e A d v e r s a r i a l N e t w o r k Conditional …

生成对抗网络(二)CGAN

一、简介 之前介绍了生成式对抗网络(GAN),关于GAN的变种比较多,我打算将几种常见的GAN做一个总结,也算是激励自己学习,分享自己的一些看法和见解。 之前提到的GAN是最基本的模型,我们的输入是随机噪声,输出…

读CGAN文章

提出CGAN是因为非条件的生成模型中,对生成的内容控制,实际上只要保证真实性就可以了;采用CGAN的话,我们会增加一些额外的信息去控制数据生成的过程,例如一些类别的标签,例如数字图片数据集中,可…

CGAN论文解读:Conditional Generative Adversarial Nets

论文链接:Conditional Generative Adversarial Nets 代码解读:Keras-CGAN_MNIST 代码解读 目录 一、前言 二、相关工作 三、网络结构 CGAN NETS 四、实验结果 4.1 单模态 (mnist实验) 4.2 多模态(自动为图片打…

第三章 CGAN

写在前面:最近看了《GAN实战》,由于本人忘性大,所以仅是笔记而已,方便回忆,如果能帮助大家就更好了。 目录 代价函数 训练过程 生成器和鉴别器 混淆矩阵 CGAN生成手写数字 导入声明 模型输入维度 生成器 鉴别…

【pytorch】CGAN编程实现

CGAN介绍 由于原始GAN生成的图像是随机的,不可预测的,无法控制网络输出特定的图片,生成目标类别不明确,可控性不强。针对原始GAN不能生成具有特定属性的图片的问题, Mehdi Mirza等人提出了cGAN,其核心在于…

GAN,CGAN,DCGAN

GAN对抗生成网络 训练流程 图片以及训练过程来源 训练这样的两个模型的大方法就是单独交替迭代训练。 我们人为的定义真假样本集的标签,因为我们希望真样本集的输出尽可能为1,假样本集为0,我们就已经默认真样本集所有的类标签都为1&#xf…

GAN论文阅读——CGAN

论文标题:Conditional Generative Adversarial Nets 论文链接:https://arxiv.org/pdf/1411.1784.pdf 参考资料:http://blog.csdn.net/solomon1558/article/details/52555083 一、CGAN的思想 在原始GAN学习笔记中,我们提到过&am…

PyTorch随笔 - 生成对抗网络的改进cGAN和LSGAN

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/129939225 本文介绍GAN的两个常见改进,cGAN和LSGAN,两者一般结合使用。 cGAN: Conditional Generative Adversa…

CGAN实现过程

本文目录 一、原理二、参数初始化1. G的输入2. D的输入3. 模型参数初始化4. 测试噪声 三、执行过程四、测试 本文用MNIST数据集进行训练,并用图解的方法展示了CGAN与GAN中输入的区别,帮助理解CGAN的运行过程 一、原理 如下图所示,我们在输入…

CGAN

CGAN 生成符合特定描述的输出, 如图:给定描述,生成相应内容图片 CGAN中的negetive情况包含两种,(正确的描述,不清晰的图片)和(不正确的描述,清晰的图片)&a…

CGAN 简介与代码实战

1.介绍 原始GAN(GAN 简介与代码实战_天竺街潜水的八角的博客-CSDN博客)在理论上可以完全逼近真实数据,但它的可控性不强(生成小图片还行,生成的大图片可能是不合逻辑的),因此需要对gan加一些约…

CGAN原理分析

1、CGAN原理分析 1.1 网络结构 CGAN是在GAN基础上做的一种改进,通过给原始GAN的生成器Generator(下文简记为G)和判别器Discriminator(下文简记为D)添加额外的条件信息y,实现条件生成模型。CGAN原文中作者…

CGAN理论讲解及代码实现

目录 1.原始GAN的缺点 2.CGAN中心思想 3.原始GAN和CGAN的区别 4.CGAN代码实现 5.运行结果 6.CGAN缺陷 1.原始GAN的缺点 生成的图像是随机的,不可预测的,无法控制网络输出特定的图片,生成目标不明确,可控性不强。 针对原始…

GANs系列:CGAN(条件GAN)原理简介以及项目代码实现

一、原始GAN的缺点 生成的图像是随机的,不可预测的,无法控制网络输出特定的图片,生成目标不明确,可控性不强。针对原始GAN不能生成具有特定属性的图片的问题, Mehdi Mirza等人提出了cGAN,其核心在于将属性信…