AI & GenAI

[AI & GenAI Blog #51] Mô Hình Sinh Khuếch Tán (Diffusion Models): Từ VAE, GANs Đến DDPM, Đột Phá Latent Diffusion (Stable Diffusion) & Kỹ Thuật Điều Khiển ControlNet

0 views
[AI & GenAI Blog #51] Mô Hình Sinh Khuếch Tán (Diffusion Models): Từ VAE, GANs Đến DDPM, Đột Phá Latent Diffusion (Stable Diffusion) & Kỹ Thuật Điều Khiển ControlNet

1. Bối cảnh thực tế (Context & Problem Statement)

Trước năm 2020, bài toán sinh dữ liệu hình ảnh nhân tạo bị chi phối bởi hai trường phái:

  1. Variational Autoencoders (VAE): Tốc độ sinh ảnh nhanh và ổn định, nhưng hình ảnh tạo ra luôn bị mờ (Blurry Images) do hàm mất mát trung bình bình phương (MSE) ép mô hình lấy trung bình các khả năng có thể xảy ra.
  2. Generative Adversarial Networks (GANs - Ian Goodfellow, 2014): Tạo ra hình ảnh sắc nét tuyệt đẹp nhờ cuộc đối đầu giữa Generator và Discriminator. Tuy nhiên, GANs cực kỳ khó huấn luyện (Notoriously Unstable Training), dễ bị sụp đổ phân phối (Mode Collapse - mô hình chỉ sinh đi sinh lại duy nhất một vài kiểu ảnh) và không thể mở rộng quy mô ổn định.

Năm 2020, bài báo mang tính bước ngoặt "Denoising Diffusion Probabilistic Models (DDPM)" của Jonathan Ho et al. đã mở ra một kỷ nguyên mới:

  • Thay vì cố gắng vẽ bức tranh trong 1 bước duy nhất (như GAN/VAE), mô hình học cách xóa bỏ từng chút nhiễu hạt ngẫu nhiên (Denoising step-by-step) qua hàng chục bước.
  • Độ ổn định huấn luyện tuyệt đối: Hàm mất mát lồi, không bị Mode Collapse, sinh ảnh đa dạng và sắc nét vượt trội hơn GANs.

Năm 2022, Latent Diffusion Models (LDM / Stable Diffusion) của Runway & Đại học Munich tiếp tục tạo nên cuộc cách mạng: Đưa quá trình khuếch tán từ không gian điểm ảnh (Pixel Space) vào Không gian tiềm ẩn (Latent Space), cho phép tạo ảnh chất lượng cao trên các dòng card đồ họa phổ thông (GPU RTX tiêu chuẩn).


2. Các Khái Niệm & Cơ Chế Cốt Lõi

2.1. Bản Chất Toán Học Của DDPM (Denoising Diffusion Probabilistic Models)

Quá trình khuếch tán được mô hình hóa bằng hai chuỗi Markov đối ngẫu:

FORWARD PROCESS (Thêm nhiễu Gaussian tuần tự - KHÔNG CẦN HỌC):
Ảnh gốc (x_0) ---> [ + Nhiễu t=1 ] ---> [ + Nhiễu t=2 ] ... ---> [ Nhiễu trắng thuần túy (x_T) ]

REVERSE PROCESS (Mạng U-Net học cách khử nhiễu từng bước):
[ Nhiễu trắng (x_T) ] ---> [ U-Net đoán nhiễu ] ---> [ Khử nhiễu t-1 ] ... ---> Ảnh tái tạo (x_0)

1. Quá trình Thuận (Forward Diffusion Process - qq):

Liên tục thêm nhiễu Gauss vào ảnh gốc x0x_0 qua TT bước (thường T=1,000T = 1,000 steps): q(xt∣xt−1)=N(xt;1−βtxt−1,βtI)q(x_t \mid x_{t-1}) = \mathcal{N}(x_t; \sqrt{1 - \beta_t} x_{t-1}, \beta_t \mathbf{I}) (trong đó β1<β2<⋯<βT\beta_1 < \beta_2 < \dots < \beta_T là lịch trình thêm nhiễu Variance Schedule).

  • Bí quyết toán học "Nhảy cóc" (Closed-form Sampling): Đặt αt=1−βt\alpha_t = 1 - \beta_t và αˉt=∏s=1tαs\bar{\alpha}_t = \prod_{s=1}^t \alpha_s. Ta có thể tính toán trực tiếp ảnh bị nhiễu xtx_t tại bất kỳ bước tt nào từ ảnh gốc x0x_0 trong 1 phép tính duy nhất mà không cần chạy tuần tự tt bước: xt=αˉtx0+1−αˉtϵvới ϵ∼N(0,I)x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon \quad \text{với } \epsilon \sim \mathcal{N}(0, \mathbf{I})

2. Quá trình Nghịch (Reverse Denoising Process - pθp_\theta):

Bắt đầu từ một vector nhiễu ngẫu nhiên thuần túy xT∼N(0,I)x_T \sim \mathcal{N}(0, \mathbf{I}), ta cần đảo ngược chuỗi để khôi phục lại ảnh: pθ(xt−1∣xt)=N(xt−1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1} \mid x_t) = \mathcal{N}(x_{t-1}; \mu_\theta(x_t, t), \Sigma_\theta(x_t, t))

  • Mục tiêu huấn luyện tối thượng (The Simplified Training Objective): Nghiên cứu của Ho et al. chứng minh rằng thay vì dự đoán trực tiếp ảnh sạch x0x_0, mạng nơ-ron U-Net chỉ cần học cách dự đoán chính xác vector nhiễu ϵ\epsilon đã được thêm vào tại bước tt: Lsimple(θ)=Et,x0,ϵ[∥ϵ−ϵθ(xt,t)∥2]\mathcal{L}_{\text{simple}}(\theta) = \mathbb{E}_{t, x_0, \epsilon} \left[ \Big\| \epsilon - \epsilon_\theta(x_t, t) \Big\|^2 \right] (Một hàm mất mát MSE cực kỳ đơn giản, ổn định và dễ huấn luyện!).

2.2. Đột Phá Latent Diffusion (Stable Diffusion Architecture)

  • Vấn đề của DDPM nguyên bản (Pixel-Space Diffusion): Quá trình khử nhiễu diễn ra trực tiếp trên từng pixel của bức ảnh (ví dụ ảnh 512×512×3=786,432512 \times 512 \times 3 = 786,432 giá trị). Chạy mạng U-Net 1000 bước trên không gian này đòi hỏi siêu máy tính khổng lồ.
  • Giải pháp Latent Diffusion (Phân tách hai giai đoạn):
    1. Nén cảm thụ (Perceptual Compression via VAE):
      • Huấn luyện một mạng Autoencoder (VAE): Bộ mã hóa (Encoder E\mathcal{E}) nén bức ảnh từ Pixel Space (512×512×3512 \times 512 \times 3) xuống Không gian tiềm ẩn (Latent Space zz) kích thước chỉ 64×64×464 \times 64 \times 4 (Nén 64×64\times số chiều dữ liệu mà vẫn giữ trọn vẹn đặc trưng ngữ nghĩa).
      • Bộ giải mã (Decoder D\mathcal{D}) chịu trách nhiệm tái tạo lại ảnh độ phân giải cao từ vector latent sạch.
    2. Khuếch tán trong không gian tiềm ẩn (Latent Space Diffusion):
      • Toàn bộ quá trình thêm nhiễu và khử nhiễu của U-Net chỉ diễn ra trên ma trận 64×64×464 \times 64 \times 4 nhỏ gọn.
      • →\rightarrow Tăng tốc độ sinh ảnh gấp 10×10\times và cho phép chạy mượt mà trên các GPU cá nhân (8GB−12GB8\text{GB} - 12\text{GB} VRAM)!
PIXEL SPACE:                Ảnh thô (512x512x3)                                      Ảnh tái tạo (512x512x3)
                                  |                                                            ^
                                  v (VAE Encoder E)                                            | (VAE Decoder D)
LATENT SPACE:                Latent z_0 (64x64x4)                                        Latent sạch z_0
                                  |                                                            ^
                                  v (Thêm nhiễu)                                               | (U-Net Denoising)
                             Latent nhiễu z_T -------------------------------------------------+
                                                     ^
                                                     | (Cross-Attention)
TEXT CONDITIONING:                           [Prompt: "A cat in space"] ---> [CLIP Text Encoder]

2.3. Cơ Chế Điều Khiển Văn Bản & Classifier-Free Guidance (CFG)

Làm thế nào để ép bức ảnh sinh ra phải tuân thủ nghiêm ngặt theo câu lệnh Prompt văn bản?

  • Text Conditioning qua Cross-Attention: Câu văn bản được đưa qua CLIP Text Encoder để tạo chuỗi vector ngữ nghĩa. Các vector này được đưa vào các tầng Cross-Attention bên trong mạng U-Net để định hướng dòng chảy khử nhiễu.
  • Classifier-Free Guidance (CFG - Ho & Salimans, 2021):
    • Tại mỗi bước khử nhiễu, mạng U-Net dự đoán song song 2 giá trị nhiễu:
      1. ϵθ(zt,c)\epsilon_\theta(z_t, c): Dự đoán nhiễu có điều kiện prompt cc (Conditional).
      2. ϵθ(zt,∅)\epsilon_\theta(z_t, \emptyset): Dự đoán nhiễu khi không có prompt (Unconditional / Prompt rỗng).
    • Công thức tổng hợp hướng dẫn: ϵ~θ(zt,c)=ϵθ(zt,∅)+s⋅(ϵθ(zt,c)−ϵθ(zt,∅))\tilde{\epsilon}_\theta(z_t, c) = \epsilon_\theta(z_t, \emptyset) + s \cdot \Big( \epsilon_\theta(z_t, c) - \epsilon_\theta(z_t, \emptyset) \Big) (trong đó s>1s > 1 là Hệ số hướng dẫn - Guidance Scale).
    • Tác dụng của CFG: Hệ số ss (thường chọn 7.0−8.57.0 - 8.5) sẽ khuếch đại độ lệch giữa việc có prompt và không có prompt, ép bức ảnh sinh ra phải bám sát câu lệnh mô tả, loại bỏ các chi tiết mơ hồ.

2.4. ControlNet: Kiểm Soát Cấu Trúc Không Gian Tuyệt Đối (Zhang et al., 2023)

Prompt văn bản chỉ mô tả được khái niệm chung, nhưng bất lực trong việc chỉ định vị trí chính xác (ví dụ: tư thế người mẫu đứng như thế nào, bố cục tòa nhà ra sao).

  • Kiến trúc ControlNet:
    • Khóa cứng (Freeze) toàn bộ trọng số của mạng U-Net gốc của Stable Diffusion để bảo toàn khả năng sinh ảnh đẹp.
    • Tạo một Bản sao có thể huấn luyện (Trainable Copy) của các khối mã hóa (Encoder Blocks).
    • Kết nối bản sao này với mạng gốc thông qua các tầng tích chập đặc biệt gọi là Zero Convolutions (Ma trận trọng số và bias được khởi tạo toàn bộ bằng 00).
    • →\rightarrow Cho phép nạp thêm các điều kiện không gian phức tạp (Đường viền Canny Edge, Dáng người OpenPose, Bản đồ độ sâu Depth Map) để tạo ra bức ảnh có bố cục chính xác 100%100\% theo ý muốn!
Control Input (OpenPose / Canny Edge)
          |
          v
[Trainable Copy of U-Net Blocks] ---> [Zero Convolution (Init=0)]
                                                      |
                                                      v (+)
[Frozen Stable Diffusion U-Net] ----------------------+-----> Output Image

3. Các Bảng Markdown So Sánh Chi Tiết

📊 Bảng 1: So Sánh Toàn Diện Các Họ Mô Hình Sinh (Generative Paradigms)

Tiêu chíVariational Autoencoder (VAE)Generative Adversarial Network (GAN)Diffusion Models (DDPM / LDM)Autoregressive Models (PixelCNN)
Độ ổn định khi huấn luyệnRất cao (Tối ưu hóa ELBO)Kém (Dễ bị Mode Collapse, Minimax không ổn định)Rất cao (Hàm mất mát MSE đơn giản, ổn định)Rất cao
Chất lượng hình ảnhKém (Ảnh mờ, mất chi tiết nét)Rất cao (Rất sắc nét)Xuất sắc nhất thế giới hiện nayTốt
Độ đa dạng của mẫu (Diversity)TốtKém (Thường bỏ qua các chế độ hiếm)Rất cao (Bao phủ trọn vẹn phân phối thực tế)Rất cao
Tốc độ sinh mẫu (Inference)Siêu tốc (1 bước duy nhất)Siêu tốc (1 bước duy nhất qua Generator)Chậm hơn (Cần 20−5020 - 50 bước khử nhiễu)Cực chậm (Từng pixel tuần tự O(N)O(N))
Ứng dụng tiêu biểuNén không gian tiềm ẩn, Khử nhiễuDeepfake thời gian thực, Chuyển đổi phong cáchMidjourney, Stable Diffusion, DALL-E 3, SoraSinh audio (WaveNet)

📊 Bảng 2: So Sánh Pixel-Space Diffusion vs. Latent-Space Diffusion

Tiêu chíPixel-Space Diffusion (DDPM gốc / Google Imagen)Latent-Space Diffusion (Stable Diffusion)
Không gian tính toánTrực tiếp trên ma trận điểm ảnh (H×W×3H \times W \times 3)Không gian vector tiềm ẩn nén (H/8×W/8×4H/8 \times W/8 \times 4)
Kích thước tensor xử lý512×512×3=786,432512 \times 512 \times 3 = 786,432 phần tử64×64×4=16,38464 \times 64 \times 4 = 16,384 phần tử (Giảm 98%98\%)
Yêu cầu phần cứng GPURất cao (Cần cụm A100 / TPU khổng lồ)Phổ thông (Chạy tốt trên GPU 8GB−12GB8\text{GB} - 12\text{GB} VRAM)
Tốc độ sinh 1 bức ảnhChậm (Vài chục giây đến vài phút)Rất nhanh (1−3 giaˆy1 - 3\text{ giây} với các Sampler hiện đại)
Bảo tồn chi tiết vi môCực tốt trên từng điểm ảnhPhụ thuộc vào chất lượng tái tạo của VAE Decoder

📊 Bảng 3: So Sánh Các Thuật Toán Lấy Mẫu Khử Nhiễu (Diffusion Schedulers / Samplers)

Thuật toán SamplerSố bước lấy mẫu cần thiếtBản chất toán họcĐặc điểm hiệu năng
DDPM (Gốc)1,000 steps1,000\text{ steps}Chuỗi Markov ngẫu nhiênQuá chậm, không thể ứng dụng thương mại
DDIM (Implicit)50−100 steps50 - 100\text{ steps}Quá trình phi Markov (Deterministic ODE)Nhanh hơn 10×10\times, cho phép đảo ngược ảnh về latent
Euler Ancestral (Euler a)20−30 steps20 - 30\text{ steps}Giải phương trình vi phân ngẫu nhiên (SDE)Ảnh biến đổi liên tục khi tăng số bước, phong cách nghệ thuật
DPM++ 2M Karras15−25 steps15 - 25\text{ steps}Phương trình vi phân bậc hai (Second-order ODE)Chuẩn mực tối ưu nhất cho Stable Diffusion (Nhanh & Nét)
Flow Matching (SD3 / Flux)4−10 steps4 - 10\text{ steps}Ánh xạ vận tốc đường thẳng (Optimal Transport)Thế hệ mới nhất (2024–2026), tốc độ và chi tiết vượt trội

4. Best Practices & Kỹ Thuật Điều Khiển Sinh Ảnh Thực Chiến (Pro-Tips)

💡 Bí Quyết Điều Chỉnh Tham Số CFG (Guidance Scale)

  • Nếu CFG<4.0\text{CFG} < 4.0: Bức ảnh có tính sáng tạo cao, màu sắc tự nhiên nhưng không bám sát mô tả trong prompt.
  • Nếu CFG∈[7.0,8.5]\text{CFG} \in [7.0, 8.5]: Điểm cân bằng lý tưởng nhất. Bức ảnh tuân thủ câu lệnh và giữ được chi tiết chân thực.
  • Nếu CFG>12.0\text{CFG} > 12.0: Hiện tượng Cháy ảnh (Oversaturation / Burn-in): Màu sắc bị gắt, tương phản quá đà, xuất hiện viền sắc nhọn giả tạo do vector bị đẩy đi quá xa khỏi phân phối tự nhiên.

💡 Bản Chất Của "Negative Prompt" Trong Classifier-Free Guidance

Trong các công cụ như Midjourney hay Stable Diffusion, người dùng thường nhập Negative Prompt (ví dụ: "ugly, deformed hands, blurry").

  • Cơ chế toán học: Thay vì sử dụng nhãn rỗng ∅\emptyset trong công thức CFG, ta thay thế bằng vector nhúng của Negative Prompt (cnegc_{\text{neg}}): ϵ~θ=ϵθ(zt,cneg)+s⋅(ϵθ(zt,cpos)−ϵθ(zt,cneg))\tilde{\epsilon}_\theta = \epsilon_\theta(z_t, c_{\text{neg}}) + s \cdot \Big( \epsilon_\theta(z_t, c_{\text{pos}}) - \epsilon_\theta(z_t, c_{\text{neg}}) \Big)
  • →\rightarrow Mô hình chủ động "đẩy" bức ảnh ra xa khỏi các đặc trưng được mô tả trong Negative Prompt!

5. Góc Ôn Luyện Phỏng Vấn (Interview Corner)

❓ Câu hỏi 1: Giải thích nguyên lý toán học của quá trình Thuận (Forward Process) trong mô hình DDPM. Làm thế nào chúng ta có thể lấy mẫu trực tiếp một bức ảnh bị nhiễu tại bước thời gian bất kỳ (xtx_t) từ ảnh gốc (x0x_0) trong 1 phép tính duy nhất mà không cần chạy đệ quy qua từng bước?

  • Gợi ý trả lời:
    • Định nghĩa bước chuyển tiếp:
      • Tại mỗi bước tt, ảnh bị thêm nhiễu Gauss độc lập: xt=αtxt−1+1−αtϵt−1x_t = \sqrt{\alpha_t} x_{t-1} + \sqrt{1 - \alpha_t} \epsilon_{t-1} với ϵt−1∼N(0,I)\epsilon_{t-1} \sim \mathcal{N}(0, \mathbf{I}) và αt=1−βt\alpha_t = 1 - \beta_t.
    • Chứng minh công thức nhảy cóc (Closed-form derivation):
      • Thay thế đệ quy xt−1x_{t-1} vào xtx_t: xt=αt(αt−1xt−2+1−αt−1ϵt−2)+1−αtϵt−1x_t = \sqrt{\alpha_t} \left( \sqrt{\alpha_{t-1}} x_{t-2} + \sqrt{1 - \alpha_{t-1}} \epsilon_{t-2} \right) + \sqrt{1 - \alpha_t} \epsilon_{t-1} xt=αtαt−1xt−2+αt(1−αt−1)ϵt−2+1−αtϵt−1x_t = \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{\alpha_t(1 - \alpha_{t-1})} \epsilon_{t-2} + \sqrt{1 - \alpha_t} \epsilon_{t-1}
      • Do tính chất cộng của hai biến ngẫu nhiên Gauss độc lập N(0,σ12I)+N(0,σ22I)∼N(0,(σ12+σ22)I)\mathcal{N}(0, \sigma_1^2 \mathbf{I}) + \mathcal{N}(0, \sigma_2^2 \mathbf{I}) \sim \mathcal{N}(0, (\sigma_1^2 + \sigma_2^2)\mathbf{I}), phương sai tổng hợp là: αt(1−αt−1)+(1−αt)=1−αtαt−1\alpha_t(1 - \alpha_{t-1}) + (1 - \alpha_t) = 1 - \alpha_t \alpha_{t-1}
      • Do đó: xt=αtαt−1xt−2+1−αtαt−1ϵ~x_t = \sqrt{\alpha_t \alpha_{t-1}} x_{t-2} + \sqrt{1 - \alpha_t \alpha_{t-1}} \tilde{\epsilon}.
      • Tiếp tục khai triển đệ quy ngược về x0x_0 và đặt αˉt=∏s=1tαs\bar{\alpha}_t = \prod_{s=1}^t \alpha_s, ta thu được công thức tổng quát: xt=αˉtx0+1−αˉtϵvới ϵ∼N(0,I)x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon \quad \text{với } \epsilon \sim \mathcal{N}(0, \mathbf{I})
    • Ý nghĩa trong huấn luyện: Cho phép thuật toán chọn ngẫu nhiên một mốc thời gian t∈[1,T]t \in [1, T] bất kỳ, tính toán ngay bức ảnh bị nhiễu xtx_t trong O(1)O(1) và đưa vào mạng U-Net để huấn luyện mà hoàn toàn không tốn thời gian chạy đệ quy tt bước.

❓ Câu hỏi 2: So sánh Latent Diffusion Models (LDM / Stable Diffusion) và Pixel-Space Diffusion (như Google Imagen hay DDPM gốc). Tại sao kiến trúc Latent Diffusion lại được coi là bước ngoặt quyết định đưa Generative AI hình ảnh ra ứng dụng thương mại rộng rãi?

  • Gợi ý trả lời:
    • Sự khác biệt về không gian biểu diễn:
      • Pixel-Space Diffusion: Quá trình thêm và khử nhiễu diễn ra trực tiếp trên các điểm ảnh RGB (512×512×3512 \times 512 \times 3). Hầu hết các chi tiết ở cấp độ pixel tần số cao (như các nhiễu hạt siêu nhỏ không nhìn thấy được bằng mắt thường) đều bị ép mô hình phải học khử nhiễu →\rightarrow Gây lãng phí tài nguyên tính toán khổng lồ vào các chi tiết không mang giá trị ngữ nghĩa.
      • Latent Diffusion: Tách rời bài toán làm 2 phần: Dùng VAE để nén dữ liệu từ không gian điểm ảnh vào không gian tiềm ẩn ngữ nghĩa (Latent Space 64×64×464 \times 64 \times 4). Mạng U-Net chỉ tập trung khử nhiễu trên các đặc trưng cấu trúc cốt lõi của bức ảnh.
    • Lý do là bước ngoặt thương mại hóa:
      1. Giảm 98%98\% dung lượng tính toán: Kích thước tensor giảm từ 786,432786,432 xuống 16,38416,384 phần tử.
      2. Dân chủ hóa phần cứng (Democratization of Hardware): Cho phép các nhà nghiên cứu, startup và người dùng cá nhân có thể tự fine-tune (qua LoRA, DreamBooth) và chạy suy luận sinh ảnh trong 1−31 - 3 giây trên các GPU phổ thông dành cho game thủ (8GB−12GB8\text{GB} - 12\text{GB} VRAM), thay vì bắt buộc phải thuê các cụm siêu máy tính A100 đắt đỏ.

❓ Câu hỏi 3: Classifier-Free Guidance (CFG) hoạt động như thế nào? Tại sao phương pháp này lại vượt trội hơn hẳn so với Classifier Guidance truyền thống trong việc điều khiển hình ảnh sinh ra bám sát câu lệnh Prompt?

  • Gợi ý trả lời:
    • Hạn chế của Classifier Guidance truyền thống (Dhariwal & Nichol):
      • Đòi hỏi phải huấn luyện riêng một mạng nơ-ron phân loại (Classifier) trên các hình ảnh bị nhiễu xtx_t.
      • Khi lấy mẫu khử nhiễu, thuật toán dùng gradient của bộ phân loại này ∇xtlog⁡P(c∣xt)\nabla_{x_t} \log P(c \mid x_t) để uốn nắn hướng đi của U-Net.
      • Nhược điểm: Phức tạp, tốn thêm bộ nhớ GPU, và quan trọng nhất là các kỹ sư không thể huấn luyện một bộ phân loại cho mọi mô tả ngôn ngữ tự nhiên tự do không giới hạn của con người.
    • Đột phá của Classifier-Free Guidance (CFG):
      • Loại bỏ hoàn toàn mạng phân loại độc lập.
      • Trong quá trình huấn luyện U-Net, hệ thống ngẫu nhiên bỏ rơi điều kiện prompt (thay bằng prompt rỗng ∅\emptyset) với xác suất 10%−20%10\% - 20\% để mô hình học được cả hai hành vi: Sinh ảnh tự do (Unconditional) VÀ Sinh ảnh có điều kiện (Conditional).
      • Khi suy luận, thuật toán lấy vector hiệu số giữa hai hướng đi và nhân với hệ số khuếch đại ss: ϵ~=ϵuncond+s⋅(ϵcond−ϵuncond)\tilde{\epsilon} = \epsilon_{\text{uncond}} + s \cdot (\epsilon_{\text{cond}} - \epsilon_{\text{uncond}})
      • Ưu điểm vượt trội: Tận dụng trực tiếp năng lực nội tại của U-Net, cực kỳ đơn giản, hoạt động hoàn hảo với bất kỳ văn bản tự do nào từ CLIP Text Encoder và cho phép người dùng tự do điều chỉnh độ bám sát prompt thông qua thanh trượt Guidance Scale ss.

6. Tóm Tắt Ghi Nhớ Nhanh (Key Takeaways)

  1. Diffusion Models (DDPM) vượt trội hơn GANs nhờ tính ổn định huấn luyện tuyệt đối (không Mode Collapse) và hàm mất mát đơn giản LMSE(ϵ,ϵθ)\mathcal{L}_{\text{MSE}}(\epsilon, \epsilon_\theta).
  2. Công thức Closed-form cho phép nhảy cóc tới bước tt bất kỳ trong O(1)O(1): xt=αˉtx0+1−αˉtϵx_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon.
  3. Latent Diffusion (Stable Diffusion) nén ảnh bằng VAE (64×64\times reduction), đưa quá trình khử nhiễu vào không gian tiềm ẩn 64×64×464 \times 64 \times 4, giải quyết triệt để rào cản phần cứng GPU.
  4. Classifier-Free Guidance (CFG) khuếch đại hướng đi của vector văn bản với hệ số s∈[7.0,8.5]s \in [7.0, 8.5] để ép bức ảnh tuân thủ nghiêm ngặt theo Prompt.
  5. ControlNet sử dụng Zero Convolutions trên bản sao trainable của U-Net để kiểm soát chính xác 100%100\% bố cục không gian (Dáng người, Đường nét, Độ sâu).
0Claps