1. Introduction
本教程將通過一個示例介紹 DCGANs(深度卷積生成對抗網絡)。我們將訓練一個生成對抗網絡(GAN),在給它展示大量真實名人照片后,它能夠生成新的“名人”圖片。這里的大部分代碼來源于 PyTorch 官方示例中的 DCGAN 實現,而本文檔將對該實現進行詳細解釋,并闡明這種模型的運行機制及其背后的原因。無需擔心,你不需要事先了解 GAN 的知識,但初次接觸的讀者可能需要花一些時間來理解模型底層的實際運作方式。此外,為了節省時間,建議使用一塊(或多塊)GPU 來運行。那么,讓我們從頭開始吧!
2. 生成式對抗網絡
1. 什么是 GAN?
GANs(生成對抗網絡)是一種深度學習框架,旨在教會模型捕獲訓練數據的分布,以便能夠從該分布中生成新的數據。GANs 由 Ian Goodfellow 于 2014 年發明,并首次在論文《Generative Adversarial Nets》中被描述。
GANs 由兩個獨立的模型組成:生成器(Generator) 和 判別器(Discriminator&#