中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

發布時間:2021-12-04 18:37:30 來源:億速云 閱讀:194 作者:柒染 欄目:大數據

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

前言

神奇寶貝已經是一個家喻戶曉的動畫了,我們今天來確認是否可以使用深度學習為他自動創建新的Pokemon。

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

我最終成功地使用了生成對抗網絡(GAN)生成了類似Pokemon的圖像,但是這個圖像看起來并不像神奇寶貝。
雖然這個嘗試失敗了,但是我認為其他人可能會喜歡這個過程,現在把他分享出來。

GAN生成對抗網絡

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

這里不想花很多時間討論GAN是什么,但是上面的圖片只是一個非常簡單的解釋過程。
訓練了兩個網絡-鑒別器和生成器。生成器學習如何吸收隨機噪聲并從訓練數據生成看起來像圖像的圖像。它通過將其生成的圖像發送到鑒別器網絡,鑒別器網絡經過訓練可以辨別真實圖像和生成的圖像。
生成器經過優化,可以更好地欺騙鑒別器,鑒別器經過優化,可以更好地檢測生成的圖像。因此,他們倆一起進步。

數據

因此,我的假設是,我可以使用真實的神奇寶貝圖像作為訓練集來訓練GAN。結果將是一個生成器,然后將能夠創建新穎的神奇寶貝!
我的第一個挑戰是找到神奇寶貝的圖像。幸運的是,Kaggle數據集得以搶救!
有人已經想過類似的想法,盡管聽起來他在生成新的Pokemon圖像方面沒有很大的成功,但是由于他花了時間收集800幅圖像,因此決定將它們上傳到Kaggle數據集。這節省我很多時間。
我們看一下這個數據集:

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

這是一張 蒜頭王八 妙蛙種子 的圖片,大小是256*256

現在,有了數據,下一步就是選擇要使用的GAN類型。可能存在數百種GAN的變體,但過去使用DCGAN可以看到良好的效果。
DCGAN從神經網絡中消除了所有完全連接的層,使用轉置卷積進行上采樣,并用卷積跨度(除其他外)代替了最大池化。
我喜歡DCGAN,因為與其他我嘗試過的GAN相比,它們似乎更健壯,因此無需進行超參數的重大調整即可更容易訓練。
實際上,DCGAN非常受歡迎,以至于PyTorch的示例就很好地實現了。同樣重要的是,他們的示例可以直接從文件夾讀取輸入。因此,使用以下命令,我能夠開始訓練我的GAN:

python main.py --dataset folder --dataroot /pokemon/  --cuda --niter 10000 --workers 8

該命令從文件夾中讀取圖像,在具有8個工作程序的GPU上運行以加載數據,并運行10,000次迭代。

事實證明,此問題需要進行10,000次迭代,但我想看看我能推多遠。讓我們來看看!

結果

第一步始于一個一無所知的網絡,因此產生的只是噪聲:

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

每個box都是一個64 x 64像素的圖像,它是嘗試從我們的生成器中生成神奇寶貝。由于我們的網格為8 x 8,因此我們嘗試生成64種不同的神奇寶貝。我將圖像縮小到64 x 64,因為在嘗試生成更大的圖像時這種算法會變得不穩定。

50次迭代以后,有點意思了

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

150次迭代,圖像變得清晰了

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

3,700點之后,會有一些不錯的圖片出現了。此后,它開始趨向于產生更差的結果:

用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的

這些看起來根本都不像神奇寶貝!
但是請將瀏覽器縮小到25%左右,然后再次查看。在遠處,它們看起來驚人地類似于真正的神奇寶貝。
為什么呢?由于我們正在對64 x 64的圖像進行訓練,因此辨別器很容易被形狀和顏色類似于口袋妖怪的圖像所迷惑,因此生成器不需要改進。

下一步?

顯而易見的下一步就是訓練更高分辨率的GAN。實際上,我已經對此進行了一些嘗試。
第一個嘗試是重新編寫PyTorch代碼以縮放到256 x 256圖像。該代碼有效,但是DCGAN崩潰了,我無法穩定訓練。主要原因是只有大約800張圖像。而且,盡管我進行了一些數據擴充,但還不足以訓練更高分辨率的DCGAN。
然后,我嘗試使用相對論的GAN,該GAN已成功針對具有較小數據集的高分辨率數據進行了成功的訓練,但也無法使其正常工作。
目前來看,問題應該出現在數據上,數據量太小,還是滿足不了訓練的需求。但是我將繼續嘗試其他一些想法,以產生更高分辨率的Pokemon,如果我有工作的必要,我將發布我使用的技術。

關于用pytorch和GAN做了生成神奇寶貝的失敗模型是怎樣的問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大关县| 安新县| 黎川县| 静安区| 灵石县| 安顺市| 梨树县| 商丘市| 新竹市| 乌拉特前旗| 界首市| 惠来县| 桂平市| 南漳县| 上林县| 郎溪县| 诏安县| 高唐县| 永康市| 北安市| 杂多县| 红安县| 文水县| 乐山市| 井冈山市| 平乐县| 辽源市| 沿河| 鹤壁市| 阿荣旗| 汉川市| 灵石县| 永泰县| 眉山市| 西贡区| 呼玛县| 邵阳县| 丁青县| 姚安县| 盖州市| 休宁县|