什麼是 GAN?

生成式對抗網路 (GAN) 是一種深度學習架構。它訓練兩個神經網路來彼此競爭,從指定的訓練資料集中產生更真實的新資料。例如,您可以從現有的影像資料庫中產生新影像,或從歌曲資料庫中產生原始音樂。GAN 之所以被認為具有對抗性,是因為它可以訓練兩個不同的網路並使它們相互對抗。一個網路採取輸入資料範例,並儘可能多地修改來產生新資料。另一個網路會嘗試預測產生的資料輸出是否屬於原始資料集。換言之,預測網路確定產生的資料是虛假還是真實。系統會產生較新的改進版假資料值,直至預測網路無法再區分虛假資料與原始資料。

生成式對抗網路有哪些使用案例?

GAN 架構在不同行業中具有多個應用。接下來給出一些範例。

產生影像

生成式對抗網路透過文字型提示或修改現有影像來建立逼真的影像。它們可以協助在視訊遊戲和數位娛樂中創造逼真、身臨其境的視覺體驗。

GAN 也可以編輯影像,例如將低解析度影像轉換為高解析度或將黑白影像轉換為彩色。該工具還可以為動畫和視訊打造逼真的面部、角色和動物。

為其他模型產生訓練資料

在機器學習 (ML) 中,資料增強透過使用現有資料建立資料集的已修改副本來人為地增加訓練集規模。

可以使用生成式模型進行資料增強,以建立具有現實世界資料所有屬性的合成資料。例如,機器學習可以產生欺詐性交易資料,然後使用這些資料訓練另一個欺詐檢測機器學習系統。這些資料可以教導系統準確區分可疑交易和真實交易。

補全缺失的資訊

有時,您可能希望生成式模型能夠準確地猜測並補全資料集中的一些缺失資訊。

例如,您可以透過了解地表資料與地下結構之間的相關性來訓練 GAN 產生地下表面 (次表面) 的影像。通過研究已知的次表面影像,GAN 可以使用地形圖建立用於能源應用的新影像,例如地熱測繪或碳捕集和儲存。

從 2D 資料產生 3D 模型

GAN 可以從 2D 照片或掃描的影像產生 3D 模型。例如,在醫療保健中,GAN 結合了 X 射線和其他身體掃描,以建立真實的器官影像,將其用於手術規劃和模擬。


 

生成式對抗網路如何運作?

生成式對抗網路系統包括兩個深度神經網路 — 產生器網路鑑別器網路。這兩個網路在對抗性遊戲中訓練模型,其中一個網路嘗試產生新資料,另一個網路嘗試預測輸出是虛假資料還是真實資料。

從技術上講,GAN 的運作方式如下。複雜的數學方程式構成整個運算程序的基礎,以下是其簡單的概述:

  1. 產生器神經網絡神經網路分析訓練集並識別資料屬性
  2. 鑑別器神經網路分析初始訓練資料並獨立區分屬性
  3. 產生器透過向某些屬性新增雜訊 (或隨機變化) 來修改某些資料屬性
  4. 產生器將修改的資料傳遞給鑑別器
  5. 鑑別器計算產生輸出屬於原始資料集的概率
  6. 鑑別器為產生器提供一些指導,以減少下一個週期中雜訊向量隨機化

產生器嘗試最大限度提高鑑別器發生錯誤的概率,而鑑別器嘗試將錯誤的可能性降到最低。在訓練反覆運算中,產生器和鑑別器會不斷演變並相互對抗,直到它們達到平衡狀態。在平衡狀態下,鑑別器無法再辨識合成資料。至此,培訓程序結束。


 

GAN 培訓範例

接下來用影像間轉換中的 GAN 模型範例來情境化上述步驟。

假設輸入影像是 GAN 嘗試修改的人臉。例如,屬性可以是眼睛或耳朵的形狀。假設產生器透過在其上新增太陽鏡來變更真實影像。鑑別器會收到一組影像,其中一些是戴著太陽鏡的真實人物,其他一些產生的影像則經過修改以包含太陽鏡。

如果鑑別器可以區分虛假影像和真實影像,則產生器會更新其參數以產生更不易辨別的虛擬影像。如果產生器產生欺騙鑑別器的影像,則鑑別器會更新其參數。在達到平衡之前,這種競爭會不斷改善兩個網路。

生成式對抗網路有哪些類型?

GAN 模型有不同的類型,具體取決於所使用的數學公式以及產生器和鑑別器相互作用的不同方式。

接下來我們給出一些常用的模型,但此清單並非詳盡。還有許多其他 GAN 類型,例如 StyleGAN、CycleGAN 和 DiscoGAN,它們可以解決不同類型的問題。

Vanilla GAN

這是基本的 GAN 模型,它在鑑別器網路的意見回饋很少或根本沒有意見回饋的情況下產生資料變化。對於大多數現實世界的使用案例,Vanilla GAN 通常需要增強。

條件性 GAN

條件性 GAN (cGAN) 引入了條件性概念,可有針對性地產生資料。產生器和鑑別器接收額外資訊,通常是類標籤或其他形式的調整資料。

例如,如果產生影像,條件可能是描述影像內容的標籤。調整可讓產生器產生符合特定條件的資料。

深度卷積 GAN

深度卷積 GAN (DCGAN) 認識到卷積神經網路 (CNN) 在影像處理中的強大功能,因此將 CNN 架構整合到 GAN 中。

在 DCGAN 中,產生器使用轉置卷積來擴展資料分佈,而鑑別器使用卷積層對資料進行分類。DCGAN 還引入架構指南,以提高訓練的穩定性。

超解析度 GAN

超解析度 GAN (sRGAN) 專注於將低解析度影像放大為高解析度。目標是將影像增強到更高的解析度,同時保持影像品質和細節。

Laplacian Pyramid GAN (LAPGAN) 透過將問題分為幾個階段來解決產生高解析度影像的挑戰。它們使用階層式方法,多個產生器和鑑別器在影像的不同比例或解析度下工作。該過程始於產生低解析度影像,該影像在漸進式 GAN 階段逐漸提高品質。

AWS 如何支援您的生成式對抗網路要求?

Amazon Web Services (AWS) 提供許多服務以支援您的 GAN 要求。

Amazon SageMaker 是一項完全受管的服務,可以用來準備資料以及建置、訓練和部署機器學習模型。這些模型可以在許多場景中使用,並且 SageMaker 自帶全受管的基礎設施、工具和工作流程。該服務具有多種功能,可加速任何應用程式的 GAN 開發和訓練。

Amazon Bedrock 是一項全受管的服務。可以使用該服務存取來自 Amazon 和領先人工智慧 (AI) 新創公司的基礎模型 (FM) 或經過訓練的深度神經網路。這些 FM 可透過 API 提供,因此您可以從各種選項中進行選擇,以找到最適合自身需求的模型。可以在自己的 GAN 應用程式中使用這些模型。借助 Amazon Bedrock,可以更快地開發和部署可擴展、可靠且安全的生成式 AI 應用程式。並且,您不必管理基礎設施。

AWS DeepComposer 帶來創意無限的機器學習方法。可以利用音樂鍵盤和最新的機器學習技術來開始動手實務,從而擴展自己的機器學習技能。無論其機器學習或音樂背景如何,開發人員都可以開始使用 GAN。並且,他們可以訓練和最佳化 GAN 模型以創作原創音樂。

立即建立帳戶 ,開始在 AWS 上使用生成式對抗網路。

AWS 上的後續步驟

註冊免費帳戶

立即存取 AWS 免費方案。

註冊 
開始在主控台進行建置

開始在 AWS 管理主控台進行建置。

登入