生成對抗網路 (GAN) 是一種深度學習架構,主要使用兩個相互競爭的類神經網路來生成新資料。這兩個網路分別為生成器和鑑別器,會透過相互訓練,輸出更準確的內容。GAN 可應用在多種領域,包括電腦視覺、機器人、圖像生成、影片合成和自然語言處理等等。
要瞭解 GAN 的運作方式,以比喻來說明最合適:GAN 就像藝術偽造者 (生成器) 與藝術評論家 (鑑別器) 之間的競爭關係。
隨著這場對抗「遊戲」持續,兩個網路都會越來越聰明。最終,偽造者的手法變得相當精熟,讓評論家無法再準確分辨真偽。到了這個階段,代表 GAN 已訓練完成,可以生成高度擬真的新資料。
卷積類神經網路 (CNN) 和生成對抗網路 (GAN) 都是深度學習架構,但兩者的優點和應用領域不同。CNN 常用於圖像分類和物體偵測,GAN 則常用於生成新的資料實例。
功能 | CNN | GAN |
數據用量 | 大部分加上標籤的資料集 | 標籤/無標籤資料集 |
輸出 | 分類、擷取特徵 | 多種新資料實例 |
模型類型 | 訓練判別式模型時 | 生成式 |
主要工作 | 分類圖像、辨識物體 | 生成圖像、擴增資料、建立合成資料 |
功能
CNN
GAN
數據用量
大部分加上標籤的資料集
標籤/無標籤資料集
輸出
分類、擷取特徵
多種新資料實例
模型類型
訓練判別式模型時
生成式
主要工作
分類圖像、辨識物體
生成圖像、擴增資料、建立合成資料
雖然所有 GAN 都採用生成器-鑑別器結構,但業界開發了多種變化版本,來解決特定問題。其中幾種最重要的類型如下:
雖然各種生成對抗網路變化版本的基本原理,都是使用兩個對抗網路,不過研究人員已找出多種方法來修改架構和訓練方式,藉此解決限制,並提高這些生成對抗網路在特定應用層面的效能。
GAN 為許多產業開創了全新可能。這項技術通常應用在以下主要方面:
這是最常見的 GAN 應用領域,包括生成寫實的人物、地點和物體圖像;製作數位藝術和音樂;提供功能強大的圖像編輯工具,例如風格轉換 (讓相片看起來像畫作)、超解析度 (將模糊圖像銳利化),以及文字轉圖像合成。
高品質資料是機器學習的原動力,但可能難以取得、成本高昂或屬於私人資料。GAN 可產生合成資料,解決這個問題。在醫療照護領域,GAN 可建立寫實的去識別化醫學掃描影像,來訓練診斷模型,同時保護病患隱私。在金融領域,GAN 則可產生合成交易資料,來訓練出更完善的詐欺偵測系統。這有助於克服資料稀少的問題,並平衡資料集。
GAN 可學習複雜系統中的模式,輸出逼真的模擬結果。這項生成技術可應用在多種情境,例如訓練自動駕駛汽車、預測影片的後續畫面,甚至可用於藥物研發方面,發掘潛在的分子結構。
使用「正規」資料訓練 GAN 後,將能有效找出不符合模式的內容。這可應用在偵測詐欺性金融活動、找出有害網路安全的入侵行為,以及發現產品製造上的瑕疵。
要開發及部署 GAN,必須具備強大的運算能力和完善的 MLOps 平台。Google Cloud 提供多種工具,支援整個工作流程: