GAN 結構總覽
生成對抗網路 (GAN) 包含兩個部分:
- 產生器會學習產生可產生的資料。產生的執行個體會成為歧視器的負面訓練範例。
- 歧視器學習如何將產生器和假資料與實際資料區分開來。歧視者會對生成機產生懲罰。
訓練開始時,產生器會產生明顯的假資料,而歧視器會快速學習它知道這是假的。
![三個資料欄標示為「#39;GenerateData'」、「'Discriminator'」和「Real Data'」。在「#39;Generate Data'」(生成的資料) 下方,一個藍色矩形包含一個松鼠和一個圓圈。這個矩形是發電機最初的不好軌跡。在《##9; Real Data'》中,我們找到一張實際 10 美元帳單的圖片。'Discriminator' 這兩個字詞是 'FAKE' 和 'REAL'. 有一個箭頭從「#K9;FAKE'」字樣指向一個箭頭,指向「#39;Generate Data'」下方的圖片。另一個箭頭從「#AL」|「#39; ReAL'」出現的圖片中指向「#39;Real Data'」底下的圖片。](https://developers.google.cn/static/machine-learning/gan/images/bad_gan.svg?authuser=0000&hl=zh-tw)
訓練進行時,產生器會更接近產生會產生結果的輸出內容:
![這張圖片會在「#I9;Generate Data '」、「'Discriminator'」、「'Real Data ' Real Data'上圖」中的標題下方新增一列。在「##9;Generate Data'」下方,有一個左上角有個綠色矩形,數字為 10,旁邊是簡單的臉部圖畫。在《##9; Real Data'》中,我們找到一張實際 100 美元帳單的圖片。在「#39;Discriminator'」下方是「##9;FAKE'」一個箭頭,指向「#39;Generate Data'」和「'REAL'」下方的圖片。箭頭下方是「#39;Real Data'」下方的圖片。](https://developers.google.cn/static/machine-learning/gan/images/ok_gan.svg?authuser=0000&hl=zh-tw)
最後,如果產生器產生器的運作情況良好,辨別器就更顯而易見的實際和虛構差異。這會開始將假資料真實分類,準確度也會降低。
![此圖片會在「##9;Generate Data'」、「'Discriminator'」和「##9;Real Data' Real Data' First 圖片」中的標題下方新增一列。在「#39;Generate data'」底下,有一張二十美元帳單的圖片。在「 #
32 實境資料」下方,查看 20 美元帳單的圖片。在「#39;Discriminator'」下方是「##9;REAL'」一個箭頭,指向「'Generate Data'」和「'REAL'」下方圖中的箭頭。「#39;Real Data'」下方有箭頭。](https://developers.google.cn/static/machine-learning/gan/images/good_gan.svg?authuser=0000&hl=zh-tw)
整個系統的圖片如下:
![生成對抗網路的圖表。圖表中央是標示為 'discriminator' 的方塊。兩個分支版本則會從左側往這個方塊中。上方分支版本位於圖表左上方,標有「#39;real world image'」的圓柱。一個箭頭從這個圓形指向另一個標示為「#39;Sample'」的方塊。標示「'Sample'」方塊的箭頭,指向「#39;Discriminator'」方塊。底部分支部分會送入 'Discriminator' 方塊,開頭為「'Random Input'」。一個箭頭從「#39;Random Input'」方塊引進,以標示為「##9;Generator'」的方塊。箭頭從「#39;Generator'」方塊導向第二個「##9;Sample'」方塊。一個箭頭從「##9;Sample'」方塊指向「##9;Discriminator」方塊。在「Dicriminator」方塊右側,箭頭會指向包含綠色圓圈和紅色圓圈的方塊。方塊上方的「'Real'」這個字樣會顯示在方塊上方的綠色文字中,「#39;False'」則在方塊下方以紅色顯示。兩個箭頭從這個方塊指向圖表右側的兩個方塊。其中一個箭頭會導向一個標示為「##39;Discriminator Loss'」的方塊。另一個箭頭會導向標示為「##39Generator Loss'」的方塊。](https://developers.google.cn/static/machine-learning/gan/images/gan_diagram.svg?authuser=0000&hl=zh-tw)
產生器和歧視者都是類神經網路。產生器輸出結果會直接連結至歧視輸入內容。透過反向傳播,歧視器的分類提供了發電機用來更新權重的訊號。
讓我們來詳細說明這個系統的各個部分。
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2022-09-27 (世界標準時間)。
[null,null,["上次更新時間:2022-09-27 (世界標準時間)。"],[[["GANs consist of two neural networks: a generator creating data and a discriminator evaluating its authenticity."],["The generator and discriminator are trained against each other, with the generator aiming to produce realistic data and the discriminator aiming to identify fake data."],["Through continuous training, the generator improves its ability to create realistic data, while the discriminator struggles more with differentiation."],["The ultimate goal is for the generator to create data so realistic that the discriminator cannot distinguish it from real data."]]],[]]