機(jī)器學(xué)習(xí)算法與實現(xiàn) —— Python編程與應(yīng)用實例
定 價:89 元
- 作者:布樹輝 等
- 出版時間:2022/11/1
- ISBN:9787121443893
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP181;TP311.561
- 頁碼:344
- 紙張:
- 版次:01
- 開本:16開
機(jī)器學(xué)習(xí)是人工智能的重要方向之一,對提升各行業(yè)的智能化程度正在起越來越大的作用。本書通過凝練機(jī)器學(xué)習(xí)的核心思想與方法,綜合介紹了Python、常用庫和相關(guān)工具,以及機(jī)器學(xué)習(xí)的原理與實現(xiàn),囊括了機(jī)器學(xué)習(xí)與行業(yè)相結(jié)合的實例,可讓沒有深厚計算機(jī)、編程背景的讀者在有限的時間內(nèi)掌握機(jī)器學(xué)習(xí)的相關(guān)知識和應(yīng)用工具。本書各部分的比例適當(dāng),在講授基本Python編程、庫函數(shù)的基礎(chǔ)上,由淺入深地介紹了機(jī)器學(xué)習(xí)的思想、方法和實現(xiàn)。理論講授部分從基本的最小二乘法開始,逐步深入地介紹了如何使用迭代求解的方法實現(xiàn)邏輯斯蒂回歸、感知機(jī)、神經(jīng)網(wǎng)絡(luò)、深度神經(jīng)網(wǎng)絡(luò)。本書配套有完整的在線講義、在線視頻、作業(yè)和練習(xí)項目,每章的習(xí)題、練習(xí)、報告等都配有對應(yīng)的二維碼,讀者可直接訪問在線教程,選擇適合自己的資料。本書可作為計算機(jī)、智能科學(xué)與技術(shù)、航空航天、電子信息、自動化等專業(yè)碩士研究生和本科生的教材,也可供相關(guān)技術(shù)人員參考。
布樹輝,西北工業(yè)大學(xué)教授,博士生導(dǎo)師。中國航空學(xué)會航電與空管分會委員,國際數(shù)字地球?qū)W會中國國家委員會虛擬地理環(huán)境專業(yè)委員會委員,陜西省組合與智能導(dǎo)航重點實驗室委員,陜西省自動化學(xué)會智能機(jī)器人專業(yè)委員會委員。出版教材和專著3部,發(fā)表學(xué)術(shù)論文100多篇。近年來完成國家、省部級研究項目19項,獲省部級獎勵6項,并于2021年獲得吳文俊人工智能科學(xué)技術(shù)發(fā)明一等獎。主要研究方向包括自主無人機(jī)與機(jī)器人、圖形與圖像處理、機(jī)器學(xué)習(xí)及其應(yīng)用等。在同時定位與構(gòu)圖、環(huán)境理解等方面取得了較為突出的成果,所研究的無人機(jī)實時地圖重建與分析系統(tǒng)在國際上有較大的影響力。
第1章 緒論 1
1.1 機(jī)器學(xué)習(xí)的發(fā)展歷程 2
1.2 機(jī)器學(xué)習(xí)的基本術(shù)語 2
1.2.1 特征 3
1.2.2 樣本 3
1.2.3 模型 3
1.2.4 回歸、分類與聚類 4
1.2.5 泛化與過擬合 4
1.3 機(jī)器學(xué)習(xí)的基本分類 5
1.3.1 監(jiān)督學(xué)習(xí) 5
1.3.2 無監(jiān)督學(xué)習(xí) 5
1.3.3 半監(jiān)督學(xué)習(xí) 5
1.3.4 深度學(xué)習(xí) 6
1.3.5 強化學(xué)習(xí) 8
1.3.6 機(jī)器學(xué)習(xí)與人工智能 8
1.4 機(jī)器學(xué)習(xí)的應(yīng)用 9
1.4.1 圖像識別與處理 9
1.4.2 語音識別與自然語言處理 10
1.4.3 環(huán)境感知與智能決策 11
1.4.4 融合物理信息的工程設(shè)計 12
1.5 機(jī)器學(xué)習(xí)應(yīng)用的步驟 13
1.5.1 應(yīng)用場景分析 14
1.5.2 數(shù)據(jù)處理 14
1.5.3 特征工程 14
1.5.4 算法模型訓(xùn)練與評估 15
1.5.5 應(yīng)用服務(wù) 15
1.6 機(jī)器學(xué)習(xí)的評估方法 15
1.6.1 數(shù)據(jù)集劃分方法 15
1.6.2 性能度量 16
1.7 如何學(xué)習(xí)機(jī)器學(xué)習(xí) 17
1.7.1 由淺入深 17
1.7.2 行成于思 17
第2章 Python語言 18
2.1 為什么選擇Python 18
2.2 安裝Python的環(huán)境 19
2.2.1 Windows下的安裝 19
2.2.2 Linux下的安裝 19
2.2.3 設(shè)置軟件源 20
2.2.4 安裝常用Python庫 20
2.2.5 安裝PyTorch 20
2.2.6 Conda使用技巧 21
2.3 Jupyter Notebook 21
2.3.1 Jupyter Notebook的主頁面 22
2.3.2 Jupyter Notebook的快捷鍵 24
2.3.3 Magic關(guān)鍵字 25
2.4 Python基礎(chǔ) 25
2.4.1 變量 26
2.4.2 運算符 27
2.4.3 內(nèi)置函數(shù) 28
2.5 print()函數(shù) 29
2.6 數(shù)據(jù)結(jié)構(gòu) 30
2.6.1 列表 31
2.6.2 元組 38
2.6.3 集合 40
2.6.4 字符串 42
2.6.5 字典 46
2.7 控制流語句 48
2.7.1 判斷語句 48
2.7.2 循環(huán)語句 50
2.8 函數(shù) 55
2.8.1 函數(shù)的參數(shù) 55
2.8.2 返回語句 56
2.8.3 默認(rèn)參數(shù) 58
2.8.4 任意數(shù)量的參數(shù) 58
2.8.5 全局變量和局部變量 59
2.8.6 lambda函數(shù) 60
2.9 類和對象 60
2.9.1 成員函數(shù)與變量 61
2.9.2 繼承 64
2.10 小結(jié) 66
2.11 練習(xí)題 66
2.12 在線練習(xí)題 67
第3章 Python常用庫 68
3.1 NumPy數(shù)值計算庫 68
3.1.1 創(chuàng)建NumPy數(shù)組 69
3.1.2 訪問數(shù)組元素 73
3.1.3 文件讀寫 77
3.1.4 線性代數(shù)函數(shù) 79
3.1.5 數(shù)據(jù)統(tǒng)計 80
3.1.6 數(shù)組的操作 83
3.2 Matplotlib繪圖庫 87
3.2.1 多子圖繪制 88
3.2.2 圖像處理 89
3.3 小結(jié) 89
3.4 練習(xí)題 89
3.5 在線練習(xí)題 90
第4章 k最近鄰算法 91
4.1 k最近鄰原理 91
4.1.1 特征距離計算 92
4.1.2 算法步驟 92
4.2 機(jī)器學(xué)習(xí)的思維模型 93
4.3 數(shù)據(jù)生成 93
4.4 程序?qū)崿F(xiàn) 95
4.5 將kNN算法封裝為類 97
4.6 基于sklearn的分類實現(xiàn) 98
4.7 小結(jié) 100
4.8 練習(xí)題 100
4.9 在線練習(xí)題 100
第5章 k均值聚類算法 101
5.1 無監(jiān)督學(xué)習(xí)思想 101
5.2 k均值聚類原理 102
5.3 k均值聚類算法 103
5.4 算法操作過程演示 103
5.5 k均值聚類算法編程實現(xiàn) 105
5.6 使用sklearn進(jìn)行聚類 109
5.7 評估聚類性能 110
5.7.1 調(diào)整蘭德指數(shù) 110
5.7.2 輪廓系數(shù) 111
5.8 k均值圖像壓縮 112
5.9 小結(jié) 114
5.10 練習(xí)題 115
5.11 在線練習(xí)題 115
第6章 邏輯斯蒂回歸 116
6.1 最小二乘法 116
6.1.1 數(shù)據(jù)生成 116
6.1.2 最小二乘法的數(shù)學(xué)原理 117
6.1.3 最小二乘法的程序?qū)崿F(xiàn) 118
6.2 梯度下降法 119
6.2.1 梯度下降法的原理 119
6.2.2 梯度下降法的實現(xiàn) 121
6.2.3 迭代可視化 123
6.2.4 梯度下降法的優(yōu)化 124
6.3 多元線性回歸 125
6.3.1 導(dǎo)彈彈道預(yù)測算法 125
6.3.2 建模與編程求解 126
6.4 使用sklearn庫進(jìn)行擬合 127
6.5 邏輯斯蒂回歸的原理 128
6.5.1 數(shù)學(xué)模型 129
6.5.2 算法流程 131
6.6 邏輯斯蒂回歸的實現(xiàn) 131
6.6.1 邏輯斯蒂回歸示例程序 132
6.6.2 使用sklearn解決邏輯斯蒂
回歸問題 134
6.6.3 多類識別問題 136
6.7 小結(jié) 140
6.8 練習(xí)題 140
6.9 在線練習(xí)題 140
第7章 神經(jīng)網(wǎng)絡(luò) 141
7.1 感知機(jī) 141
7.1.1 感知機(jī)模型 142
7.1.2 感知機(jī)學(xué)習(xí)策略 143
7.1.3 感知機(jī)學(xué)習(xí)算法 143
7.1.4 示例程序 144
7.2 多層神經(jīng)網(wǎng)絡(luò) 147
7.2.1 神經(jīng)元 147
7.2.2 神經(jīng)網(wǎng)絡(luò)架構(gòu) 148
7.2.3 神經(jīng)網(wǎng)絡(luò)正向計算 148
7.2.4 神經(jīng)網(wǎng)絡(luò)矩陣表示 149
7.2.5 神經(jīng)網(wǎng)絡(luò)訓(xùn)練 151
7.2.6 激活函數(shù) 155
7.2.7 神經(jīng)網(wǎng)絡(luò)訓(xùn)練算法設(shè)計 157
7.2.8 示例程序 158
7.2.9 使用類的方法封裝多層神經(jīng)網(wǎng)絡(luò) 161
7.3 softmax函數(shù)與交叉熵代價函數(shù) 165
7.3.1 softmax函數(shù) 165
7.3.2 交叉熵代價函數(shù) 167
7.4 小結(jié) 169
7.5 練習(xí)題 169
7.6 在線練習(xí)題 170
第8章 PyTorch 171
8.1 張量 171
8.1.1 Tensor的生成 171
8.1.2 Tensor的操作 173
8.1.3 Tensor的維度操作 173
8.1.4 Tensor的變形 175
8.1.5 inplace操作 175
8.2 自動求導(dǎo) 176
8.2.1 簡單情況下的自動求導(dǎo) 177
8.2.2 復(fù)雜情況下的自動求導(dǎo) 178
8.2.3 多次自動求導(dǎo) 180
8.3 神經(jīng)網(wǎng)絡(luò)模型 180
8.3.1 邏輯斯蒂回歸與神經(jīng)網(wǎng)絡(luò) 180
8.3.2 序列化模型 185
8.3.3 模塊化網(wǎng)絡(luò)定義 187
8.3.4 模型參數(shù)保存 189
8.4 神經(jīng)網(wǎng)絡(luò)的定義與訓(xùn)練 191
8.4.1 MNIST數(shù)據(jù)集 191
8.4.2 CIFAR-10數(shù)據(jù)集 192
8.4.3 多分類神經(jīng)網(wǎng)絡(luò) 192
8.4.4 參數(shù)初始化 198
8.4.5 模型優(yōu)化求解 202
8.5 綜合示例代碼 212
8.6 小結(jié) 214
8.7 練習(xí)題 215
8.8 在線練習(xí)題 215
第9章 深度學(xué)習(xí) 216
9.1 卷積神經(jīng)網(wǎng)絡(luò) 216
9.1.1 卷積網(wǎng)絡(luò)的基礎(chǔ) 217
9.1.2 卷積計算與模塊 220
9.1.3 數(shù)據(jù)預(yù)處理與批量歸一化 223
9.1.4 網(wǎng)絡(luò)正則化 229
9.1.5 學(xué)習(xí)率衰減 231
9.2 典型的深度神經(jīng)網(wǎng)絡(luò) 235
9.2.1 LeNet5 235
9.2.2 AlexNet 240
9.2.3 VGG 245
9.2.4 GoogLeNet 250
9.2.5 ResNet 254
9.2.6 DenseNet 260
9.3 小結(jié) 265
9.4 練習(xí)題 265
9.5 在線練習(xí)題 265
第10章 目標(biāo)檢測 266
10.1 目標(biāo)檢測的任務(wù) 266
10.2 目標(biāo)檢測的發(fā)展歷程 267
10.3 目標(biāo)檢測評估方法 269
10.3.1 交并比 269
10.3.2 精度 270
10.3.3 平均精度 271
10.3.4 平均精度均值 271
10.4 目標(biāo)檢測的原理 271
10.4.1 YOLO-v1 271
10.4.2 YOLO-v2 280
10.4.3 YOLO-v3 280
10.4.4 YOLO-v4 281
10.4.5 YOLO-v5 281
10.5 YOLO-v4原理與實現(xiàn) 283
10.5.1 主干特征提取網(wǎng)絡(luò) 283
10.5.2 特征金字塔 287
10.5.3 利用特征進(jìn)行預(yù)測 289
10.5.4 預(yù)測結(jié)果的解碼 290
10.5.5 在原始圖像上進(jìn)行繪制 295
10.6 YOLO-v4的技巧及損失函數(shù)分析 295
10.6.1 Mosaic數(shù)據(jù)增強 295
10.6.2 CIoU 299
10.6.3 損失函數(shù) 300
10.7 訓(xùn)練自己的YOLO-v4模型 307
10.7.1 數(shù)據(jù)集的準(zhǔn)備 307
10.7.2 數(shù)據(jù)集處理 307
10.7.3 網(wǎng)絡(luò)訓(xùn)練 308
10.7.4 訓(xùn)練結(jié)果預(yù)測 310
10.8 小結(jié) 310
10.9 練習(xí)題 310
10.10 在線練習(xí)題 310
第11章 深度強化學(xué)習(xí) 311
11.1 強化學(xué)習(xí) 311
11.1.1 強化學(xué)習(xí)的基本概念 312
11.1.2 馬爾可夫決策過程 313
11.1.3 Q學(xué)習(xí)算法 315
11.1.4 示例程序 317
11.2 深度強化學(xué)習(xí) 320
11.3 倒立擺的控制示例 321
11.3.1 仿真環(huán)境 322
11.3.2 第三方庫 322
11.3.3 經(jīng)驗回放內(nèi)存 323
11.3.4 Q網(wǎng)絡(luò) 324
11.3.5 輸入數(shù)據(jù)截取 324
11.3.6 超參數(shù)和工具函數(shù) 325
11.3.7 網(wǎng)絡(luò)訓(xùn)練 327
11.4 小結(jié) 329
11.5 練習(xí)題 330
11.6 在線練習(xí)題 330
參考文獻(xiàn) 331
術(shù)語表 333