一句話說明
擴散模型(Diffusion Model)是一種 AI 生成技術,它先把資料「加噪變模糊」,再學會「把模糊還原成清晰」——Stable Diffusion、DALL-E 3、Midjourney 背後都是這個原理。
核心概念:加噪和去噪
擴散模型的運作方式可以用修復舊照片來理解。
前向過程(加噪)。想像你有一張完美的照片,然後每秒鐘在上面撒一把沙子。第一秒,照片還看得清楚。第十秒,有點模糊。到了第一百秒,照片完全被沙子蓋住,看起來就像一堆隨機的噪點。
反向過程(去噪)。現在倒過來。如果你見過幾十億張照片被沙子逐步覆蓋的過程,你就能學會:「這種噪點圖案底下,通常是什麼東西」。看到某個噪點分布,你可以猜出「下面可能是一隻貓」,然後逐步把沙子掃掉,每次掃一點,最後還原出一張清晰的貓照片。
擴散模型就是學會了這個「逐步掃沙子」的過程。
技術細節
前向過程是固定的數學操作。每一步按照預定的排程(noise schedule)加入高斯噪聲。這部分不需要學習,只是把乾淨的圖片逐步變成純噪聲。
反向過程是模型學習的部分。模型(通常是 U-Net 架構)的任務是:給定一張有噪聲的圖片和當前的步數,預測這一步應該移除的噪聲。模型不需要一次還原出整張圖片,只需要每一步做一點微調,累積起來就能從噪聲還原到清晰圖片。
生成時,從一張純隨機噪聲開始,反覆用模型預測並移除噪聲。典型的生成過程需要 20-50 步去噪(早期的 DDPM 需要 1000 步,後來的 DDIM 和 DPM-Solver 大幅減少了步數)。
為什麼比 GAN 好
在 2022 年之前,GAN(生成對抗網路)是 AI 圖片生成的主流。擴散模型在幾個方面勝出:
訓練穩定。GAN 需要同時訓練兩個互相對抗的網路,平衡不好就會崩潰。擴散模型只訓練一個去噪網路,用簡單的均方誤差(MSE)損失函數,訓練過程平穩得多。
多樣性好。GAN 容易出現模式崩塌——生成器只學會產生少數幾種圖片。擴散模型因為每次從不同的隨機噪聲開始,生成的多樣性天然就高。
品質更高。擴散模型在多個圖片生成的評估指標(FID、IS)上超越 GAN,生成的圖片細節更豐富、更寫實。
缺點是生成速度較慢。GAN 只需要一次前向傳播就能生成圖片,擴散模型需要反覆去噪 20-50 步。不過後來的改進(如 LCM、SDXL Turbo)已經把步數壓縮到 1-4 步。
文字引導生成
讓擴散模型「聽懂文字描述」需要額外的機制:
CLIP 模型。OpenAI 訓練的 CLIP 能把圖片和文字映射到同一個向量空間。「一隻坐在窗邊的橘貓」這段文字會被轉換成一個向量,和對應圖片的向量距離很近。
Classifier-Free Guidance(CFG)。去噪時,模型同時預測「有文字引導」和「沒有文字引導」兩種結果,然後把差異放大。CFG 值越高,生成結果越貼合文字描述,但也越不自然。通常設定在 7-15 之間。
這就是你在 Stable Diffusion 裡打 Prompt 時,模型能根據文字描述生成對應圖片的原理。
圖片以外的應用
擴散模型的「加噪→去噪」框架通用性很強,已經被應用到多個領域:
音樂和音效生成。Google 的 MusicLM 和 Meta 的 AudioCraft 用擴散模型從文字描述生成音樂。例如「一段輕快的爵士鋼琴配上雨聲」。
影片生成。OpenAI 的 Sora 和 Runway 的 Gen-3 用擴散模型生成影片。技術上是在時間維度上也做擴散——每一幀之間的連貫性透過 3D U-Net 或 Transformer 維持。
蛋白質結構預測。在生物科技領域,擴散模型被用來生成蛋白質的 3D 結構。RFdiffusion 能設計出自然界不存在的蛋白質結構,對藥物開發有潛在價值。
3D 物件生成。從文字描述或單張圖片生成 3D 模型。在遊戲和 AR/VR 內容製作上有應用潛力。
語音合成。擴散模型也被用在語音合成上,生成的語音自然度和逼真度優於傳統的語音合成方法。
主要模型
DDPM(2020):最早證明擴散模型可以和 GAN 比肩的論文,但需要 1000 步去噪,速度很慢。
Stable Diffusion(2022 至今):Stability AI 發布的開源模型,在潛在空間(Latent Space)做擴散,大幅降低運算需求。是目前最廣泛使用的開源 AI 繪圖模型。
DALL-E 3(2023):OpenAI 的閉源模型,和 ChatGPT 整合,以文字理解能力見長。
Midjourney(2022 至今):閉源的雲端服務,以藝術風格的圖片品質聞名。底層架構未公開,但廣泛被認為基於擴散模型。
Flux(2024):Black Forest Labs 發布的開源模型,是 Stable Diffusion 原始開發者的新作品,在部分指標上超越 SDXL。
安全與限制
生成的內容可能侵犯版權。訓練資料包含大量受著作權保護的圖片,生成結果可能與訓練圖片高度相似。多起訴訟仍在進行中。
Deepfake 的技術基礎。擴散模型可以用來生成高度逼真的假圖片和假影片,用於詐騙、假訊息或隱私侵害。
運算資源消耗大。訓練一個 Stable Diffusion 等級的模型需要數百張 GPU 運行數週,碳排放量不容忽視。推論階段的運算需求雖然較低,但大規模服務仍需要可觀的 GPU 資源。
生成結果難以溯源。目前缺乏可靠的機制來判斷一張圖片是否由 AI 生成。C2PA 內容認證標準是一個嘗試方向,但尚未普及。
品質仍有上限。擴散模型在生成文字(圖片中的文字)、手指數量、物理一致性等方面仍然經常出錯,提示詞工程只能部分緩解。
知識檢測
讀完文章後,測試一下你對這個主題的理解。
常見問題
擴散模型和 LLM(大型語言模型)有什麼關係?
兩者是不同類型的生成式 AI。LLM(如 GPT、Claude)用 Transformer 架構處理文字,擴散模型用 U-Net 或 DiT 架構處理圖片。但兩者可以結合——DALL-E 3 用 GPT-4 理解文字 Prompt,再交給擴散模型生成圖片。
為什麼 AI 圖片生成不夠快?
因為需要反覆去噪。每一步去噪都要跑一次神經網路推論。研究者一直在想辦法減少步數(如 LCM、Consistency Model),目前最快的方法可以 1-4 步生成圖片,接近即時生成。
Stable Diffusion 和 Midjourney 底層原理一樣嗎?
都是擴散模型,但具體的架構設計、訓練資料、後處理方式不同。Midjourney 的架構細節未公開。兩者的差異有點像同一個食譜但不同廚師做出來的菜——基本原理相同,細節和品質各有差異。
擴散模型會取代 GAN 嗎?
在圖片生成品質上已經取代了。但 GAN 在即時應用(如影片通話背景處理)和超解析度等需要快速推論的場景中仍有優勢。兩種技術也有結合的趨勢,例如用 GAN 加速擴散模型的去噪過程。
學擴散模型需要什麼數學基礎?
直覺理解只需要知道「加噪→去噪」的概念。深入理解需要機率論(馬可夫鏈、變分推論)和微積分基礎。如果目標是使用(而非開發)擴散模型,不需要深入數學。
相關文章
參考資料
- Ho et al., "Denoising Diffusion Probabilistic Models" (DDPM, 2020)
- Rombach et al., "High-Resolution Image Synthesis with Latent Diffusion Models" (2022)
- Song et al., "Denoising Diffusion Implicit Models" (DDIM, 2021)