細說機器學習:從理論到實踐
凌峰
- 出版商: 清華大學
- 出版日期: 2023-05-01
- 定價: $714
- 售價: 8.5 折 $607
- 語言: 簡體中文
- 頁數: 465
- 裝訂: 平裝
- ISBN: 7302628769
- ISBN-13: 9787302628767
-
相關分類:
Machine Learning
立即出貨
相關主題
商品描述
《細說機器學習:從理論到實踐》從數學知識入手,詳盡細致地闡述機器學習各方面的理論知識、常用算法與流行框架,並以大量代碼示例進行實踐。本書內容分為三篇:第一篇為基礎知識,包括機器學習概述、開發環境和常用模塊、特徵工程、模型評估、降維方法等內容。本篇詳細而友好地介紹機器學習的核心概念與原理,並結合大量示例幫助讀者輕松入門。第二篇為算法應用,涵蓋機器學習最重要與高頻使用的模型,包括K-Means聚類、K最近鄰、回歸、決策樹、樸素貝葉斯、支持向量機、神經網絡等內容。本篇不僅詳細講解各個算法的原理,還提供大量註釋詳盡的代碼示例,使這些算法變得直觀易懂。第三篇為拓展應用,包括集成學習、深度學習框架TensorFlow與PyTorch入門、捲積網絡、激活函數以及模型微調與項目實戰。本篇內容更加前沿與高級,帶領讀者跨過機器學習的門檻,進行真實項目的實踐與部署。 《細說機器學習:從理論到實踐》內容豐富、系統且實用,大量相關代碼示例貼近實戰,能夠為讀者學習機器學習打下扎實的基礎,並真正掌握運用這些知識與算法解決實際問題的技能。適合機器學習入門者、大學生、人工智能從業者,以及各行業技術人員和科研人員使用,也可作為培訓機構和大專院校人工智能課程的教學用書。
目錄大綱
目 錄
第1篇 基礎知識
第1章 人工智能和PyTorch2
1.1 人工智能和深度學習2
1.1.1 人工智能2
1.1.2 深度學習3
1.2 深度學習框架5
1.3 PyTorch7
1.3.1 PyTorch簡介7
1.3.2 PyTorch的應用領域9
1.3.3 PyTorch的應用前景10
1.4 小結12
第2章 開發環境13
2.1 PyTorch的安裝13
2.2 NumPy16
2.2.1 NumPy的安裝與查看17
2.2.2 NumPy對象17
2.2.3 數組21
2.2.4 數學計算26
2.3 Matplotlib32
2.3.1 Matplotlib的安裝和簡介33
2.3.2 Matplotlib Figure圖形對象35
2.4 Scikit-Learn47
2.5 小結48
第3章 PyTorch入門49
3.1 PyTorch的模塊49
3.1.1 主要模塊49
3.1.2 輔助模塊53
3.2 張量54
3.2.1 張量的數據類型55
3.2.2 創建張量56
3.2.3 張量存儲61
3.2.4 維度操作63
3.2.5 索引和切片65
3.2.6 張量運算67
3.3 torch.nn模塊76
3.3.1 捲積層76
3.3.2 池化層80
3.3.3 激活層87
3.3.4 全連接層91
3.4 自動求導92
3.5 小結95
第4章 捲積網絡96
4.1 捲積網絡的原理96
4.1.1 捲積運算96
4.1.2 捲積網絡與深度學習98
4.2 NumPy建立神經網絡99
4.3 PyTorch建立神經網絡101
4.3.1 建立兩層神經網絡101
4.3.2 神經網絡參數更新102
4.3.3 自定義PyTorch的nn模塊103
4.3.4 權重共享105
4.4 全連接網絡107
4.5 小結111
第5章 經典神經網絡112
5.1 VGGNet112
5.1.1 VGGNet的結構112
5.1.2 實現過程114
5.1.3 VGGNet的特點115
5.1.4 查看PyTorch網絡結構116
5.2 ResNet118
5.2.1 ResNet的結構118
5.2.2 殘差模塊的實現120
5.2.3 ResNet的實現122
5.2.4 ResNet要解決的問題126
5.3 XceptionNet128
5.3.1 XceptionNet的結構128
5.3.2 XceptionNet的實現131
5.4 小結135
第6章 模型的保存和調用136
6.1 字典狀態(state_dict)136
6.2 保存和加載模型138
6.2.1 使用ate_dict加載模型138
6.2.2 保存和加載完整模型139
6.2.3 保存和加載Checkpoint用於推理、繼續訓練139
6.3 一個文件保存多個模型140
6.4 通過設備保存和加載模型141
6.5 小結143
第7章 網絡可視化144
7.1 HiddenLayer可視化144
7.2 PyTorchViz可視化146
7.3 TensorboardX可視化149
7.3.1 簡介和安裝149
7.3.2 使用TensorboardX150
7.3.3 添加數字151
7.3.4 添加圖片152
7.3.5 添加直方圖153
7.3.6 添加嵌入向量154
7.4 小結156
第8章 數據加載和預處理157
8.1 加載PyTorch庫數據集157
8.2 加載自定義數據集159
8.2.1 下載並查看數據集159
8.2.2 定義數據集類161
8.3 預處理164
8.4 小結168
第9章 數據增強169
9.1 數據增強的概念169
9.1.1 常見的數據增強方法170
9.1.2 常用的數據增強庫171
9.2 數據增強的實現172
9.2.1 中心裁剪173
9.2.2 隨機裁剪174
9.2.3 縮放175
9.2.4 水平翻轉176
9.2.5 垂直翻轉177
9.2.6 隨機角度旋轉178
9.2.7 色度、亮度、飽和度、對比度的變化179
9.2.8 隨機灰度化180
9.2.9 將圖形加上padding181
9.2.10 指定區域擦除182
9.2.11 伽馬變換183
9.3 小結184
第2篇 高級應用
第10章 圖像分類186
10.1 CIFAR10數據分類186
10.1.1 定義網絡訓練數據187
10.1.2 驗證訓練結果192
10.2 數據集劃分193
10.3 貓狗分類實戰195
10.3.1 貓狗數據預處理195
10.3.2 建立網絡貓狗分類196
10.4 小結199
第11章 遷移學習200
11.1 定義和方法200
11.2 螞蟻和蜜蜂分類實戰202
11.2.1 加載數據202
11.2.2 定義訓練方法204
11.2.3 可視化預測結果205
11.2.4 遷移學習方法一:微調網絡206
11.2.5 遷移學習方法二:特徵提取器208
11.3 小結209
第12章 人臉檢測和識別210
12.1 人臉檢測210
12.1.1 定義和研究現狀210
12.1.2 經典算法213
12.1.3 應用領域216
12.2 人臉識別217
12.2.1 定義和研究現狀217
12.2.2 經典算法220
12.2.3 應用領域221
12.3 人臉檢測與識別實戰222
12.3.1 Dlib人臉檢測222
12.3.2 基於MTCNN的人臉識別225
12.4 小結227
第13章 生成對抗網絡228
13.1 生成對抗網絡簡介228
13.2 數學模型230
13.3 生成手寫體數字圖片實戰233
13.3.1 基本網絡結構233
13.3.2 準備數據234
13.3.3 定義網絡和訓練235
13.3.4 生成結果分析237
13.4 生成人像圖片實戰238
13.4.1 DCGAN簡介239
13.4.2 數據準備239
13.4.3 生成對抗網絡的實現241
13.5 小結250
第14章 目標檢測251
14.1 目標檢測概述251
14.1.1 傳統目標檢測算法的研究現狀252
14.1.2 深度學習目標檢測算法的研究現狀252
14.1.3 應用領域253
14.2 檢測算法模型253
14.2.1 傳統的目標檢測模型253
14.2.2 基於深度學習的目標檢測模型255
14.3 目標檢測的基本概念259
14.3.1 IoU259
14.3.2 NMS261
14.4 Faster R-CNN目標檢測264
14.4.1 網絡原理265
14.4.2 實戰269
14.5 小結273
第15章 圖像風格遷移274
15.1 風格遷移概述274
15.2 固定風格固定內容的遷移277
15.2.1 固定風格固定內容遷移的原理277
15.2.2 PyTorch實現固定風格遷移280
15.3 快速風格遷移288
15.3.1 快速遷移模型的原理288
15.3.2 PyTorch實現快速風格遷移290
15.4 小結297
第16章 ViT298
16.1 ViT詳解298
16.1.1 Transformer模型中的Attention註意力機制298
16.1.2 視覺Transformer模型詳解302
16.2 ViT圖像分類實戰305
16.2.1 數據準備305
16.2.2 定義ViT模型306
16.2.3 定義工具函數311
16.2.4 定義訓練過程314
16.2.5 運行結果317
16.3 小結318
參考文獻319