问题标签 [generative]

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 回答
874 浏览

machine-learning - 在生成对抗网络中如何使用鉴别器的输出训练生成器

最近我了解了生成对抗网络

为了训练生成器,我对它的学习方式感到困惑。下面是 GAN 的实现:

因此,它会计算论文中提到的生成器的损失。但是,它会根据鉴别器输出调用生成器后向函数。鉴别器输出只是一个数字(不是数组)。

但我们知道,一般来说,为了训练网络,我们在最后一层计算损失函数(最后一层输出和实际输出之间的损失),然后计算梯度。例如,如果输出是 64*64,那么我们将其与 64*64 图像进行比较,然后计算损失并进行反向传播。

但是,在我在生成对抗网络中看到的代码中,我看到它们从鉴别器输出(只是一个数字)计算生成器的损失,然后调用生成器的反向传播。生成器的最后一层是例如 64*64 像素,但鉴别器损失是 1*1(这与通常的网络不同)所以我不明白它是如何导致生成器被学习和训练的?

我想如果我们附加两个网络(附加生成器和鉴别器)然后调用反向传播但只更新生成器参数,它是有意义的并且应该可以工作。但是我在代码中看到的完全不同。

所以我问怎么可能?

谢谢

0 投票
1 回答
596 浏览

python - (MNIST - GAN) 鉴别器和生成器误差在第一次迭代后接近于零

为了深入了解生成对抗网络,我正在尝试根据斯坦福大学的这项使用 tensorflow 的作业,自己为 MNIST 数据集实施 GAN。

我仔细审查并研究了我对给定练习的解决方案,并通过了测试。但是,我的发电机只会产生噪音。

我很确定我得到了正确的辅助函数,所有的测试都通过了,我在网上找到了显示完全相同的实现的参考资料。所以它可能出错的地方只是鉴别器和生成器架构:

我看到生成器和鉴别器的错误在第一次迭代中下降到接近于零。

对于较低的学习率,例如1e-7,鉴别器和生成器的错误率会缓慢衰减,但最终会降至零,并且只会产生噪声。

我为我的实验启动并运行了张量流图,但到目前为止未能解释任何有意义的东西。如果您有任何建议或可以推荐一种调试技术,我将很高兴听到它。

根据要求,这是我的 GAN - Loss 代码:

0 投票
2 回答
908 浏览

keras - Keras 中的生成对抗网络 (GAN) - 创建组合模型

我正在尝试创建一个非常简单的 GANs 模型,但不确定如何结合生成器和鉴别器来训练生成器

现在我不确定如何将它们结合起来,因此鉴别器将接收生成器输出,然后将传递生成器反向传播数据

0 投票
2 回答
1413 浏览

tensorflow - 如何在 Tensorflow 中异步更新 GAN 生成器和判别器?

我想用 Tensorflow 开发一个 GAN,生成器是自动编码器,鉴别器是具有二进制输出的卷积神经网络。开发自动编码器和 CNN 没有问题,但我的想法是为每个组件(判别器和生成器)训练 1 个 epoch,并重复此循环 1000 个 epoch,保持上一个训练 epoch 的结果(权重)为下一个。我该如何操作呢?

0 投票
0 回答
180 浏览

python - 如何从 InfoGAN 鉴别器中提取嵌入以进行相似性搜索?

我正在尝试采用 KerasInfoGAN实现来从本质上提取我提供给鉴别器的图像的传输值(或嵌入)。有了这个,我想对结果向量执行相似性搜索,以找到与数据集中提供的图像最相似的 n 个图像。

我想使用 Keras,所以我将这个实现作为参考:

我发现了这个 TensorFlow 0.11实现,它们提供了实现相似性目标的功能,但是我在尝试在 Keras 中完成类似的事情时遇到了麻烦。

我想更简单地说,我想了解哪个层最适合从鉴别器中获取传输值,以及如何在 Keras 中使用经过训练的模型来做到这一点。鉴别器层:

0 投票
2 回答
858 浏览

python - GAN 中的损失函数

我正在尝试构建一个简单的 mnist GAN,不用多说,它没有用。我已经搜索了很多并修复了我的大部分代码。虽然我不能真正理解损失函数是如何工作的。

这就是我所做的:

我得到 -0.0 作为我的损失值。你能解释一下如何处理 GAN 中的损失函数吗?

0 投票
0 回答
135 浏览

java - 颜色选择器不可见

我有一个问题,我看不到颜色选择器。
我正在尝试生成很多线条来制作模式,让我感觉很有成就感。这是一个附带项目。
我不是最擅长编码的,所以我需要帮助。此外,您还必须将窗口最小化并重新打开它以使其在运行时正常工作。

*更新我发现颜色选择器就在那里,但就在我绘制的所有线条的后面。

这是我的代码。

0 投票
1 回答
1338 浏览

python - 如何在 macOS 上使用 python 将图片发送到打印机

我正在做一个 python 程序(使用 python3.6),它动态生成一个 .jpg 图片作为输出(我使用了 Pillow 模块)。如何在生成图片后立即自动将其直接发送到我的打印机?我试图查看该os模块,但我不知道该怎么做。

0 投票
2 回答
367 浏览

lstm - 解决 VAE 中的爆炸梯度

如何解决深度生成模型 (VAE) 中的爆炸梯度?

注意:数据集在列中包含很多 NaN 值

0 投票
2 回答
72 浏览

julia - Gen:如何将多个生成函数轨迹组合成一个高阶生成函数?

我正在阅读https://github.com/probcomp/gen-quickstart上的“Gen 建模简介”笔记本

第 5 节(调用其他生成函数)要求“构建一个数据集,其中线或正弦波模型是最好的是模棱两可的”

我很难理解如何使用组件函数的跟踪(和返回)来创建我可以使用的有意义的高阶跟踪。

对我来说,最直接的“模棱两可”模型是line(xs).+sine(xs). 所以我Gen.simulate编辑linesine获取痕迹并将它们添加在一起,如下所示:

这显然是错误的,我知道我在 Gen.

我希望能够从组合中内省 sine/line_model 的迹线,并对迹线进行元素添加以获得新的迹线。并且不必随机选择接近:intercept、:phase 等的数字,因此我可以稍后将其包含在我的跟踪中。

顺便说一句,当我这样做时:

我明白了 功能尝试失败

请帮忙谢谢!