本書詳盡地探討了變分自編碼器、生成對抗網絡、標準化流模型和擴散模型這四大主流生成式視覺模型。本書不僅深入解析了這些模型背后的復雜數(shù)學原理、訓練及采樣算法,還提供了詳細的代碼實現(xiàn)指南。秉承"理論與實踐并重”的理念,本書進一步探索了生成式視覺模型在不同場景中的應用實例,并精選了4個具有代表性的實戰(zhàn)案例進行深度剖析。這些案例緊密貼合實際業(yè)務需求與面臨的技術挑戰(zhàn),旨在引導讀者掌握利用生成式視覺模型解決現(xiàn)實問題的方法論,同時通過動手實踐增強其編程技能與技術優(yōu)化能力。 本書適合具有大學本科數(shù)學基礎(包括微積分、線性代數(shù)、概率統(tǒng)計)及機器學習、深度學習等知識,并熟悉Python及PyTorch編程的本科生、研究生,或者相關領域的研究人員閱讀與學習。
丁鑫,博士,副教授,國家海外引進人才計劃(青年項目)入選者,主要從事生成式人工智能的研究工作;主持國家自然科學基金青年項目1項;以第一作者身份先后在IEEE TPAMI、IEEE TSP、ESWA、ICLR、AAAI等高水平國際期刊或會議上發(fā)表論文10余篇;擔任AAAI、IJCAI、IEEE SPL等國際知名會議和期刊的審稿人與程序委員會成員。
目錄
第1章 生成式人工智能概述 1
1.1 生成式人工智能:引領生產力的飛躍 1
1.1.1 ChatGPT 1
1.1.2 Sora 2
1.1.3 應用前景與意義 2
1.2 生成式人工智能的發(fā)展歷程 3
1.2.1 從統(tǒng)計學習到深度學習前夕 3
1.2.2 深度學習時代 4
1.2.3 大模型時代 5
1.3 生成式人工智能的發(fā)展方向 6
1.4 生成式人工智能的倫理問題 7
1.5 習題 9
1.6 參考文獻 9
第2章 生成式建模與評價指標 10
2.1 根本任務 10
2.1.1 分布估計 11
2.1.2 樣本生成 12
2.1.3 針對數(shù)字圖像的生成式建模 12
2.2 典型生成模型 13
2.3 評價指標 15
2.3.1 負對數(shù)似然 15
2.3.2 基于距離或散度的評價指標 16
2.3.3 精確率和召回率 21
2.3.4 統(tǒng)計檢驗 22
2.3.5 用生成樣本訓練分類器 22
2.3.6 過擬合檢測 23
2.4 重要意義 23
2.5 習題 24
2.6 參考文獻 24
第3章 VAE 25
3.1 預備知識 25
3.1.1 AE 25
3.1.2 KL散度 26
3.1.3 MLE 27
3.1.4 條件編碼 27
3.1.5 馬爾可夫鏈 29
3.1.6 重參數(shù)化技巧 30
3.2 數(shù)學符號 31
3.3 總體思路 31
3.4 理論分析 33
3.4.1 證據下界 33
3.4.2 目標函數(shù) 34
3.5 模型結構 36
3.5.1 推斷網絡 36
3.5.2 生成網絡 37
3.5.3 VAE與AE的對比 37
3.6 訓練算法 38
3.7 采樣算法 39
3.7.1 后驗采樣 39
3.7.2 先驗采樣 40
3.8 變體模型 41
3.8.1 CVAE 41
3.8.2 Beta-VAE 42
3.8.3 MHVAE 42
3.8.4 VQ-VAE 43
3.9 代碼實踐:VAE 44
3.9.1 數(shù)據載入與實驗設置 45
3.9.2 推斷網絡和生成網絡 46
3.9.3 模型訓練 49
3.9.4 采樣與可視化 50
3.10 習題 51
3.11 參考文獻 52
第4章 GAN 53
4.1 預備知識 53
4.1.1 JS散度 53
4.1.2 Wasserstein距離 54
4.1.3 Lipschitz連續(xù)函數(shù) 55
4.1.4 MMD 55
4.1.5 拒絕采樣 56
4.2 原始GAN 57
4.2.1 生成器與判別器 57
4.2.2 損失函數(shù)與訓練算法 58
4.2.3 如何理解生成器的本質 60
4.2.4 理論最優(yōu)判別器 60
4.2.5 為什么GAN是生成模型 61
4.2.6 梯度消失問題 62
4.2.7 模式坍縮問題 63
4.3 CGAN 64
4.3.1 重要的生成式建模范式 64
4.3.2 模型結構 65
4.3.3 損失函數(shù)與訓練算法 66
4.3.4 模型分析 67
4.4 變體模型 68
4.4.1 損失函數(shù) 68
4.4.2 網絡架構 73
4.4.3 正則化 81
4.4.4 條件輸入方法 84
4.4.5 一維連續(xù)條件 87
4.4.6 隱變量解耦 89
4.4.7 數(shù)據增強 91
4.4.8 二次采樣 93
4.4.9 大模型技術 94
4.4.10 典型應用 95
4.5 代碼實踐:DCGAN 99
4.5.1 實驗設置 99
4.5.2 生成器與判別器 100
4.5.3 模型訓練 102
4.5.4 采樣與可視化 105
4.5.5 性能比較 106
4.6 習題 108
4.7 參考文獻 108
第5章 NF模型 111
5.1 NF模型基礎 111
5.1.1 變量替換定理 111
5.1.2 雅可比行列式的性質與計算 112
5.1.3 多步變換后的概率分布 114
5.2 NF模型的訓練和采樣 115
5.2.1 NF模型的訓練 115
5.2.2 NF模型的采樣 116
5.2.3 NF模型的實現(xiàn) 116
5.3 如何構造一個NF模型 118
5.3.1 仿射流 118
5.3.2 平面流和徑向流 120
5.3.3 耦合流 122
5.3.4 自回歸流 125
5.3.5 可逆殘差流 128
5.4 連續(xù)時間下的NF模型 132
5.5 代碼實踐:RealNVP 135
5.5.1 實驗設置 135
5.5.2 NF模型的構建 135
5.5.3 訓練過程 138
5.5.4 性能比較 139
5.6 習題 139
5.7 參考文獻 140
第6章 DM 142
6.1 預備知識 142
6.1.1 Stein’s分數(shù)函數(shù) 142
6.1.2 Tweedie’s公式 143
6.1.3 隨機微分方程 143
6.2 VDM 144
6.2.1 從VAE到VDM 144
6.2.2 變種損失函數(shù) 158
6.2.3 方差表 163
6.2.4 經典模型:DDPM 166
6.2.5 跨步采樣:DDIM 168
6.2.6 隱擴散模型:LDM 171
6.3 SGM 172
6.3.1 SGLD 172
6.3.2 SBM與分數(shù)匹配 172
6.3.3 樸素SGM及其問題 173
6.3.4 帶有多尺度噪聲擾動的SGM 174
6.3.5 基于隨機微分方程的SGM 175
6.4 條件擴散模型 180
6.4.1 分類器指導 180
6.4.2 無分類器指導 181
6.5 代碼實踐:DDPM 182
6.5.1 實驗設置 182
6.5.2 網絡定義 183
6.5.3 擴散過程 188
6.5.4 訓練過程 193
6.5.5 性能比較 194
6.6 習題 195
6.7 參考文獻 196
第7章 生成模型應用實戰(zhàn) 198
7.1 典型應用場景 198
7.1.1 可控圖像生成 198
7.1.2 圖像翻譯 199
7.1.3 圖像超分辨率 199
7.1.4 圖像修復 200
7.1.5 圖像分割 201
7.1.6 圖像編輯 201
7.2 實戰(zhàn)案例1:圖像風格遷移 202
7.2.1 案例介紹 202
7.2.2 實驗效果 203
7.3 實戰(zhàn)案例2:醫(yī)療影像的模態(tài)變換 204
7.3.1 案例介紹 204
7.3.2 實驗效果 204
7.4 實戰(zhàn)案例3:遙感圖像的超分辨率重建 205
7.4.1 案例介紹 205
7.4.2 實驗效果 206
7.5 實戰(zhàn)案例4:Stable Diffusion文生圖 207
7.5.1 Stable Diffusion簡介 207
7.5.2 本地部署 207
7.6 參考文獻 209