PyTorch計算機視覺實戰:目標檢測、圖像處理與大模型(原書第二版)
- 出版商: 機械工業
- 出版日期: 2026-01-01
- 售價: $954
- 語言: 簡體中文
- 頁數: 572
- ISBN: 7111794907
- ISBN-13: 9787111794905
-
相關分類:
Computer Vision
- 此書翻譯自: Modern Computer Vision with PyTorch - Second Edition: A practical roadmap from deep learning fundamentals to advanced applications and Generative AI
下單後立即進貨 (約4週~6週)
相關主題
商品描述
本書系統介紹了基於PyTorch的計算機視覺技術,涵蓋從理論基礎到 應用開發的全流程。全書分為四部分,共18章, 部分講解深度學習基礎,包括人工神經網絡、PyTorch基礎知識及深度神經網絡構建;第二部分聚焦物體分類與檢測,涉及卷積神經網絡、遷移學習、物體檢測技術及圖像分割;第三部分探討圖像處理,涵蓋自動編碼器、生成對抗網絡等;第四部分介紹計算機視覺與其他技術的融合,包括與強化學習、自然語言處理的結合,基礎模型、穩定擴散應用及模型部署。書中包含40多種實際應用案例,GitHub提供完整源代碼,每章配有習題及答案,適合具備Python和機器學習基礎的學生、軟件開發人員及科研人員學習,助力其掌握計算機視覺與深度學 技能。
作者簡介
V·基肖爾·阿耶德瓦拉(V Kishore Ayyadevara)<br />知名企業家,實幹型 ,致力於技術、數據和人工智能交叉領域,專註於發現並解決商業難題。他擁有十余年領導經驗,曾在美國運通(American Express)、 ( )及一家 健康保險公司,成功搭建並壯大應用數據科學團隊。目前,他創立了一家初創公司,旨在推動人工智能技術在醫療機構的普及。工作之余,Kishore撰寫了5本關於機器學習/人工智能的著作以分享專業知識。他擁有12項發明專利,並多次受邀在人工智能領域的會議上發表演講。<br /><br />耶什萬斯·雷迪(Yeshwanth Reddy)<br />成就卓著的數據科學家,在深度學習與文檔分析領域擁有10年以上實戰經驗。他為該領域做出了重大貢獻,包括開發端到端文檔數字化軟件,助力實現顯著成本節約。他的專業知識還涵蓋光學字符識別、單詞檢測與合成文檔生成等模塊開發,其開創性工作成果獲得多項專利認證,同時創建了多個Python庫。懷著對無監督學習與自監督學習變革的熱情,他致力於減少人工標註依賴,推動數據科學領域的創新解決方案。
目錄大綱
譯者序
前言
作者簡介
審校者簡介
第一部分 基於計算機視覺的深度學習基礎
第1章 人工神經網絡基礎 2
1.1 對比人工智能與傳統機器學習 3
1.2 學習人工神經網絡的構建塊 5
1.3 實現前向傳播 6
1.3.1 計算隱藏層的單元值 6
1.3.2 應用激活函數 7
1.3.3 計算輸出層的值 8
1.3.4 計算損失值 9
1.3.5 編碼實現前向傳播 10
1.4 實現反向傳播 13
1.4.1 編碼實現梯度下降 14
1.4.2 利用鏈式法則實現反向
傳播 16
1.4.3 將前向傳播與反向傳播
相結合 19
1.5 了解學習率的影響 22
1.5.1 學習率為0.01 25
1.5.2 學習率為0.1 26
1.5.3 學習率為1 27
1.6 神經網絡訓練過程概述 28
1.7 本章小結 28
1.8 習題 29
第2章 PyTorch基礎 30
2.1 安裝PyTorch 30
2.2 PyTorch張量 31
2.2.1 初始化張量 32
2.2.2 張量運算 33
2.2.3 張量對象的自動梯度 37
2.2.4 PyTorch張量相對於NumPy
數組的優勢 38
2.3 使用PyTorch構建神經網絡 39
2.3.1 數據集、數據加載器與
批處理大小 45
2.3.2 根據新的數據點進行預測 48
2.3.3 實現自定義損失函數 49
2.3.4 獲取神經網絡中間層的值 50
2.4 使用順序方法構建神經網絡 51
2.5 保存並加載PyTorch模型 54
2.5.1 使用state_dict 54
2.5.2 保存 55
2.5.3 加載 55
2.6 本章小結 56
2.7 習題 56
第3章 使用PyTorch構建深度神經
網絡 57
3.1 圖像表示 58
3.1.1 將圖像轉換為結構化數組和
標量值 58
3.1.2 為彩色圖像創建結構化
數組 60
3.2 為什麼要利用神經網絡進行圖像
分析 62
3.3 準備用於圖像分類的數據 63
3.4 訓練神經網絡 65
3.5 縮放數據集以提高模型準確率 70
3.6 理解批處理大小變化的影響 72
3.6.1 批處理大小為32 72
3.6.2 批處理大小為10 000 75
3.7 理解不同損失優化器的影響 76
3.8 構建更深的神經網絡 79
3.9 理解批量歸一化的影響 80
3.9.1 沒有使用批量歸一化的
極小輸入值 81
3.9.2 使用批量歸一化的極小
輸入值 84
3.10 過擬合的概念 85
3.10.1 添加dropout的影響 86
3.10.2 正則化的影響 87
3.11 本章小結 90
3.12 習題 90
第二部分 物體分類與檢測
第4章 卷積神經網絡導論 92
4.1 傳統深度神經網絡存在的問題 92
4.2 卷積神經網絡的構建塊 95
4.2.1 卷積 96
4.2.2 濾波器 97
4.2.3 步長與填充 98
4.2.4 池化 99
4.2.5 整合各個構建塊 99
4.2.6 卷積和池化在圖像平移中的
作用 100
4.3 實現卷積神經網絡 101
4.4 利用深度卷積神經網絡進行圖像
分類 104
4.5 可視化特征學習結果 109
4.6 構建用於真實世界圖像分類的卷積
神經網絡 119
4.7 本章小結 128
4.8 習題 128
第5章 用於圖像分類的遷移學習 129
5.1 遷移學習概述 130
5.2 理解VGG16架構 131
5.3 理解ResNet架構 139
5.4 實現臉部關鍵點檢測 143
5.5 實現年齡估計與性別分類 151
5.6 torch_snippets庫概述 160
5.7 本章小結 165
5.8 習題 165
第6章 圖像分類的實際應用 167
6.1 生成類激活圖 167
6.2 理解數據增強與批量歸一化的
影響 176
6.3 模型實現期間要註意的實際事項 181
6.3.1 不平衡的數據 181
6.3.2 圖像中物體的大小 182
6.3.3 訓練圖像與驗證圖像之間的
區別 182
6.3.4 扁平化層的節點數 183
6.3.5 圖像大小 183
6.3.6 OpenCV實用程序 183
6.4 本章小結 183
6.5 習題 184
第7章 物體檢測基礎知識 185
7.1 物體檢測概述 185
7.2 創建用於訓練的真實邊界框 187
7.3 了解建議區域 188
7.3.1 利用 SelectiveSearch 生成
建議區域 189
7.3.2 實現SelectiveSearch生成
建議區域 190
7.4 了解交並比 192
7.5 非極大值抑制 194
7.6 平均精度均值 194
7.7 訓練基於R-CNN的自定義物體
檢測器 195
7.7.1 R-CNN的工作細節 195
7.7.2 在自定義數據集上實現用於
物體檢測的R-CNN 196
7.7.3 數據集下載 197
7.8 訓練基於Fast R-CNN的自定義物體
檢測器 210
7.8.1 Fast R-CNN的工作細節 210
7.8.2 在自定義數據集上實現用於
物體檢測的Fast R-CNN 211
7.9 本章小結 218
7.10 習題 218
第8章 高級物體檢測 219
8.1 更先進的物體檢測算法的組成
部分 219
8.1.1 錨框 220
8.1.2 建議區域網絡 221
8.1.3 分類與回歸 222
8.2 在自定義數據集上訓練
Faster R-CNN 223
8.3 YOLO的工作細節 230
8.4 在自定義數據集上訓練YOLO 235
8.4.1 安裝Darknet 235
8.4.2 設置數據集格式 236
8.4.3 配置架構 237
8.4.4 訓練與測試模型 238
8.5 SSD的工作細節 239
8.6 在自定義數據集上訓練 SSD 243
8.7 本章小結 248
8.8 習題 248
第9章 圖像分割 249
9.1 探索U-Net架構 250
9.2 執行上采樣 251
9.3 使用U-Net實現語義分割 253
9.4 探索Mask R-CNN架構 259
9.4.1 RoI對齊 260
9.4.2 掩碼頭 262
9.5 使用Mask R-CNN實現實例
分割 263
9.6 預測多個類的多個實例 274
9.7 本章小結 277
9.8 習題 277
第10章 物體檢測與分割的應用 278
10.1 多物體實例分割 278
10.1.1 獲取與準備數據 279
10.1.2 訓練實例分割模型 284
10.1.3 在新圖像上進行推理 285
10.2 人體姿態檢測 287
10.3 人群計數 289
10.4 圖像著色 298
10.5 基於點雲的3D物體檢測 303
10.5.1 理論 304
10.5.2 訓練用於3D物體檢測的YOLO模型 307
10.6 視頻行為識別 311
10.6.1 識別視頻中的行為 312
10.6.2 在自定義數據集上訓練
識別器 314
10.7 本章小結 316
10.8 習題 317
第三部分 圖像處理
第11章 自動編碼器與圖像處理 320
11.1 理解自動編碼器 320
11.1.1 自動編碼器的工作原理 320
11.1.2 實現普通自動編碼器 321
11.1.3 實現卷積自動編碼器 326
11.1.4 使用t-SNE分組相似
圖像 329
11.2 理解變分自動編碼器 331
11.2.1 變分自動編碼器的需求 331
11.2.2 變分自動編碼器的工作
原理 333
11.2.3 KL散度 333
11.2.4 構建變分自動編碼器 334
11.3 對圖像進行對抗攻擊 338
11.4 理解神經風格遷移 341
11.4.1 神經風格遷移的工作
原理 341
11.4.2 執行神經風格遷移 343
11.5 理解深度偽造 347
11.5.1 深度偽造的工作原理 347
11.5.2 生成深度偽造 348
11.6 本章小結 356
11.7 習題 357
第12章 基於生成對抗網絡的圖像
生成 358
12.1 生成對抗網絡簡介 358
12.2 利用生成對抗網絡生成手寫
數字 360
12.3 利用深度卷積生成對抗網絡生成
人臉圖像 366
12.4 實現條件生成對抗網絡 373
12.5 本章小結 383
12.6 習題 383
第13章 用於圖像處理的高級生成
對抗網絡 384
13.1 利用Pix2Pix GAN 384
13.2 利用CycleGAN 394
13.2.1 CycleGAN的工作原理 395
13.2.2 實現CycleGAN 396
13.3 在自定義圖像中利用StyleGAN 404
13.3.1 StyleGAN的演化 404
13.3.2 實現StyleGAN 406
13.4 SRGAN簡介 412
13.4.1 架構 413
13.4.2 編碼實現SRGAN 413
13.5 本章小結 415
13.6 習題 416
第四部分 計算機視覺與其他技術的融合
第14章 計算機視覺與強化學習
相結合 418
14.1 學習強化學習的基礎知識 419
14.1.1 計算狀態值 419
14.1.2 計算“狀態–行動”值 420
14.2 實現Q學習 421
14.2.1 定義Q值 422
14.2.2 理解Gym環境 422
14.2.3 構建Q表 424
14.2.4 探索–利用策略 426
14.3 實現深度Q學習 428
14.3.1 理解CartPole環境 428
14.3.2 進行CartPole平衡 429
14.4 基於固定目標模型實現深度Q
學習 434
14.4.1 理解應用實例 435
14.4.2 編寫一個智能體來玩乒乓球遊戲 436
14.5 實現一個執行自動駕駛的
智能體 442
14.5.1 設置CARLA環境 442
14.5.2 訓練自動駕駛智能體 445
14.6 本章小結 454
14.7 習題 455
第15 章 計算機視覺與自然語言處理
技術相結合 456
15.1 Transformer簡介 457
15.1.1 Transformer基礎知識 457
15.1.2 視覺Transformer的工作
原理 461
15.2 實現視覺Transformer 462
15.3 識別手寫圖像 466
15.3.1 手寫識別工作流程 466
15.3.2 編碼實現手寫識別 467
15.4 文檔布局分析 472
15.4.1 理解LayoutLM 472
15.4.2 實現LayoutLMv3 474
15.5 視覺問答 478
15.5.1 BLIP2簡介 478
15.5.2 實現BLIP2 481
15.6 本章小結 482
15.7 習題 482
第16章 計算機視覺中的基礎模型 483
16.1 CLIP簡介 483
16.1.1 CLIP的工作原理 484
16.1.2 從頭開始構建CLIP
模型 485
16.1.3 利用OpenAI CLIP 493
16.2 SAM簡介 494
16.2.1 SAM的工作原理 495
16.2.2 實現SAM 498
16.2.3 FastSAM的工作原理 501
16.2.4 實現FastSAM 502
16.3 擴散模型簡介 504
16.3.1 擴散模型的工作原理 504
16.3.2 擴散模型架構 505
16.3.3 從頭開始構建擴散
模型 507
16.3.4 條件圖像生成 511
16.4 理解穩定擴散 513
16.4.1 穩定擴散模型的構建塊 514
16.4.2 實現穩定擴散 522
16.5 本章小結 524
16.6 習題 524
第17章 穩定擴散的應用 525
17.1 圖像修覆 525
17.1.1 模型訓練工作流程 526
17.1.2 使用穩定擴散進行圖像
修覆 527
17.2 ControlNet 528
17.2.1 架構 528
17.2.2 實現ControlNet 529
17.3 SDXL Turbo 532
17.3.1 架構 532
17.3.2 實現SDXL Turbo 533
17.4 DepthNet 534
17.4.1 DepthNet工作流程 534
17.4.2 實現DepthNet 534
17.5 根據文本生成視頻 535
17.5.1 工作流程 536
17.5.2 實現根據文本生成
視頻 536
17.6 本章小結 537
17.7 習題 538
第18章 模型部署到生產環境 539
18.1 了解API的基礎知識 540
18.2 在本地服務器上創建API並進行
預測 541
18.2.1 安裝API模塊及依賴項 541
18.2.2 部署圖像分類器 541
18.3 封裝應用程序 545
18.4 在雲端部署並運行Docker容器 549
18.4.1 配置AWS 549
18.4.2 在AWS ECR上創建Docker存儲庫並推送鏡像 549
18.4.3 提取鏡像並構建Docker
容器 550
18.5 識別數據漂移 552
18.6 使用向量存儲 555
18.7 本章小結 557
18.8 習題 558
附錄 559
