Python機(jī)器學(xué)習(xí)核心算法編程實(shí)例
定 價(jià):78 元
- 作者:丁偉雄
- 出版時(shí)間:2020/1/1
- ISBN:9787121382475
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.561;TP181
- 頁(yè)碼:364
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
在大數(shù)據(jù)時(shí)代背景下,機(jī)器學(xué)習(xí)是人工智能研究領(lǐng)域中一個(gè)極其重要的方向,本書是一本機(jī)器學(xué)習(xí)方面的入門讀物,注重理論與實(shí)踐相結(jié)合,書中以Python 3.6.5為編寫平臺(tái),共分13章,主要包括機(jī)器學(xué)習(xí)緒論、線性模型、樹(shù)回歸、K-means聚類算法、樸素貝葉斯、數(shù)據(jù)降維、支持向量機(jī)、隨機(jī)森林、人工神經(jīng)網(wǎng)絡(luò)、協(xié)同過(guò)濾算法、基于矩陣分解的推薦算法、集成學(xué)習(xí)、數(shù)據(jù)預(yù)處理等內(nèi)容。通過(guò)本書的學(xué)習(xí),除使讀者輕松掌握Python外,還能利用Python簡(jiǎn)單、快捷地解決各種機(jī)器學(xué)習(xí)問(wèn)題。本書適合Python初學(xué)者,也適合研究Python的廣大科研人員、學(xué)者、工程技術(shù)人員。
丁偉雄(1971年生),男,北京航空航天大學(xué)畢業(yè),佛山科學(xué)技術(shù)學(xué)院創(chuàng)業(yè)學(xué)院副院長(zhǎng),高級(jí)實(shí)驗(yàn)師。研究方向:計(jì)算機(jī)應(yīng)用技術(shù)。編寫的圖書實(shí)例豐富,實(shí)用性強(qiáng)。
目 錄
第1章 機(jī)器學(xué)習(xí)緒論 1
1.1 機(jī)器學(xué)習(xí)的定義 1
1.1.1 緒論 1
1.1.2 機(jī)器學(xué)習(xí)發(fā)展歷程 2
1.1.3 機(jī)器學(xué)習(xí)算法的分類 3
1.2 學(xué)習(xí)算法 4
1.2.1 監(jiān)督學(xué)習(xí) 4
1.2.2 無(wú)監(jiān)督學(xué)習(xí) 5
1.3 機(jī)器學(xué)習(xí)應(yīng)用程序的步驟 6
1.4 Python語(yǔ)言 7
1.4.1 Python的風(fēng)格 7
1.4.2 Python的優(yōu)勢(shì) 7
1.4.3 Python語(yǔ)言的缺點(diǎn) 8
1.5 Python的環(huán)境搭建 9
1.5.1 安裝 10
1.5.2 使用pip安裝第三方庫(kù) 13
1.6 NumPy函數(shù)庫(kù)基礎(chǔ) 14
1.7 Python的基礎(chǔ)知識(shí) 16
1.7.1 數(shù)和表達(dá)式 16
1.7.2 Python的標(biāo)識(shí)符 18
1.7.3 Python的保留字符 19
1.7.4 行和縮進(jìn) 19
1.7.5 多行語(yǔ)句 20
1.7.6 Python引號(hào) 20
1.7.7 Python空行 20
1.7.8 同一行顯示多條語(yǔ)句 20
1.7.9 Print輸出 21
第2章 線性模型 22
2.1 一般線性回歸 23
2.1.1 線性回歸公式表示法 23
2.1.2 線性回歸的Python實(shí)現(xiàn) 25
2.2 局部加權(quán)線性回歸 27
2.3 廣義線性模型 30
2.4 邏輯回歸分析 36
2.5 牛頓法 40
2.5.1 基本牛頓法的原理 40
2.5.2 基本牛頓法的流程 40
2.5.3 全局牛頓法 40
2.5.4 Armijo搜索 42
2.5.5 全局牛頓法求解線性回歸模型 42
2.6 縮減法 43
2.6.1 嶺回歸 44
2.6.2 lasso回歸 46
2.7 利用線性回歸進(jìn)行預(yù)測(cè) 47
2.7.1 訓(xùn)練線性回歸模型 47
2.7.2 對(duì)新數(shù)據(jù)的預(yù)測(cè) 49
第3章 樹(shù)回歸 51
3.1 構(gòu)建決策樹(shù)的準(zhǔn)備工作 52
3.1.1 特征選擇 52
3.1.2 決策樹(shù)的生成和修剪 60
3.2 Matplotlib注釋繪制樹(shù)形圖 60
3.3 使用決策樹(shù)執(zhí)行分類 67
3.4 決策樹(shù)的存儲(chǔ) 71
3.5 Sklearn使用決策樹(shù)預(yù)測(cè)隱形眼鏡類型 73
3.5.1 實(shí)戰(zhàn)背景 73
3.5.2 使用Sklearn構(gòu)建決策樹(shù) 73
3.6 復(fù)雜數(shù)據(jù)的局部性建模 80
3.7 連續(xù)型和離散型特征的樹(shù)構(gòu)建 81
3.8 分類回歸樹(shù) 82
3.8.1 構(gòu)建樹(shù) 83
3.8.2 剪枝 85
3.8.3 模型樹(shù) 87
3.8.4 分類回歸的Python實(shí)現(xiàn) 88
第4章 K-means聚類算法 92
4.1 K-means聚類算法的概述 92
4.2 相似性的度量 93
4.2.1 閔可夫斯基距離 93
4.2.2 曼哈頓距離 93
4.2.3 歐氏距離 93
4.3 K-means聚類算法的原理 94
4.3.1 K-means聚類算法的步驟 94
4.3.2 K-means算法與矩陣分解 95
4.3.3 K-means聚類算法的實(shí)現(xiàn) 96
4.4 K-近鄰算法 104
4.5 各種聚類算法 107
4.5.1 劃分聚類法 107
4.5.2 層次聚類法 108
4.5.3 密度聚類法 111
4.5.4 譜聚類法 116
4.5.5 Birch聚類 119
4.5.6 混合高斯模型 121
4.6 K-means++算法 122
4.6.1 K-means算法存在的問(wèn)題 122
4.6.2 K-means++算法的思路 123
第5章 樸素貝葉斯 127
5.1 樸素貝葉斯理論 127
5.1.1 貝葉斯決策理論 127
5.1.2 條件概率 128
5.1.3 全概率公式 128
5.1.4 貝葉斯推斷 129
5.1.5 樸素貝葉斯推斷 130
5.2 樸素貝葉斯算法 131
5.3 樸素貝葉斯算法的優(yōu)缺點(diǎn) 140
第6章 數(shù)據(jù)降維 141
6.1 維度災(zāi)難與降維 141
6.2 高維數(shù)據(jù)降維的方法 141
6.2.1 線性降維 142
6.2.2 非線性降維 146
6.2.3 SVD降維 153
6.2.4 流形學(xué)習(xí)降維 159
6.2.5 多維縮放降維 166
第7章 支持向量機(jī) 170
7.1 支持向量機(jī)概述 170
7.2 分類間隔 171
7.2.1 函數(shù)間距 172
7.2.2 幾何間距 173
7.3 拉格朗日乘子 175
7.3.1 拉格朗日對(duì)偶性 175
7.3.2 優(yōu)化間隔分類器 176
7.4 核函數(shù) 178
7.4.1 核函數(shù)的選擇 180
7.4.2 松弛向量與軟間隔最大化 180
7.5 SOM算法 181
7.5.1 坐標(biāo)上升算法 182
7.5.2 SOM 182
7.6 SVM的優(yōu)缺點(diǎn) 185
7.7 SVM的Python實(shí)現(xiàn) 185
第8章 隨機(jī)森林 192
8.1 什么是隨機(jī)森林 192
8.2 集成學(xué)習(xí) 192
8.2.1 集成學(xué)習(xí)的思想 193
8.2.2 集成學(xué)習(xí)中的典型方法 193
8.3 Stacking 194
8.3.1 Stacking的基本思想 194
8.3.2 Stacking的實(shí)現(xiàn) 195
8.4 隨機(jī)森林算法 198
8.4.1 隨機(jī)森林的特點(diǎn) 198
8.4.2 隨機(jī)森林算法流程 199
8.5 隨機(jī)森林算法實(shí)踐 201
8.6 美國(guó)人口普查年收入50k分類 207
8.6.1 數(shù)據(jù)預(yù)處理 208
8.6.2 模型訓(xùn)練及驗(yàn)證 212
第9章 人工神經(jīng)網(wǎng)絡(luò) 217
9.1 感知機(jī)模型 217
9.1.1 感知機(jī)的定義 217
9.1.2 感知機(jī)的學(xué)習(xí)策略 218
9.1.3 感知機(jī)學(xué)習(xí)算法 218
9.1.4 感知機(jī)的Python實(shí)現(xiàn) 226
9.2 從感知機(jī)到神經(jīng)網(wǎng)絡(luò) 236
9.3 多層前饋神經(jīng)網(wǎng)絡(luò) 238
9.3.1 BP網(wǎng)絡(luò)算法 241
9.3.2 BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過(guò)程 244
9.3.3 BP神經(jīng)網(wǎng)絡(luò)中參數(shù)的設(shè)置 249
9.4 神經(jīng)網(wǎng)絡(luò)的Python實(shí)現(xiàn) 253
第10章 協(xié)同過(guò)濾算法 272
10.1 協(xié)同過(guò)濾的核心 272
10.2 協(xié)同過(guò)濾的分類 272
10.3 相似性的度量方法 273
10.3.1 歐氏距離 273
10.3.2 皮爾遜相關(guān)系數(shù) 273
10.3.3 余弦相似度 274
10.3.4 用Python實(shí)現(xiàn)余弦相似度的計(jì)算 274
10.4 基于用戶的協(xié)同過(guò)濾算法 275
10.4.1 基于物品的協(xié)同過(guò)濾算法 275
10.4.2 基于矩陣分解的協(xié)同過(guò)濾算法 276
10.4.3 Python實(shí)現(xiàn) 276
10.5 基于項(xiàng)的協(xié)同過(guò)濾算法 280
10.6 利用協(xié)同過(guò)濾算法進(jìn)行推薦 281
10.6.1 導(dǎo)入用戶-商品數(shù)據(jù) 281
10.6.2 利用基于用戶的協(xié)同過(guò)濾算法進(jìn)行推薦 282
10.6.3 利用基于項(xiàng)的協(xié)同過(guò)濾算法進(jìn)行推薦 283
第11章 基于矩陣分解的推薦算法 285
11.1 矩陣分解 285
11.2 利用矩陣分解進(jìn)行預(yù)測(cè) 286
11.2.1 損失函數(shù) 286
11.2.2 損失函數(shù)的求解 286
11.2.3 加入正則項(xiàng)的損失函數(shù)即求解方法 286
11.2.4 預(yù)測(cè) 288
11.2.5 程序?qū)崿F(xiàn) 289
11.3 非負(fù)矩陣分解 291
11.3.1 非負(fù)矩陣分解的形式定義 291
11.3.2 損失函數(shù) 291
11.3.3 優(yōu)化問(wèn)題的求解 292
11.3.4 利用乘法規(guī)則進(jìn)行分解和預(yù)測(cè) 294
11.4 基于矩陣分解的推薦方法 295
11.4.1 LFM法 295
11.4.2 SVD法 298
11.4.3 SVD++法 300
第12章 集成學(xué)習(xí) 304
12.1 集成學(xué)習(xí)的原理及誤差 304
12.2 集成學(xué)習(xí)方法 305
12.2.1 Boosting算法 305
12.2.2 AdaBoost算法 305
12.2.3 AdaBoost與加法模型 309
12.2.4 提升樹(shù) 310
12.2.5 Bagging算法 313
12.2.6 誤差-分歧分解 314
12.2.7 多樣性增強(qiáng) 315
12.2.8 Stacking算法 316
12.3 Python實(shí)現(xiàn) 317
第13章 數(shù)據(jù)預(yù)處理 322
13.1 數(shù)據(jù)預(yù)處理概述 322
13.1.1 為什么要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理 322
13.1.2 數(shù)據(jù)預(yù)處理的主要任務(wù) 323
13.2 去除唯一屬性 323
13.3 處理缺失值 324
13.3.1 直接使用 324
13.3.2 刪除特征 324
13.3.3 缺失值補(bǔ)全 324
13.3.4 數(shù)據(jù)清理 328
13.3.5 特征編碼 330
13.3.6 數(shù)據(jù)標(biāo)準(zhǔn)化 331
13.3.7 正則化 332
13.3.8 特征選擇 333
13.3.9 稀疏表示和字典學(xué)習(xí) 335
13.4 Python實(shí)現(xiàn) 337
參考文獻(xiàn) 352