機(jī)器學(xué)習(xí)基礎(chǔ)與實(shí)戰(zhàn)
定 價(jià):59.8 元
- 作者:陳鑫
- 出版時(shí)間:2023/5/1
- ISBN:9787121447945
- 出 版 社:電子工業(yè)出版社
- 中圖法分類(lèi):TP181
- 頁(yè)碼:304
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
全書(shū)共 10 章,第 1 章介紹了機(jī)器學(xué)習(xí)算法的基本概念、分類(lèi)及本書(shū)開(kāi)發(fā)環(huán)境的搭建。第 2 章介紹了機(jī)器學(xué)習(xí)算法中經(jīng)常用到的 NumPy 相關(guān)知識(shí)及繪圖工具包 Matplotlib。從第 3 章開(kāi)始介紹機(jī)器學(xué)習(xí)算法,第 3 章介紹了最簡(jiǎn)單也是最常用的線性回歸算法。第 4 章介紹了搜索算法,包括梯度下降算法、隨機(jī)梯度下降算法、小批量梯度下降算法、牛頓迭代算法及坐標(biāo)下降算法。第 5 章介紹了二分類(lèi)的 Logistic回歸算法和多元回歸算法 SoftMax,以及評(píng)價(jià)分類(lèi)結(jié)果優(yōu)劣的各種指標(biāo)。第 6 章介紹了支持向量機(jī)算法及支持向量機(jī)的核函數(shù)方法。第 7 章介紹了樸素貝葉斯算法。第 8 章介紹了決策樹(shù)優(yōu)化算法及由多棵決策樹(shù)構(gòu)成的隨機(jī)森林算法等集成學(xué)習(xí)算法。第 9 章介紹了聚類(lèi)算法,包括 K 均值算法、合并聚類(lèi)算法、DBSCAN 算法等。第 10 章介紹了降維算法,主要包括主成分分析法和主成分分析的核方法。每章都包含大量的實(shí)戰(zhàn)案例,既有自行實(shí)現(xiàn)的算法,也有直接調(diào)用 Sklearn 工具庫(kù)實(shí)現(xiàn)的算法。本書(shū)配備思考與練習(xí),全書(shū)所有的示例程序都提供完整的源代碼,讀者可登錄華信教育資源網(wǎng)或GitHub 網(wǎng)站免費(fèi)下載。本書(shū)適合作為人工智能、大數(shù)據(jù)等專業(yè)的學(xué)生教材,對(duì)于人工智能相關(guān)培訓(xùn)機(jī)構(gòu)、人工智能愛(ài)好者,也有一定的參考價(jià)值。
陳鑫,博士,畢業(yè)于中山大學(xué),廣東機(jī)電職業(yè)技術(shù)學(xué)院計(jì)算機(jī)與設(shè)計(jì)學(xué)院專職教師。中國(guó)計(jì)算機(jī)學(xué)會(huì)會(huì)員,著作方向?yàn)槿斯ぶ悄,曾出版《C++ 程序設(shè)計(jì)實(shí)踐案例教程》。主持基于深度學(xué)習(xí)的人臉識(shí)別考勤系統(tǒng)的設(shè)計(jì)與研究項(xiàng)目,參與國(guó)家重點(diǎn)基礎(chǔ)研究發(fā)展計(jì)劃(973 計(jì)劃)項(xiàng)目課題、廣東省自然科學(xué)基金重大基礎(chǔ)研究培育項(xiàng)目、中山大學(xué)高校基本科研業(yè)務(wù)費(fèi)2017 年度重大項(xiàng)目和前沿新興交叉學(xué)科培育資助計(jì)劃等重大項(xiàng)目。
第 1 章 機(jī)器學(xué)習(xí)算法概述 ………………………………………………………………… 1
1.1 機(jī)器學(xué)習(xí) …………………………………………………………………………… 1
1.2 機(jī)器學(xué)習(xí)分類(lèi) ……………………………………………………………………… 2
1.2.1 監(jiān)督學(xué)習(xí) …………………………………………………………………… 2
1.2.2 無(wú)監(jiān)督學(xué)習(xí) ………………………………………………………………… 2
1.2.3 強(qiáng)化學(xué)習(xí) …………………………………………………………………… 3
1.3 機(jī)器學(xué)習(xí)中的基本概念 …………………………………………………………… 3
1.4 機(jī)器學(xué)習(xí)環(huán)境搭建 ………………………………………………………………… 4
1.4.1 Python 安裝 ………………………………………………………………… 4
1.4.2 PyCharm 及相關(guān)包的下載安裝 …………………………………………… 6
1.4.3 JupyterLab …………………………………………………………………… 9
1.5 本章小結(jié) ……………………………………………………………………………12
思考與練習(xí)…………………………………………………………………………………12
第 2 章? NumPy 和 Matplotlib 入門(mén) ……………………………………………………… 13
2.1 NumPy 數(shù)組基礎(chǔ) ……………………………………………………………………13
2.1.1 創(chuàng)建 NumPy 數(shù)組……………………………………………………………14
2.1.2 NumPy 數(shù)組的索引與切片 …………………………………………………16
2.1.3 NumPy 數(shù)組的變形 …………………………………………………………18
2.1.4 NumPy 合并與分割 …………………………………………………………20
2.1.5 NumPy 的通用函數(shù) …………………………………………………………25
2.1.6 NumPy 數(shù)組的聚合運(yùn)算 ……………………………………………………27
2.1.7 NumPy 數(shù)組的廣播 …………………………………………………………28
2.1.8 NumPy 數(shù)組比較、掩碼和布爾邏輯 ………………………………………30
2.1.9 NumPy 花哨的索引 …………………………………………………………30
2.1.10 NumPy 的矩陣運(yùn)算 ………………………………………………………32
2.2 Matplotlib 數(shù)據(jù)可視化 ………………………………………………………………36
2.2.1 線形圖 ………………………………………………………………………36
2.2.2 散點(diǎn)圖 ………………………………………………………………………39
2.2.3 直方圖和柱狀圖 ……………………………………………………………41
2.2.4 等高線圖 ……………………………………………………………………43
2.2.5 多子圖 ………………………………………………………………………46
2.2.6 三維圖像 ……………………………………………………………………50
2.3 本章小結(jié) ……………………………………………………………………………53
思考與練習(xí)…………………………………………………………………………………53
第 3 章? 線性回歸算法 …………………………………………………………………… 54
3.1 簡(jiǎn)單線性回歸 ………………………………………………………………………54
3.2 正規(guī)方程算法(最小二乘法)………………………………………………………55
3.3 多項(xiàng)式回歸 …………………………………………………………………………61
3.4 線性回歸的正則化算法 ……………………………………………………………64
3.5 Sklearn 的線性回歸 …………………………………………………………………66
3.6 本章小結(jié) ……………………………………………………………………………69
思考與練習(xí)…………………………………………………………………………………69
第 4 章? 機(jī)器學(xué)習(xí)中的搜索算法 ………………………………………………………… 70
4.1 梯度下降算法 ………………………………………………………………………70
4.1.1 梯度下降算法概述 …………………………………………………………70
4.1.2 模擬實(shí)現(xiàn)梯度下降算法 ……………………………………………………71
4.1.3 線性回歸中的梯度下降算法 ………………………………………………73
4.2 隨機(jī)梯度下降算法 …………………………………………………………………75
4.2.1 回歸問(wèn)題中的隨機(jī)梯度下降算法 …………………………………………76
4.2.2 梯度下降算法與隨機(jī)梯度下降算法的效果對(duì)比 …………………………78
4.3 小批量梯度下降算法 ………………………………………………………………81
4.4 牛頓迭代算法 ………………………………………………………………………85
4.4.1 模擬實(shí)現(xiàn)牛頓迭代算法 ……………………………………………………85
4.4.2 線性回歸問(wèn)題中的牛頓迭代算法 …………………………………………87
4.5 坐標(biāo)下降算法 ………………………………………………………………………88
4.6 Sklearn 的隨機(jī)梯度下降算法 ………………………………………………………90
4.7 本章小結(jié) ……………………………………………………………………………96
思考與練習(xí)…………………………………………………………………………………96
第 5 章? Logistic 回歸算法 ………………………………………………………………… 97
5.1 Logistic 回歸的基本概念 ……………………………………………………………97
5.1.1 Sigmoid() 函數(shù) ………………………………………………………………97
5.1.2 Logistic 模型 …………………………………………………………………98
5.2 Logistic 回歸算法的應(yīng)用 ……………………………………………………………99
5.3 評(píng)價(jià)分類(lèi)結(jié)果 …………………………………………………………………… 103
5.3.1 準(zhǔn)確率(Accuracy)……………………………………………………… 103
5.3.2 精確率 (Precision) 和召回率 (Recall) …………………………………… 104
5.3.3 ROC 曲線和 AUC 度量 ………………………………………………… 115
5.4 多元回歸算法 SoftMax…………………………………………………………… 118
5.4.1 SoftMax 回歸基本概念 ………………………………………………… 119
5.4.2 SoftMax 回歸優(yōu)化算法 ………………………………………………… 120
5.5 Sklearn 的 Logistic 回歸算法 …………………………………………………… 126
5.6 本章小結(jié) ………………………………………………………………………… 130
思考與練習(xí)……………………………………………………………………………… 130
第 6 章? 支持向量機(jī)算法 ………………………………………………………………… 132
6.1 支持向量機(jī)的基本概念 ………………………………………………………… 132
6.1.1 感知機(jī) …………………………………………………………………… 132
6.1.2 支持向量機(jī) ……………………………………………………………… 137
6.1.3 支持向量機(jī)的對(duì)偶 ……………………………………………………… 138
6.2 支持向量機(jī)優(yōu)化算法 …………………………………………………………… 139
6.3 核方法 …………………………………………………………………………… 144
6.4 軟間隔支持向量機(jī) ……………………………………………………………… 153
6.4.1 軟間隔支持向量機(jī)的概念 ……………………………………………… 153
6.4.2 Hinge 損失函數(shù)與軟間隔支持向量機(jī)…………………………………… 156
6.5 Sklearn 的 SVM 庫(kù) ……………………………………………………………… 159
6.5.1 Sklearn SVM 算法庫(kù)使用概述…………………………………………… 159
6.5.2 SVM 核函數(shù)概述 ………………………………………………………… 159
6.5.3 SVM 分類(lèi)算法的使用 …………………………………………………… 160
6.5.4 SVM 算法的調(diào)參要點(diǎn) …………………………………………………… 162
6.6 本章小結(jié) ………………………………………………………………………… 174
思考與練習(xí)……………………………………………………………………………… 174
第 7 章? 樸素貝葉斯算法 ………………………………………………………………… 175
7.1 樸素貝葉斯 ……………………………………………………………………… 175
7.1.1 數(shù)學(xué)基礎(chǔ) ………………………………………………………………… 175
7.1.2 樸素貝葉斯的種類(lèi) ……………………………………………………… 176
7.2 樸素貝葉斯算法分類(lèi) …………………………………………………………… 177
7.2.1 基于極大似然估計(jì)的樸素貝葉斯算法 ………………………………… 178
7.2.2 基于貝葉斯估計(jì)的樸素貝葉斯算法 …………………………………… 180
7.3 Sklearn 的樸素貝葉斯算法 ……………………………………………………… 183
7.3.1 Sklearn 的高斯樸素貝葉斯實(shí)現(xiàn) ………………………………………… 183
7.3.2 Sklearn 的多項(xiàng)式樸素貝葉斯實(shí)現(xiàn) ……………………………………… 184
7.3.3 Sklearn 的伯努利樸素貝葉斯實(shí)現(xiàn) ……………………………………… 186
7.4 本章小結(jié) ………………………………………………………………………… 188
思考與練習(xí)……………………………………………………………………………… 188
第 8 章? 決策樹(shù)算法 ……………………………………………………………………… 189
8.1 決策樹(shù)的基本概念 ……………………………………………………………… 189
8.2 決策樹(shù)優(yōu)化算法 ………………………………………………………………… 194
8.2.1 決策樹(shù)回歸問(wèn)題的 CART 算法 ………………………………………… 195
8.2.2 決策樹(shù)分類(lèi)問(wèn)題的 CART 算法 ………………………………………… 196
8.3 CART 算法的實(shí)現(xiàn) ……………………………………………………………… 198
8.3.1 決策樹(shù) CART 算法實(shí)現(xiàn) ………………………………………………… 198
8.3.2 決策樹(shù)回歸算法實(shí)現(xiàn) …………………………………………………… 201
8.3.3 決策樹(shù)分類(lèi)算法實(shí)現(xiàn) …………………………………………………… 204
8.4 Sklearn 的決策樹(shù) ………………………………………………………………… 207
8.5 集成學(xué)習(xí)算法 …………………………………………………………………… 214
8.5.1 裝袋評(píng)估算法 …………………………………………………………… 215
8.5.2 隨機(jī)森林算法 …………………………………………………………… 218
8.5.3 AdaBoost 提升 …………………………………………………………… 221
8.5.4 梯度提升決策樹(shù) ………………………………………………………… 227
8.6 本章小結(jié) ………………………………………………………………………… 232
思考與練習(xí)……………………………………………………………………………… 232
第 9 章? 聚類(lèi)算法 ………………………………………………………………………… 233
9.1 K 均值算法 ……………………………………………………………………… 233
9.2 合并聚類(lèi)算法 …………………………………………………………………… 238
9.3 DBSCAN 算法 …………………………………………………………………… 246
9.4 Sklearn 的聚類(lèi)算法 ……………………………………………………………… 252
9.4.1 K 均值算法(Kmeans) ………………………………………………… 252
9.4.2 近鄰傳播算法(Affinity Propagation) ………………………………… 258
9.4.3 均值漂移算法(Mean-shift) …………………………………………… 261
9.4.4 合并聚類(lèi)算法(Agglomerative Clustering) …………………………… 263
9.4.5 帶噪聲的基于密度的空間聚類(lèi)算法(DBSCAN)……………………… 268
9.5 本章小結(jié) ………………………………………………………………………… 272
思考與練習(xí)……………………………………………………………………………… 272
第 10 章? 降維算法 ………………………………………………………………………… 273
10.1 主成分分析法 …………………………………………………………………… 273
10.1.1 算法思想 ………………………………………………………………… 273
10.1.2 主成分分析法的實(shí)現(xiàn) …………………………………………………… 276
10.2 主成分分析的核方法 …………………………………………………………… 278
10.3 Sklearn 的主成分分析法 ……………………………………………………… 281
10.3.1 Sklearn 的 PCA 算法 …………………………………………………… 281
10.3.2 Sklearn 的帶核 PCA 算法 ……………………………………………… 284
10.4 本章小結(jié) ………………………………………………………………………… 290
思考與練習(xí)……………………………………………………………………………… 290