本書系統(tǒng)介紹了機(jī)器學(xué)習(xí)的基本內(nèi)容及其代碼實現(xiàn),是一本著眼于機(jī)器學(xué)教學(xué)實踐的圖書。本書含4個部分:第一部分為機(jī)器學(xué)基礎(chǔ),介紹了機(jī)器學(xué)的概念、數(shù)學(xué)基礎(chǔ)、思想方法和簡單的機(jī)器學(xué)算法;第二部分為參數(shù)化模型,講解線性模型、經(jīng)網(wǎng)絡(luò)等算法;第三部分為非參數(shù)化模型,主要討論支持向量機(jī)和決策樹模型及其變種;第四部分為無監(jiān)督模型,涉及聚類、降維、概率圖模型等多個方面。本書將機(jī)器學(xué)理論和實踐相結(jié)合,以大量示例和代碼帶領(lǐng)讀者走進(jìn)機(jī)器學(xué)的,讓讀者對機(jī)器學(xué)的研究內(nèi)容、基本原理有基本認(rèn)識,為后續(xù)進(jìn)一步涉足深度學(xué)打下基礎(chǔ)。
第 一部分 機(jī)器學(xué)習(xí)基礎(chǔ)
第 1 章 初探機(jī)器學(xué)習(xí) 2
1 1 人工智能的“兩只手和四條腿” 2
1 2 機(jī)器學(xué)習(xí)是什么 2
1 3 時代造就機(jī)器學(xué)習(xí)的盛行 4
1 4 泛化能力:機(jī)器學(xué)習(xí)奏效的本質(zhì) 5
1 5 歸納偏置:機(jī)器學(xué)習(xí)模型的“天賦” 6
1 6 機(jī)器學(xué)習(xí)的限制 7
1 7 小結(jié) 7
第 2 章 機(jī)器學(xué)習(xí)的數(shù)學(xué)基礎(chǔ) 8
2 1 向量 8
2 2 矩陣 10
2 2 1 矩陣的基本概念 10
2 2 2 矩陣運(yùn)算 11
2 2 3 矩陣與線性方程組12
2 2 4 矩陣范數(shù) 13
2 3 梯度 14
2 4 凸函數(shù) 17
2 5 小結(jié) 19
第 3 章 k近鄰算法 20
3 1 KNN算法的原理 20
3 2 用KNN算法完成分類任務(wù) 21
3 3 使用scikit-learn實現(xiàn)KNN算法 24
3 4 用KNN算法完成回歸任務(wù)--色彩風(fēng)格遷移 25
3 4 1 RGB空間與LAB空間 27
3 4 2 算法設(shè)計 27
3 5 小結(jié) 30
第 4 章 線性回歸 33
4 1 線性回歸的映射形式和學(xué)習(xí)目標(biāo) 33
4 2 線性回歸的解析方法 35
4 3 動手實現(xiàn)線性回歸的解析方法 35
4 4 使用sklearn中的線性回歸模型 37
4 5 梯度下降算法 38
4 6 學(xué)習(xí)率對迭代的影響 42
4 7 小結(jié) 44
第 5 章 機(jī)器學(xué)習(xí)的基本思想 46
5 1 欠擬合與過擬合 46
5 2 正則化約束 49
5 3 輸入特征與相似度 52
5 4 參數(shù)與超參數(shù) 55
5 5 數(shù)據(jù)集劃分與交叉驗證 56
5 6 小結(jié) 57
5 7 擴(kuò)展閱讀:貫穿恒等式的證明 58
5 8 參考文獻(xiàn) 58
第二部分 參數(shù)化模型
第 6 章 邏輯斯諦回歸 60
6 1 邏輯斯諦函數(shù)下的線性模型 61
6 2 最大似然估計 62
6 3 分類問題的評價指標(biāo) 64
6 4 動手實現(xiàn)邏輯斯諦回歸 69
6 5 使用sklearn中的邏輯斯諦回歸模型 73
6 6 交叉熵與最大似然估計 74
6 7 小結(jié) 76
6 8 擴(kuò)展閱讀:廣義線性模型 78
6 9 參考文獻(xiàn) 79
第 7 章 雙線性模型 80
7 1 矩陣分解 81
7 2 動手實現(xiàn)矩陣分解模型 83
7 3 因子分解機(jī) 86
7 4 動手實現(xiàn)因子分解機(jī)模型 89
7 5 小結(jié) 92
7 6 擴(kuò)展閱讀:概率矩陣分解 93
7 7 參考文獻(xiàn) 95
第 8 章 神經(jīng)網(wǎng)絡(luò)與多層感知機(jī) 96
8 1 人工神經(jīng)網(wǎng)絡(luò) 96
8 2 感知機(jī) 97
8 3 隱含層與多層感知機(jī) 99
8 4 反向傳播 102
8 5 動手實現(xiàn)多層感知機(jī) 104
8 6 用PyTorch庫實現(xiàn)多層感知機(jī) 110
8 7 小結(jié) 113
8 8 參考文獻(xiàn) 114
第 9 章 卷積神經(jīng)網(wǎng)絡(luò) 115
9 1 卷積 115
9 2 神經(jīng)網(wǎng)絡(luò)中的卷積 117
9 3 用卷積神經(jīng)網(wǎng)絡(luò)完成圖像分類任務(wù) 119
9 4 用預(yù)訓(xùn)練的卷積神經(jīng)網(wǎng)絡(luò)完成色彩風(fēng)格遷移 126
9 4 1 VGG網(wǎng)絡(luò) 126
9 4 2 內(nèi)容表示與風(fēng)格表示 127
9 5 小結(jié) 134
9 6 擴(kuò)展閱讀:數(shù)據(jù)增強(qiáng) 134
9 7 參考文獻(xiàn) 136
第 10 章 循環(huán)神經(jīng)網(wǎng)絡(luò) 137
10 1 循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理 137
10 2 門控循環(huán)單元 139
10 3 動手實現(xiàn)GRU 141
10 4 小結(jié) 146
10 5 參考文獻(xiàn) 147
第三部分 非參數(shù)化模型
第 11 章 支持向量機(jī) 150
11 1 支持向量機(jī)的數(shù)學(xué)描述 150
11 2 序列最小優(yōu)化 153
11 3 動手實現(xiàn)SMO求解SVM 156
11 4 核函數(shù) 158
11 5 sklearn中的SVM工具 162
11 6 小結(jié) 163
11 7 擴(kuò)展閱讀:SVM對偶問題的推導(dǎo) 164
第 12 章 決策樹 167
12 1 決策樹的構(gòu)造 168
12 2 ID3算法與C4 5算法 171
12 3 CART算法 172
12 4 動手實現(xiàn)C4 5算法的決策樹 175
12 4 1 數(shù)據(jù)集處理 175
12 4 2 C4 5算法的實現(xiàn) 178
12 5 sklearn中的決策樹 182
12 6 小結(jié) 183
12 7 參考文獻(xiàn) 184
第 13 章 集成學(xué)習(xí)與梯度提升決策樹 185
13 1 自舉聚合與隨機(jī)森林 186
13 2 集成學(xué)習(xí)器 191
13 3 提升算法 194
13 3 1 適應(yīng)提升 195
13 3 2 梯度提升 200
13 4 小結(jié) 205
13 5 參考文獻(xiàn) 206
第四部分 無監(jiān)督模型
第 14 章 k均值聚類 208
14 1 k均值聚類算法的原理 208
14 2 動手實現(xiàn)k均值算法 209
14 3 k-means++算法 212
14 4 小結(jié) 214
14 5 參考文獻(xiàn) 215
第 15 章主成分分析 216
15 1 主成分與方差 216
15 2 利用特征分解進(jìn)行PCA 218
15 3 動手實現(xiàn)PCA算法 221
15 4 用sklearn實現(xiàn)PCA算法222
15 5 小結(jié) 223
第 16 章 概率圖模型 225
16 1 貝葉斯網(wǎng)絡(luò) 226
16 2 最大后驗估計 228
16 3 用樸素貝葉斯模型完成文本分類 231
16 4 馬爾可夫網(wǎng)絡(luò) 234
16 5 用馬爾可夫網(wǎng)絡(luò)完成圖像去噪 236
16 6 小結(jié) 240
16 7 參考文獻(xiàn) 241
第 17 章 EM算法 242
17 1 高斯混合模型的EM算法 243
17 2 動手求解GMM來擬合數(shù)據(jù)分布 245
17 3 一般情況下的EM算法 251
17 4 EM算法的收斂性 253
17 5 小結(jié) 254
第 18 章 自編碼器 255
18 1 自編碼器的結(jié)構(gòu) 256
18 2 動手實現(xiàn)自編碼器 257
18 3 小結(jié) 262
18 4 參考文獻(xiàn) 262
總結(jié)與展望264
總結(jié) 264
展望 264
中英文術(shù)語對照表 267