GAN 訓練
由於 GAN 包含兩個經過個別訓練的網路,因此訓練演算法必須解決兩個複雜問題:
- GAN 必須同時進行兩種訓練 (產生器和鑑別器)。
- 很難找出 GAN 收斂的情況。
交替訓練
生成器和判別器的訓練程序不同。那麼,我們要如何訓練 GAN 整體?
GAN 訓練會在交替的時間段中進行:
- 判別器會訓練一或多個迴圈。
- 產生器會訓練一或多個迴圈。
- 重複執行步驟 1 和 2,繼續訓練產生器和判別器網路。
我們會在鑑別器訓練階段保持產生器的常數。辨別器訓練會嘗試找出如何區分真實資料和假資料,因此必須學會如何辨識產生器的缺陷。對於經過完整訓練的產生器而言,這與產生隨機輸出的未訓練產生器所產生的問題不同。
同樣地,我們會在產生器訓練階段中保持鑑別器的常數。否則產生器會嘗試命中移動中的目標,且可能永遠無法收斂。
正是這種來回的過程,讓 GAN 能夠解決原本難以解決的生成問題。我們從簡單的分類問題開始,逐步解決複雜的生成問題。反之,如果您無法訓練分類器來判斷真實資料和產生資料的差異 (即使是初始隨機產生器的輸出內容),就無法開始 GAN 訓練。
收斂
隨著產生器在訓練過程中改善,判別器的效能會變差,因為判別器無法輕易分辨真假圖片。如果產生器順利完成,鑑別器的準確度為 50%。鑑別器會擲硬幣來做出預測。
這種進展會導致 GAN 整體收斂的問題:區別器的回饋隨著時間流逝而變得越來越不具意義。如果 GAN 繼續訓練,超過鑑別器提供完全隨機意見回饋的時間點,產生器就會開始訓練垃圾意見回饋,而其品質可能會降低。
對於 GAN 而言,收斂通常是短暫的狀態,而非穩定狀態。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-02-26 (世界標準時間)。
[null,null,["上次更新時間:2025-02-26 (世界標準時間)。"],[[["Generative Adversarial Networks (GANs) employ two neural networks, a generator and a discriminator, trained in alternating periods to create realistic data."],["GAN training involves a dynamic where the discriminator learns to distinguish real from fake data, while the generator learns to produce increasingly realistic data to fool the discriminator."],["A key challenge in GAN training is identifying convergence, as the discriminator's performance degrades as the generator improves, potentially leading to unstable training and a collapse in the generator's quality."],["While GANs can solve complex generative problems, their success relies on a balance between the generator and discriminator, with the discriminator providing meaningful feedback to guide the generator's learning."]]],[]]