Python機器學習算法: 原理、實現與案例

Python機器學習算法: 原理、實現與案例

作者: 劉碩
出版社: 清華大學
出版在: 2019-11-01
ISBN-13: 9787302536505
ISBN-10: 7302536503





內容描述


本書用平實的語言深入淺出地介紹當前熱門的機器學習經典算法,包括線性回歸、Logistic回歸與Softmax回歸、決策樹(分類與回歸)、樸素貝葉斯、支持向量機、K近鄰學習、K-Means和人工神經網絡,針對每一個算法首先介紹數學模型及原理,然後根據模型和算法描述使用Python編程和Numpy庫進行算法實現,最後通過案例讓讀者進一步體會算法的應用場景以及應用時所需註意的問題。 本書適合準備進入人工智能和數據分析與挖掘領域的初學者,對機器學習算法感興趣的愛好者、程序員、大學生和各類IT培訓班的學員使用。


目錄大綱


目 錄
第1章 線性回歸 1
1.1 線性回歸模型 1
1.2 最小二乘法 2
1.3 梯度下降 4
1.3.1 梯度下降算法 4
1.3.2 隨機梯度下降和小批量梯度下降 6
1.4 算法實現 7
1.4.1 最小二乘法 7
1.4.2 梯度下降 9
1.5 項目​​實戰 12
1.5.1 準備數據 12
1.5.2 模型訓練與測試 13
第2章 Logistic回歸與Softmax回歸 20
2.1 Logistic回歸 20
2.1.1 線性模型 20
2.1.2 logistic函數 21
2.1.3 Logistic回歸模型 23
2.1.4 極大似然法估計參數 24
2.1.5 梯度下降更新公式 25
2.2 Softmax回歸 26
2.2.1 Softmax函數 26
2.2.2 Softmax回歸模型 27
2.2.3 梯度下降更新公式 27
2.3 編碼實現 28
2.3.1 Logistic回歸 28
2.3.2 Softmax回歸 32
2.4 項目實戰 36
2.4.1 Logistic回歸 36
2.4.2 Softmax回歸 43
第3章 決策樹——分類樹 46
3.1 決策樹模型 46
3.2 生成決策樹 48
3.3 切分特徵的選擇 49
3.3.1 信息熵 49
3.3.2 條件信息熵 50
3.3.3 信息增益 51
3.3.4 信息增益比 53
3.4 算法實現 53
3.5 繪製決策樹 57
3.6 項目實戰 64
3.6.1 準備數據 64
3.6.2 模型訓練與測試 66
第4章 決策樹——分類回歸樹 70
4.1 CART算法的改進 70
4.2 處理連續值特徵 71
4.3 CART分類樹與回歸樹 72
4.3.1 CART分類樹 72
4.3.2 CART回歸樹 74
4.4 算法實現 75
4.4.1 CART分類樹 75
4.4.2 CART回歸樹 80
4.5 項目​​實戰 85
4.5.1 CART分類樹 85
4.5.2 CART回歸樹 89
第5章 樸素貝葉斯 95
5.1 樸素貝葉斯模型 95
5.1.1 貝葉斯公式 95
5.1.2 貝葉斯分類器 97
5.1.3 樸素貝葉斯分類器 97
5.2 模型參數估計 98
5.2.1 極大似然估計 98
5.2.2 貝葉斯估計 102
5.3 算法實現 103
5.4 項目實戰 105
5.4.1 準備數據 106
5.4.2 模型訓練與測試 108
第6章 支持向量機 110
6.1 線性可分支持向量機 110
6.1.1 分離超平面 110
6.1.2 間隔最大化 112
6.1.3 拉格朗日對偶法 113
6.1.4 分類決策函數 116
6.1.5 線性可分支持向量機算法 117
6.2 線性支持向量機 118
6.2.1 軟間隔最大化 118
6.2.2 線性支持向量機算法 121
6.3 非線性支持向量機 122
6.3.1 空間變換 122
6.3.2 核技巧 123
6.3.3 非線性支持向量機算法 124
6.4 SMO算法 125
6.4.1 兩個變量最優化問題的求解 126
6.4.2 變量選擇 129
6.4.3 更新b 131
6.4.4 更新E緩存 132
6.5 算法實現 133
6.6 項目實戰 139
6.6.1 準備數據 140
6.6.2 模型訓練與測試 141
第7章 k近鄰學習 145
7.1 kNN學習 145
7.1.1 kNN學習模型 145
7.1.2 距離的度量 146
7.1.3 k值的選擇 149
7.2 kNN的一種實現:kd樹 150
7.2.1 構造kd樹 150
7.2.2 搜索kd樹 153
7.3 算法實現 155
7.3.1 線性掃描版本 155
7.3.2 kd樹版本 157
7.4 項目實戰 161
7.4.1 準備數據 162
7.4.2 模型訓練與測試 163
第8章 K-Means 167
8.1 K-Means 167
8.1.1 距離的度量 168
8.1.2 聚類算法的性能 169
8.1.3 K-Means算法 171
8.2 K-Means++ 172
8.3 算法實現 173
8.3.1 K-Means 173
8.3.2 K-Means++ 176
8.4 項目實戰 179
8.4.1 準備數據 180
8.4.2 模型訓練與測試 181
第9章 人工神經網絡 184
9.1 神經網絡 184
9.1.1 人造神經元 184
9.1.2 神經網絡 187
9.2 反向傳播算法 188
9.2.1 輸出節點的權值更新 189
9.2.2 隱藏節點的權值更新 190
9.3 算法實現 192
9.3.1 神經網絡分類器 192
9.3.2 神經網絡回歸器 196
9.4 項目實戰 202
9.4.1 準備數據 203
9.4.2 模型訓練與測試 206


作者介紹


劉碩,碩士,曾就職於知名外企,從事一線開發工作10年,目前主要從事Python開發與教學及機器學習算法的研究工作,在慕課網開設有多門Python課程,深受學員歡迎。




相關書籍

Practical Data Analysis using Jupyter Notebook

作者 Marc Wintjen Andrew Vlahutin

2019-11-01

R語言實用教程

作者 薛毅 陳立萍

2019-11-01

Hands-On Reinforcement Learning for Games

作者 Lanham Micheal

2019-11-01