可视化 GAN 的训练过程
2020/6/1 6:25:24
本文主要是介绍可视化 GAN 的训练过程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
今天介绍的一个开源的 github 项目,主要是实现了对 GAN 训练过程的可视化代码,项目链接如下:
github.com/EvgenyKashi…
接下来是简单介绍这份代码的情况,基本实现的功能,效果等。
前言
这是一个简单实现了学习和可视化 2d 的 GANs 的实验代码。在训练了数十个小时的 StyleGAN 后,现在可以通过快速的迭代(30s 左右)来直观的可视化一些超参数的情况(但是并不确定这种直观情况是否可以适用于更大的 GAN 模型)。主要是受到 poloclub.github.io/ganlab/ 的启发,但可能有人更希望在 Colab 中运行代码。
可视化
对训练的动态过程的可视化包括了:
- 真实数据的分布情况(黑色的点)
- 输入固定的噪音,然后由 G 网络生成的假数据;
- D 网络对整个输入空间的决策边界,以及用不同颜色代表其输出的概率(红色代表判定为真实数据的可能性很高,蓝色则是低)
- 绿色箭头表示每个生成的数据点,最大化 D 网络输出的方向
可视化结果
接下来是展示可视化的一些效果:
没有采用 batch-norm 的 G 和 D 的训练情况
加入 batch-norm 的 G 和 D 的训练情况
评价标准的可视化
第一行是训练的过程(输入是固定的噪音)以及多种评判标准(G 和 D 的梯度归一化,losses 以及 D 对真假数据的输出)。第二行展示了输入噪音以及 G 网络中间层的激活函数(映射为 2 维)
对输入噪音的 G 网络的转换
可调试的选项
- 输入数据的分布
- batch 大小,训练的 epochs
- D 和 G 的学习率(可能是最重要的)
- D 和 G 的优化器
- 输入噪音的分布
- 神经元的数量,激活函数
- 损失函数(BCE,L2)
- 权重初始化
- 正则化(batch-norm,dropout,权重衰减)
采用的是 CPU,因为对可视化的实验已经满足速度的要求。
未来的工作
- 增加更多的损失函数
- 增加更多的正则化技术
项目代码可以直接访问 github 查看,或者在我的公众号后台回复“play_gans",获取代码。
欢迎关注我的微信公众号--算法猿的成长,或者扫描下方的二维码,大家一起交流,学习和进步!
这篇关于可视化 GAN 的训练过程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20实战:30 行代码做一个网页端的 AI 聊天助手
- 2024-11-185分钟搞懂大模型的重复惩罚后处理
- 2024-11-18基于Ollama和pgai的个人知识助手项目:用Postgres和向量扩展打造智能数据库
- 2024-11-15我用同一个提示测试了4款AI工具,看看谁设计的界面更棒
- 2024-11-15深度学习面试的时候,如何回答1x1卷积的作用
- 2024-11-15检索增强生成即服务:开发者的得力新帮手
- 2024-11-15技术与传统:人工智能时代的最后一袭纱丽
- 2024-11-15未结构化数据不仅仅是给嵌入用的:利用隐藏结构提升检索性能
- 2024-11-15Emotion项目实战:新手入门教程
- 2024-11-157 个开源库助你构建增强检索生成(RAG)、代理和 AI 搜索