前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Github项目推荐|可视化 GAN 的训练过程

Github项目推荐|可视化 GAN 的训练过程

作者头像
kbsc13
发布2020-05-27 11:20:22
4850
发布2020-05-27 11:20:22
举报

今天介绍的一个开源的 github 项目,主要是实现了对 GAN 训练过程的可视化代码,项目链接如下:

https://github.com/EvgenyKashin/gan-vis

接下来是简单介绍这份代码的情况,基本实现的功能,效果等。

前言

这是一个简单实现了学习和可视化 2d 的 GANs 的实验代码。在训练了数十个小时的 StyleGAN 后,现在可以通过快速的迭代(30s 左右)来直观的可视化一些超参数的情况(但是并不确定这种直观情况是否可以适用于更大的 GAN 模型)。主要是受到 https://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",获取代码。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法猿的成长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 可视化
  • 可视化结果
    • 没有采用 batch-norm 的 G 和 D 的训练情况
      • 加入 batch-norm 的 G 和 D 的训练情况
        • 评价标准的可视化
          • 对输入噪音的 G 网络的转换
          • 可调试的选项
          • 未来的工作
          相关产品与服务
          批量计算
          批量计算(BatchCompute,Batch)是为有大数据计算业务的企业、科研单位等提供高性价比且易用的计算服务。批量计算 Batch 可以根据用户提供的批处理规模,智能地管理作业和调动其所需的最佳资源。有了 Batch 的帮助,您可以将精力集中在如何分析和处理数据结果上。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档