Diffusion AI繪圖模型構造與訓練實戰
李福林
買這商品的人也買了...
-
$580$522 -
$780$616 -
$680$612 -
$599$509 -
$602$566 -
$1,000$660 -
$880$695 -
$880$695 -
$352$331 -
$650$507 -
$479$455 -
$780$616 -
$403Llama 大模型實踐指南
-
$720$569 -
$680$537 -
$594$564 -
$680$537 -
$774$735 -
$520$406 -
$607多模態大模型:算法、應用與微調
-
$650$507 -
$399$315 -
$650$514 -
$454Stable Diffusion-ComfyUI AI 繪畫工作流解析
-
$454大模型定製開發--行業應用與解決方案
相關主題
商品描述
本書是對DiffusionAI繪圖模型的綜合性講解書籍,書中包括最基礎的組件的用例演示,也包括具體的項目實戰,以及Diffusion模型的底層設計思路和實現原理的介紹。通過本書的學習,讀者可以快速掌握Diffusion模型的使用方法,掌握AI繪圖模型的訓練、測試過程,並能研發屬於自己的AI繪圖模型。 本書共19章,分為快速上手篇(第1~2章),概述了Diffusion模型的發展歷史,介紹了開發環境的部署方法,以及Diffusion模型的快速上手演示。以文生圖的Diffusion模型的訓練方法篇(第3~7章),通過5個實戰任務演示使用高層API的方法快速訓練Diffusion模型。圖像生成模型的歷史發展篇(第8~12章),演示了前Diffusion時代的幾個代表性的圖像生成模型。以圖生圖的Diffusion模型的訓練方法篇(第13~15章),通過3個實戰項目演示了以圖生圖的Diffusion模型的訓練方法。以圖生圖模型的歷史發展篇(第16~18章),演示了前Diffusion時代的幾個以圖生圖模型。完全手動構造Diffusion模型篇(第19章),演示了從零開始的Diffusion模型的搭建、訓練、測試方法。 本書將使用最簡單淺顯的語言,帶領讀者快速地瞭解Diffusion模型的訓練、測試方法。通過本書中實戰項目的學習,讀者可以掌握一般的AI繪圖模型的研發流程。通過本書中Diffusion模型底層原理的學習,能夠讓讀者知其然也知其所以然,做到融會貫通。
目錄大綱
目錄
第1章介紹Diffusion模型的發展歷程,以及本書中相關任務的訓練方法。
第2章介紹開發環境的配置,並且快速上手Diffusion模型的使用。
第3章介紹不定圖像的生成任務。
第4章介紹文本訓練方法。
第5章介紹Dream Booth訓練方法。
第6章介紹圖文結合的訓練方法。
第7章介紹使用LoRA技巧加速訓練。
第8章介紹AE模型。
第9章介紹VAE模型。
第10章介紹DCGAN模型。
第11章介紹WGANGP模型。
第12章手動構造一個沒有文本輸入的Diffusion模型。
第13章介紹ControlNet組件。
第14章介紹Instruct Pix2Pix訓練方法。
第15章介紹正負樣本混合訓練方法。
第16章介紹Pix2Pix模型。
第17章介紹CycleGAN模型。
第18章介紹風格遷移任務。
第19章手動構建一個完整的Diffusion模型。
閱讀建議
本書是一本對Diffusion模型進行綜合性講解的書籍,既有基礎知識,也有實戰示例,也包括底層原理的講解。
本書盡量以簡潔的語言書寫,每個章節之間的內容盡量獨立,使讀者可以跳躍閱讀而沒有障礙。
作為一本實戰型書籍,讀者要掌握本書的知識,務必要結合代碼調試,本書的代碼也盡量以簡潔的形式書寫,使讀者閱讀時不感吃力。每個代碼塊即是一個測試單元,讀者可以對每個程序的每個代碼塊按從上到下的順序進行測試,從一個個小知識點聚沙成塔,融會貫通。
資源下載提示
素材(源碼)等資源: 掃描封底的文泉雲盤防盜碼,再掃描目錄上方的二維碼下載。
致謝
感謝HuggingFace社區無私的奉獻,因為有了你們的工作成果,本書才得以以簡潔、標準化的API面世。
在書寫本書的過程中,我竭盡所能為讀者呈現最好的內容,錯漏難免會存在,敬請讀者批評指正。
李福林2023年11月
本書源碼
快速上手篇
第1章Diffusion模型3
1.1Diffusion模型介紹3
1.1.1Diffusion模型的演化之路4
1.1.2圖像以外的應用6
1.1.3其他的繪圖模型6
1.2微調預訓練模型6
1.2.1預訓練模型6
1.2.2微調模型以適應新數據7
1.2.3微調相比重新訓練的優勢7
1.3小結8
第2章快速上手9
2.1部署開發環境9
2.2HuggingFace簡介和快速上手11
2.2.1快速上手11
2.2.2加速技巧12
2.3Diffusion模型相關組件介紹13
2.3.1tokenizer13
2.3.2scheduler15
2.3.3Encoder16
2.3.4VAE17
2.3.5UNet18
2.4小結20
訓練方法篇
第3章不定圖像的生成23
3.1任務簡介23
3.2數據集介紹23
3.3測試部分24
3.3.1測試函數24
3.3.2未訓練模型的測試結果25
3.3.3訓練後模型的測試結果27
3.4訓練部分28
3.4.1全局常量28
3.4.2定義數據集28
3.4.3定義模型30
3.4.4初始化工具類31
3.4.5計算loss32
3.4.6訓練34
3.5小結35
第4章文本訓練36
4.1任務簡介36
4.2數據集介紹36
4.3測試部分37
4.3.1測試函數37
4.3.2未訓練模型的測試結果38
4.3.3訓練後模型的測試結果39
4.4訓練部分39
4.4.1全局常量39
4.4.2定義數據集39
4.4.3定義模型44
4.4.4初始化工具類47
4.4.5計算loss47
4.4.6訓練50
4.5小結51
第5章Dream Booth53
5.1任務簡介53
5.2數據集介紹53
5.3測試部分54
5.3.1測試函數54
5.3.2未訓練模型的測試結果55
5.3.3訓練後模型的測試結果55
5.4訓練部分56
5.4.1全局常量56
5.4.2定義數據集56
5.4.3定義模型60
5.4.4初始化工具類61
5.4.5計算loss61
5.4.6訓練62
5.5小結64
第6章圖文結合的訓練65
6.1任務簡介65
6.2數據集介紹65
6.3測試部分66
6.3.1測試函數67
6.3.2未訓練模型的測試結果68
6.3.3訓練後模型的測試結果68
6.4訓練部分69
6.4.1全局常量69
6.4.2定義數據集69
6.4.3定義模型73
6.4.4初始化工具類73
6.4.5計算loss74
6.4.6訓練75
6.5小結77
第7章LoRA Dream Booth78
7.1任務簡介78
7.2數據集介紹79
7.3測試部分79
7.3.1測試函數79
7.3.2未訓練模型的測試結果80
7.3.3訓練後模型的測試結果80
7.4訓練部分81
7.4.1全局常量81
7.4.2定義數據集81
7.4.3定義模型84
7.4.4初始化工具類87
7.4.5計算loss87
7.4.6訓練88
7.5小結89
圖像生成模型的歷史發展篇
第8章AE模型93
8.1模型原理介紹93
8.2鮮花數據集介紹94
8.3定義數據集95
8.4定義神經網絡模型98
8.4.1定義Block工具層98
8.4.2定義Encoder和Decoder100
8.5訓練101
8.5.1訓練前的準備工作101
8.5.2執行訓練102
8.6測試104
8.6.1測試本地訓練的模型104
8.6.2使用訓練好的模型測試105
8.7小結105
第9章VAE模型106
9.1AE模型的缺陷106
9.2定義神經網絡模型107
9.3訓練108
9.3.1訓練前的準備工作108
9.3.2執行訓練109
9.4測試111
9.4.1測試本地訓練的模型111
9.4.2使用訓練好的模型測試111
9.5小結113
第10章DCGAN模型114
10.1模型原理介紹114
10.2定義神經網絡模型115
10.2.1定義CLS模型115
10.2.2定義GEN模型116
10.3訓練117
10.3.1訓練前的準備工作117
10.3.2訓練CLS模型的函數118
10.3.3訓練GEN模型的函數119
10.3.4執行訓練120
10.4測試122
10.4.1測試本地訓練的模型122
10.4.2使用訓練好的模型測試122
10.5小結123
第11章WGANGP模型124
11.1模型原理介紹124
11.2定義神經網絡模型125
11.3訓練126
11.3.1訓練前的準備工作126
11.3.2訓練CLS模型的函數127
11.3.3執行訓練128
11.4測試130
11.4.1測試本地訓練的模型130
11.4.2使用訓練好的模型測試130
11.5小結131
第12章Diffusion模型132
12.1模型原理介紹132
12.2定義神經網絡模型134
12.3定義圖像生成函數142
12.4訓練144
12.5測試146
12.6小結147
訓練方法篇
第13章ControlNet以圖生圖151
13.1任務簡介151
13.2數據集介紹153
13.3測試部分154
13.3.1測試函數155
13.3.2未訓練模型的測試結果156
13.3.3訓練後模型的測試結果158
13.4訓練部分159
13.4.1全局常量159
13.4.2定義數據集159
13.4.3定義ControlNet模型162
13.4.4定義模型168
13.4.5初始化工具類169
13.4.6計算loss169
13.4.7訓練171
13.5小結172
第14章Instruct Pix2Pix圖像調整173
14.1任務簡介173
14.2數據集介紹174
14.3測試部分175
14.3.1加載數據集175
14.3.2測試函數176
14.4訓練部分179
14.4.1全局常量179
14.4.2定義數據集180
14.4.3定義模型181
14.4.4初始化工具類182
14.4.5計算loss183
14.4.6訓練186
14.5小結187
第15章正、負樣本混合訓練188
15.1任務簡介188
15.2數據集介紹188
15.3測試部分190
15.3.1配置環境190
15.3.2測試函數191
15.3.3未訓練模型的測試結果191
15.3.4訓練後模型的測試結果192
15.4訓練部分193
15.4.1全局常量193
15.4.2定義數據集193
15.4.3定義模型200
15.4.4初始化工具類203
15.4.5計算loss203
15.4.6訓練206
15.5小結207
以圖生圖模型的歷史發展篇
第16章Pix2Pix模型211
16.1任務介紹211
16.2數據集介紹212
16.3定義數據集213
16.4定義神經網絡模型216
16.4.1定義CLS模型217
16.4.2定義殘差連接層217
16.4.3定義GEN模型218
16.5訓練220
16.5.1訓練前的準備工作220
16.5.2訓練CLS的函數221
16.5.3訓練GEN的函數222
16.5.4執行訓練223
16.6測試226
16.6.1測試本地訓練的模型226
16.6.2使用訓練好的模型測試228
16.7小結228
第17章CycleGAN模型230
17.1模型原理介紹230
17.2數據集介紹231
17.3定義數據集232
17.4定義神經網絡模型234
17.4.1定義CLS模型234
17.4.2定義GEN模型235
17.5訓練237
17.5.1訓練前的準備工作237
17.5.2訓練CLS的函數238
17.5.3訓練GEN的函數239
17.5.4執行訓練242
17.6測試243
17.6.1測試本地訓練的模型243
17.6.2使用訓練好的模型測試244
17.7小結245
Diffusion模型篇
第18章風格遷移249
18.1模型原理介紹249
18.1.1針對單張圖片的風格遷移249
18.1.2基於神經網絡模型的風格遷移250
18.1.3風格遷移模型的訓練方法250
18.1.4數據部分251
18.2定義神經網絡模型252
18.2.1定義CLS模型254
18.2.2定義抽取內容特徵的函數254
18.2.3定義抽取風格特徵的函數255
18.2.4加載風格圖片特徵256
18.3訓練257
18.3.1訓練前的準備工作257
18.3.2執行訓練257
18.4測試259
18.4.1測試本地訓練的模型259
18.4.2使用訓練好的模型測試260
18.5小結260
第19章手動構建Diffusion模型261
19.1模型原理介紹261
19.2Encoder模型263
19.2.1編碼層263
19.2.2註意力層264
19.2.3編碼器層266
19.2.4Encoder模型268
19.2.5加載參數268
19.2.6試算270
19.3VAE模型270
19.3.1殘差連接層270
19.3.2註意力層272
19.3.3Pad工具層274
19.3.4VAE模型275
19.3.5加載參數278
19.3.6試算280
19.4UNet模型281
19.4.1模型結構281
19.4.2殘差連接層282
19.4.3註意力層284
19.4.4Transformers層286
19.4.5down層289
19.4.6up層290
19.4.7UNet模型291
19.4.8加載參數296
19.4.9試算298
19.5訓練299
19.5.1加載工具類299
19.5.2定義數據集300
19.5.3定義模型303
19.5.4計算loss304
19.5.5執行訓練305
19.6測試306
19.6.1定義生成函數306
19.6.2定義測試函數308
19.6.3測試未訓練的模型309
19.6.4測試訓練好的模型310
19.7小結311