问题标签 [generative-adversarial-network]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
876 浏览

python-3.x - Tensorflow 合并数据集

所以我在 tensorflow 中编写了一个 GAN,并且需要鉴别器和生成器作为对象。现在我在为鉴别器创建训练数据集时遇到问题。

目前我的代码的相关部分如下所示:

我需要的是函数交替给出一批self.x,然后是一批self.x_fake。

有没有一种简单的方法可以做到这一点,还是我必须得到一个计数器和一个 if 语句?

0 投票
0 回答
114 浏览

python - 卷积输出巨大的值而不是 0-1 范围

我正在开发一个在图像的 2 个通道上运行的 GAN。向网络馈送在 0-1 范围内重新缩放的图像层数据。

它的组成大致如下(我没有图形表示,抱歉)

  1. concatenate(multiply(noise_a, l_channel), multiply(noise_b, l_channel))
  2. nx ( (Conv2D with relu activation)+ batchnorm)

步骤 1 生成 2 层,然后将其馈送到以下 conv2D 步骤

我检查了作为输入传递的所有内容(噪声、图像通道)是否在 0-1 范围内重新缩放,但网络的输出会产生巨大的值(在 -128 -> 1000+ 范围内)。

我希望输出在 0-1 范围内(稍后将在 -128,+127 范围内重新调整)。

问题

  1. 假设输出范围应该是 0-1 我错了吗?
  2. 你能指出我还有什么要检查或更正以实现这一点吗?

任何帮助是极大的赞赏。谢谢

0 投票
0 回答
182 浏览

image - 生成对抗网络、判别器的发散和图片伪影 (PIX2PIX)

我目前正在尝试实现作为 GAN 结构的 Pix2Pix 算法,但我在鉴别器的收敛生成器的输出图片方面存在一些问题......

1)收敛问题:

判别器似乎根本不收敛。当我打印生成器的损失时,它似乎工作得很好: 发电机损耗 但是当我打印鉴别器的损失时,我有以下情节: 显示

或更准确地说: 损失率

你知道这种行为的可能原因是什么吗?我怎样才能稳定判别器的学习?

2) 色差

我对生成的图片也有一些问题。事实上,我经常有完全饱和的颜色,打印的物体只有一种颜色在此处输入图像描述

例如,该解决方案似乎每 200 步训练鉴别器,在这种情况下,我得到类似的东西: 在此处输入图像描述

但是一点都不满足……

(我准确地说第一列是生成器的输入,第二列是生成器的输出,第三列是目标图片,目前我只是在尝试我的网络来重现相同的图片......这应该很容易...)

注意:初始化似乎在颜色上也起着非常重要的作用,事实上,使用完全相同的参数,我在数千步之后得到了非常不同的结果。

有人想解释这些现象吗?

非常感谢您的阅读和您的潜在帮助!

0 投票
1 回答
147 浏览

python-3.x - 生成对抗网络中生成器的输入是什么

我最近正在研究 GAN 模型,并认为它对我的系统很有用,我将在该系统中预测给定图像是否是汽车。我理解“鉴别器”从“生成器”获取输入的部分。生成器从随机向量生成图像,然后将其传递给鉴别器进行真实性检查。但是生成器使用的向量到底是什么?它是否在转换为像素的图像中,我们将其作为像素向量传递?

谁能给我解释一下

或者我应该遵循任何其他方法来构建一个可以将图像分类为汽车的系统

提前致谢

0 投票
1 回答
302 浏览

generative-adversarial-network - 任何用于 GAN 的异步训练方法?

对于高维数据,GAN 有时会变得非常不稳定。我们可以用异步方式训练 GAN 吗?就像我们有一个主生成器和判别器。但我们实际上使用来自多个从属生成器和鉴别器的梯度异步更新它。

0 投票
1 回答
1085 浏览

machine-learning - 生成器和鉴别器损失曲线是精确的镜像

我目前正在使用 Pytorch 训练 GAN,为我的研究生成组织病理学数据。我对生成器和鉴别器都使用 BCE 标准。该网络能够产生高质量的图像,但损失曲线对我来说有点神秘。生成器和鉴别器的损失曲线看起来像精确的镜像。请参阅随附的张量板剪辑。有人能告诉我为什么会这样吗?

编辑 1:生成器和鉴别器损失曲线都应该显示收敛,对吗?

提前非常感谢! 在此处输入图像描述

0 投票
1 回答
235 浏览

python - 将类信息添加到keras中的Generator模型

我想使用条件 GAN,目的是为一个域(标记为domain A)生成图像,并获得来自第二个域的输入图像(标记为domain B)以及类信息。两个域都使用相同的标签信息链接(域 A 的每个图像都链接到域 B 的图像和特定标签)。到目前为止,我在 Keras 的生成器如下:

到目前为止,我的生成器将来自 的图像domain A(以及从 输出图像的范围domain B)作为输入。我还想以某种方式输入输入域 A 的类信息,范围为域 B 生成同一类的图像。如何在展平后添加标签信息。因此,例如,不要1x1024有输入大小。1x1025我可以为生成器中的类信息使用第二个输入吗?如果是的话,我怎么能从 GAN 的训练过程中调用生成器?

培训流程:

该代码是条件 dcgans的实现(在鉴别器上添加了分类器)。网络的功能是:

0 投票
2 回答
1483 浏览

python - 在 Keras 中实现对抗性损失

我正在尝试在 keras 中实现对抗性损失。该模型由两个网络组成,一个自动编码器(目标模型)和一个鉴别器。这两个模型共享编码器。

我通过设置 keras 变量创建了自动编码器的对抗性损失

在训练期间,我train_on_batch交错discriminatorautoencoder更新discriminator_loss

但是,我发现在编译模型时这些变量的值被冻结了。我试图在训练期间重新编译模型,但这会引发错误

节点“IsVariableInitialized_13644”:未知输入节点“training_12/Adam/Variable”

我想这意味着我不能在训练期间重新编译?关于如何在自动编码器中注入鉴别器损失的任何建议?

0 投票
2 回答
166 浏览

python - 连接 numpy 数组时出现值错误

我加载mnist数据集如下,

然而,由于我需要加载和训练我自己的数据集,我编写了如下的小脚本,它将给出准确的训练和测试值

相关模型在训练时生成一个大小为 (64, 28, 28, 1) 的 numpy 数组。我从生成的图像中连接 image_batch,如下所示,

但是我收到以下错误,

ValueError:所有输入数组必须具有相同的维数

img_batch 的大小为 (64, 28, 28) generated_images 的大小为 (64, 28, 28, 1)

如何扩展img_batchX_train 中的维度以便与 generate_images 连接?或者有没有其他方法可以加载自定义图像来代替 loadmnist?

0 投票
1 回答
4627 浏览

python - 为什么我在 GAN 的训练鉴别器和生成器中得到 nan 损失值?

我使用由一些负数组成的 gensim 库保存了我的文本向量。会影响训练吗?如果不是,那么为什么我要先获得鉴别器的 nan 损失值,然后在经过某些训练步骤后才获得鉴别器和生成器的损失值?