Stanford CS236 · Deep Generative Models · Fall 2023
CS236 複習總目錄
每看完一堂課錄影,就對照這裡的複習筆記。每份筆記包含課堂重點與推導、時間戳連結、背景補充、一個可以在瀏覽器裡訓練的 toy demo,以及自我測驗。
模型家族地圖
likelihood 可直接計算
Autoregressive · Normalizing Flow
用 chain rule 或可逆變換精確寫出 \(p(x)\),直接做 maximum likelihood。第 3、4、7、8 講。
likelihood 有下界
Latent variable · VAE
引入潛在變數 z,用 ELBO 近似 likelihood。第 5、6、17 講。
沒有 likelihood
Implicit · GAN
只定義取樣過程,用 two-sample test 和對抗訓練。第 9、10 講。
未正規化 / 梯度
Energy-based · Score · Diffusion
學能量或 \(\nabla_x \log p(x)\),再用 Langevin 或去噪逐步取樣。第 11–14、16、18 講。
18 堂課
- 01Introduction 導論生成模型 = 機率分佈;四種用法;維度災難;課程地圖。Demo:GMM 資料模擬器。已完成
- 02Background:表示機率分佈參數爆炸、chain rule、條件獨立、Bayes network、Naive Bayes vs. logistic regression、神經條件分佈、Z→X 潛在變數。Demo:手寫數字模型階梯、學生網路、NB vs. LR 學習曲線。已完成
- 03Autoregressive ModelsFVSBN、NADE 權重共享、softmax / 高斯混合輸出、autoencoder 與 MADE、RNN;投影片後半的 attention、PixelCNN、WaveNet。Demo:FVSBN vs. NADE 逐像素生成與補完、MADE 遮罩、char-RNN 名字。已完成
- 04Maximum Likelihood Learning前半補完第 3 講(attention、PixelCNN、PixelDefend);KL divergence 與壓縮、forward vs. reverse KL、MLE、Monte Carlo、SGD、bias-variance。Demo:KL 方向、Monte Carlo 變異數、硬幣 MLE、直方圖 overfitting。已完成
- 05Latent Variable Models潛在變數的動機、GMM、VAE = 無限高斯混合、邊際機率難算、importance sampling、Jensen 與 ELBO、EM。Demo:EM 的 ELBO 階梯、q 與後驗、補上半張數字的精確 ELBO。已完成
- 06Variational AutoencoderVariational inference 與一族下界、SVI、REINFORCE vs. reparameterization、amortized inference、ELBO = 重建 − KL、Alice 與 Bob。Demo:梯度估計變異數、瀏覽器內訓練 2D 潛在空間 VAE(含 β)、amortization gap。已完成
- 07Normalizing Flows (1)前半收尾 VAE 的 autoencoder 觀點(posterior collapse 等問答);flow 動機、一維與多維變數變換、行列式幾何、Jacobian、planar flow、三角 Jacobian。Demo:變數變換 vs. 直方圖、正方形變平行四邊形、planar flow 擬合目標密度。已完成
- 08Normalizing Flows (2)開頭補完第 7 講投影片 13–19;NICE 加法 coupling、RealNVP 仿射 coupling、MAF / IAF(同一網路反過來用)、Parallel WaveNet 蒸餾、MintNet、Gaussianization flow。Demo:瀏覽器內訓練 RealNVP vs. NICE、MAF / IAF 依序步數、一維與二維 Gaussianization。已完成
- 09GANs (1)Likelihood 與樣本品質脫鉤、two-sample test、discriminator 與最佳 D*、minimax 目標 = 2·JSD − log 4、訓練演算法、不穩定與 mode collapse。Demo:99% 雜訊模型的 bits/dim、分類器 two-sample test(高斯 vs Laplace)、一維 GAN、8 個高斯的 mode collapse。已完成
- 10GANs (2)f-divergence、Fenchel conjugate、f-GAN 變分下界、支撐集不重疊與 Wasserstein 距離、WGAN、BiGAN;未講的 CycleGAN / AlignFlow / StarGAN 投影片整理。Demo:支撐線、f-GAN 下界 vs 真值、KL/JS/W 隨位移、投影片 15 的梯度消失、GAN vs WGAN 在 8 個高斯上。已完成
- 11Energy Based Models (1)歸一化為何難、已知體積的積木、EBM 與 partition function、不需要 Z 的應用(Ising 去雜訊、product of experts)、RBM / DBM、contrastive divergence 推導、Metropolis MCMC;Langevin 預覽。Demo:Ising ICM、乘積 vs 混合、算 Z 的指數成本、2D EBM 的 CD 訓練、MCMC 步長與混合。已完成
- 12Energy Based Models (2)細緻平衡、Langevin / MALA、score function、Fisher divergence 與 score matching 的分部積分推導、Hessian trace 瓶頸、NCE(可學的 Z)、NCE vs GAN、flow contrastive estimation;未講的對抗式訓練整理。Demo:score 場與 Langevin 偏差、Hutchinson trace 估計、同一個 EBM 用 SM / NCE / MLE 訓練(SM 學不到分開的 mode 權重)。已完成
- 13Score Based Models直接建模 score 向量場、score matching 的 O(d) 瓶頸、denoising score matching 推導與 σ 的取捨、Tweedie 公式、sliced score matching、Langevin 取樣、三個陷阱(流形、低密度區、mode 權重)。Demo:DSM 變異數 vs σ、Tweedie 去雜訊、DSM 訓練 score 網路 + Langevin。已完成
- 14Score Based Models (2):NCSN 與 Score SDE加高斯雜訊解決三個陷阱與其取捨、多尺度雜訊、annealed Langevin、noise conditional score network、σ 的選法與 λ(σ)=σ²(預測雜訊)、無限多尺度 → 前向 / 反向 SDE、Euler–Maruyama、predictor–corrector、probability flow ODE 與 likelihood;未講的 DDIM、條件生成整理。Demo:不同 σ 的密度與 score、訓練 NCSN 比較一般 / annealed Langevin、一維前向 SDE / 反向 SDE / ODE 與精確 likelihood。已完成
- 15Evaluation of Generative Models依任務選指標、likelihood = 壓縮(bits/dim、perplexity)、likelihood 與樣本品質的獨立性、KDE 與 bandwidth、likelihood weighting 與 AIS、HYPE 人工評估、Inception Score / FID / KID、precision / recall、分群 / 重建 / disentanglement、prompting 與 HELM。Demo:KDE 與交叉驗證、高維 KDE 失靈、LW vs AIS、同一組樣本的各種指標、分群分數。已完成
- 16Score Based Diffusion Models前向加雜訊 = 固定編碼器、q(x_t|x₀) 閉式、反向 = 可學解碼器、DDPM 是階層式 VAE、ELBO 拆成每步 KL、ε 參數化把 ELBO 化成 DSM、L_simple vs ELBO、DDPM = 反向 VP SDE 的 predictor、ODE = flow。Demo:前向過程與 schedule、ELBO 隨 T 收緊(解碼器變異數的影響)、瀏覽器內訓練 2D DDPM。(投影片 32–47 在第 17 講影片中講完)已完成
- 17Diffusion(續)+ Discrete Latent Variable Models影片:ODE vs SDE 取樣與誤差累積、DDIM(η、FID 表)、平行求解、progressive distillation、consistency model、latent diffusion / Stable Diffusion、Bayes 法則與 classifier guidance、classifier-free guidance。官方投影片(未講授):REINFORCE、control variates、NVIL、Gumbel-softmax。Demo:取樣器實驗室、CFG 的 w、梯度估計量的偏差與變異。已完成
- 18Diffusion Models for Discrete Data客座 Aaron Lou(SEDD):為什麼 flow / GAN / 連續嵌入不適合離散資料、autoregressive 的優缺點、concrete score(有限差分)、score entropy 與 denoising score entropy、CTMC 擴散(uniform / absorbing)、反向速率只需比值、τ-leaping、生成品質與任意位置填空、perplexity 上界;附整門課地圖。Demo:CTMC 與 score entropy、瀏覽器內訓練 masked SEDD(步數取捨、填空)。已完成
補充課程
第 7–18 講反覆用到、但課堂上一筆帶過的數學:矩陣與散度、微分方程、MCMC、SDE、Fokker–Planck。只假設學過單變數微積分,每個主題都有手算例子、完整的推導、圖解和可以操作的 demo。建議依 A → G 的順序讀,或在某一講看不懂推導時回來查。
- A數學工具箱從單變數微積分出發:Taylor 展開與誤差階數、梯度與 score、矩陣是變換、行列式與特徵值(手算)、Jacobian、散度與 trace 的推導(和 KL 散度的區別)、Hessian 與四個量的總表、變異數相加與 √n、摺積、高斯運算與配方、取條件與去雜訊(Tweedie)。服務第 7、12–16 講。已完成
- B微分方程入門不需要學過微分方程:驗算解、分離變數、斜率場與平衡點、向量場與相圖、解唯一所以軌跡不交叉(flow 可逆)、特徵向量解與為什麼特徵值決定相圖、矩陣指數、Euler / Heun / RK4 的誤差階數與 NFE、stiffness、積分因子與指數積分器(DDIM 為什麼能用很少步)。服務第 14、16–18 講。已完成
- C密度的流動:連續方程密度與兩種時間導數、變數變換 = 質量守恆、通量與連續方程(盒子帳本)、沿軌跡 d log p/dt = −∇·v、用 ODE 算 likelihood(CNF)、從粒子左右跳推到熱方程,再一行一行改寫成 probability flow ODE 的速度場。服務第 7–8、14、16–17 講。已完成
- DMarkov 鏈與 MCMC條件機率與全機率、轉移矩陣與穩態分佈(手算)、收斂速度與第二大特徵值、detailed balance、從 detailed balance 推導 Metropolis–Hastings(一步一步跑的 demo)、burn-in 與有效樣本數、Gibbs sampling、多峰與溫度。服務第 11–13 講。已完成
- E布朗運動與 SDE隨機漫步到布朗運動、√dt 與 (dW)² = dt、SDE 的意義與 Euler–Maruyama、OU 過程的平均與變異數、strong / weak 誤差、從 W² 推導 Itô 公式、VE 與 VP 前向 SDE,以及 DDPM 是 VP 的離散化。服務第 14、16–17 講。已完成
- FFokker–Planck 與 LangevinFokker–Planck 方程的完整推導、搬運與抹平兩個項、從零通量推出 Langevin、ULA 偏差與 MALA、annealed Langevin、反向 SDE 與 probability flow ODE 的推導(高斯例子驗證、反向 SDE = ODE + Langevin)。服務第 12–17 講。已完成
- G連續時間 Markov 鏈速率和機率的差別、速率矩陣、指數停留時間與 Gillespie、master equation 與 e^{tQ}(兩狀態手解)、uniform 與 absorbing 雜訊、用貝氏定理推導反向速率(concrete score)、τ-leaping 為什麼會生出不存在的組合。服務第 18 講。已完成
同一系列的其他資源
- →Deep Generative Models Learning Map三個資源的總入口,有主題對照表。三者沒有先後之分。
- →MIT 6.S184 Flow Matching and Diffusion Models6 份複習講義:flow matching、score、classifier-free guidance、latent 與 DiT、離散 flow matching。
- →The Principles of Diffusion Models36 頁中文轉述:三種觀點推導 diffusion 再統一,接著最佳傳輸、guidance、solver、distillation 和 consistency。