Adobe工程師開發只用「一張圖」就能訓練GAN的機器學習技術
著名網站This person do not exist(這個人不存在)即是使用GAN技術製成,但要做出假以亂真的圖片,訓練GAN需要一定數量的數據集做訓練;對於數據量偏少的開發者,真的就只能幹瞪眼放棄嗎?
Adobe工程師開發新形態GAN技術,一張圖也能成功訓練!
本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯繫出處
對不同的生成器採用不同的學習率(learning rate)。
下圖就展示了使用這兩種方法實現的模型。默認情況下,最多同時訓練3個生成器,並對較低的生成器,分別將學習率調至1/10和1/100。
在這個過程中,有一個有趣的現象。
如果對較低的生成器採用較高的學習率,那麼生成的圖像質量會高些,但是差異性較弱。
相反,如果對較低的生成器採用較小的學習率,那麼生成圖像的差異性會豐富一些。如下圖所示。
程序代碼已在GitHub上開源
ConSinGAN的程序代碼已經在GitHub上開源。
老規矩,先介紹一下運行所需要的環境:Python 3.5;Pytorch 1.1.0。
安裝也非常簡單:
pip install -r requirements.txt
若要使用論文中的默認參數訓練模型:
python main_train.py–gpu 0–train_mode generation–input_name Images/Generation/angkorwat.jpg
在英偉達GeForce GTX 1080Ti上訓練一個模型大約需要20–25分鐘。
不同的學習率和訓練階段數量,會影響實驗的結果,研究人員推薦二者的默認值分別是0.1和6。
當然也可以修改學習率:
python main_train.py–gpu 0–train_mode generation–input_name Images/Generation/colusseum.jpg–lr_scale 0.5
修改訓練階段的數量:
python main_train.py–gpu 0–train_mode generation–input_name Images/Generation/colusseum.jpg–train_stages 7
當然,模型也可以用來處理「圖像協調」和「圖像編輯」等任務,詳情可參閱GitHub。