machine-learning - 是什么导致 GAN 生成的图像看起来与训练集中提供的图像不同
问题描述
我已经使用 keras实现了改进的 WGAN-GP 算法。使用的数据集是灰度开放街道网络图像。
一些时期之后的训练会产生不希望的(或与预期不同的)模式。
例如,真实图像看起来像这样(使用 8x4 网格绘制的 32 张图像)
虽然生成的图像看起来像这样(使用 8X2 网格绘制的 16 张图像)
注意:这是在 450 个 epoch 后收集的,每个 epoch 分为 22 个批次。你可以在这里找到我使用 keras 实现的模型
虽然预计结果看起来像带有车道(线和点)的道路网络,但它们看起来像封闭曲线(如国家或大陆地图)
我已经尝试了大多数建议用于训练 GAN 的提示和技巧,例如:
- 辍学以避免过度拟合问题
- 标签平滑以避免过度自信问题
- 用于解决模式崩溃的Wasserstein 和梯度惩罚成本函数
- 增加内核大小以加快收敛速度
- 训练判别器的次数比生成器多
但似乎没有一个工作。我不确定如何调试此问题,因为我不了解 GAN 的哪个超参数会导致此类问题。
如果有人在训练 GAN 时遇到类似问题,请帮助我了解可能导致此问题的原因以及需要调整哪些超参数。
TIA。
解决方案
推荐阅读
- c++ - 如何修复虚幻引擎 4.11 中的“断言失败”
- javascript - 将索引推入数组而不覆盖数组
- c# - 默认情况下阻止 Serilog 写入 HTTP 事件
- javascript - 在没有复选框的情况下使 ag-grid 行可选
- python - 将相关性的负结果与 ppscore 进行比较
- python - TensorFlow tensor_scatter_nd_add 索引
- java - Card Layout 可以显示 Card Layout
- postgresql - 将来自 JSON 数组对象字段的数据与另一个表连接起来
- linux - 当某些条件为真时,使用“sed”对两个连续的行重新排序
- python - 从 Django 模型获取 chart.js 的动态数据