Github项目推荐|可视化 GAN 的训练过程
點擊上方“算法猿的成長“,關注公眾號,選擇加“星標“或“置頂”
總第 137 篇文章,本文大約 1000?字,閱讀大約需要 5?分鐘
今天介紹的一個開源的 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",獲取代碼。
精選AI文章
1.??2020年計算機視覺學習指南
2.?是選擇Keras還是PyTorch開始你的深度學習之旅呢?
3.?編寫高效的PyTorch代碼技巧(上)
4.?編寫高效的PyTorch代碼技巧(下)
5.?深度學習算法簡要綜述(上)
6.?深度學習算法簡要綜述(下)
7.?10個實用的機器學習建議
8.?實戰|手把手教你訓練一個基于Keras的多標簽圖像分類器
精選python文章
1.??python數據模型
2.?python版代碼整潔之道
3.?快速入門 Jupyter notebook
4.?Jupyter 進階教程
5.?10個高效的pandas技巧
精選教程資源文章
1.?[資源分享] TensorFlow 官方中文版教程來了
2.?[資源]推薦一些Python書籍和教程,入門和進階的都有!
3.?[Github項目推薦] 推薦三個助你更好利用Github的工具
4.?Github上的各大高校資料以及國外公開課視頻
5.?GitHub上有哪些比較好的計算機視覺/機器視覺的項目?
歡迎關注我的微信公眾號--算法猿的成長,或者掃描下方的二維碼,大家一起交流,學習和進步!
?如果覺得不錯,在看、轉發就是對小編的一個支持!
總結
以上是生活随笔為你收集整理的Github项目推荐|可视化 GAN 的训练过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 硬件基础:理解串口通信以及232,485
- 下一篇: 超好用的富文本编辑器froalaEdit