Python機器學習實戰
內容描述
機器學習是近年來比較熱門的一個領域,Python語言經過一段時間的發展也已逐漸成為主流的編程語言之一。
本書結合了機器學習和Python語言兩個熱門的領域,通過實用案例來詳細講解機器學習的相關知識,
以便更好地引起讀者的閱讀興趣且幫助讀者理解相關內容。
全書共有8章。
第1章講解了Python和機器學習的基礎知識,
第2~7章通過多個案例詳細講解了文本分析算法、樸素貝葉斯、支持向量機、對率回歸及回歸算法等知識,
案例主要包括探索新聞組數據集、檢測垃圾郵件、微新聞話題分類、預測點擊率以及預測股價等。
第8章是最佳實踐,主要介紹機器學習方案的整個工作流的最佳實踐。
本書適合Python程序員、數據分析人員、機器學習領域的從業人員以及對算法感興趣的讀者閱讀。
目錄大綱
第 1章 開始Python和機器學習之旅 1
1.1 什麽是機器學習?我們為什麽需要它 2
1.2 機器學習概覽 4
1.3 機器學習算法發展簡史 6
1.4 從數據中泛化的能力 7
1.5 過擬合、欠擬合及偏差和方差的權衡 8
1.5.1 用交叉檢驗避免過擬合 10
1.5.2 用正則化避免過擬合 12
1.6 通過特徵選取和降維避免過擬合 14
1.7 預處理、探索和特徵工程 15
1.7.1 缺失值 16
1.7.2 標簽編碼 17
1.7.3 一位有效編碼 17
1.7.4 調整數值範圍 18
1.7.5 多項式特徵 18
1.7.6 冪次轉換 18
1.7.7面元劃分 19
1.8 模型組合 19
1.8.1 Bagging 20
1.8.2 Boosting 20
1.8.3 Stacking 20
1.8.4 Blending 21
1.8.5 投票和平均法 21
1.9 安裝和設置軟件 21
1.10 問題解決和尋求幫助 22
1.11 小結 23
第 2章 用文本分析算法探索20個新聞組數據集 24
2.1 什麽是NLP 25
2.2 強大的Python NLP庫之旅 27
2.3 新聞組數據集 31
2.4 獲取數據 31
2.5 思考特徵 32
2.6 可視化 35
2.7 數據預處理 39
2.8 聚類 42
2.9 話題建模 44
2.10 小結 48
第3章 用樸素貝葉斯檢測垃圾郵件 50
3.1 開始分類之旅 51
3.2 分類的類型 51
3.3 文本分類應用 53
3.4 探索樸素貝葉斯 54
3.5 貝葉斯定理實例講解 54
3.6 樸素貝葉斯原理 56
3.7 樸素貝葉斯的實現 59
3.8 分類器性能評估 70
3.9 模型調試和交叉檢驗 74
3.10 小結 77
第4章 用支持向量機為新聞話題分類 79
4.1 回顧先前內容和介紹逆文檔頻率 80
4.2 SVM 81
4.2.1 SVM的原理 82
4.2.2 SVM的實現 86
4.2.3 SVM內核 92
4.2.4 線性和RBF內核的選擇 95
4.3 用SVM為新聞話題分類 96
4.4 更多示例—用SVM根據胎心宮縮監護數據為胎兒狀態分類 100
4.5 小結 102
第5章 用基於樹的算法預測點擊率 103
5.1 廣告點擊率預測簡介 104
5.2 兩種不同類型的數據:數值型和類別型 104
5.3 決策樹分類器 106
5.3.1 構造決策樹 107
5.3.2 度量劃分的標準 109
5.3.3 實現決策樹 115
5.4 用決策樹預測點擊率 123
5.5 隨機森林—決策樹的特徵裝袋技術 128
5.6 小結 129
第6章 用對率回歸預測點擊率 130
6.1 一位有效編碼—將類別型特徵轉換為數值型類型 131
6.2 對率回歸分類器 134
6.2.1 從對率函數說起 134
6.2.2 對率回歸的原理 135
6.2.3 用梯度下降方法訓練對率回歸模型 139
6.3 用梯度下降對率回歸預測點擊率 144
6.3.1 訓練隨機梯度下降對率回歸模型 146
6.3.2 訓練帶正則項的對率回歸模型 149
6.3.3 用線上學習方法,在大型數據集上訓練 151
6.3.4 多分類 153
6.4 用隨機森林選擇參數 155
6.5 小結 156
第7章 用回歸算法預測股價 158
7.1 股市和股價的簡介 159
7.2 什麽是回歸 159
7.3 用回歸算法預測股價 160
7.3.1 特徵工程 162
7.3.2 數據獲取和特徵生成 165
7.3.3 線性回歸 170
7.3.4 決策樹回歸 176
7.3.5 支持向量回歸 183
7.3.6 回歸性能評估 185
7.3.7 用回歸算法預測股價 186
7.4 小結 190
第8章 最佳實踐 192
8.1 機器學習工作流 193
8.2 數據準備階段的最佳實踐 193
8.2.1 最佳實踐1—理解透徹項目的目標 193
8.2.2 最佳實踐2—採集所有相關字段 194
8.2.3 最佳實踐3—字段值保持一致 194
8.2.4 最佳實踐4—缺失值處理 195
8.3 訓練集生成階段的最佳實踐 198
8.3.1 最佳實踐5—用數值代替類別型特徵 199
8.3.2 最佳實踐6—決定是否對類別型特徵編碼 199
8.3.3 最佳實踐7—是否要選擇特徵,怎麽選 199
8.3.4 最佳實踐8—是否降維,怎麽降 201
8.3.5 最佳實踐9—是否縮放特徵,怎麽縮放 201
8.3.6 最佳實踐10—帶著領域知識做特徵工程 202
8.3.7 最佳實踐11—缺少領域知識的前提下,做特徵工程 202
8.3.8 最佳實踐12—記錄每個特徵的生成方法 204
8.4 模型訓練、評估和選擇階段的最佳實踐 204
8.4.1 最佳實踐13—選擇從正確的算法開始 204
8.4.2 最佳實踐14—降低過擬合 206
8.4.3 最佳實踐15—診斷過擬合和欠擬合 206
8.5 系統部署和監控階段的最佳實踐 208
8.5.1 最佳實踐16—保存、加載和重用模型 208
8.5.2 最佳實踐17—監控模型性能 209
8.5.3 最佳實踐18—定期更新模型 210
8.6 小結 210
作者介紹
劉宇熙 Yuxi(Hayden)Liu
是加拿大多倫多市一家跨國網絡媒體公司的數據科學家,他從事消息應用優化工作。
他的研究方向是社交網絡挖掘、社交個性化(social personalization)、
用戶人口統計學特徵和興趣預測、垃圾信息監測和推薦系統。
他曾在多家程序化廣告投放公司工作,擔任數據科學家職位,他將機器學習專業知識應用於廣告優化、
點擊率和轉化率預測、點擊欺詐檢測等。
Yuxi擁有多倫多大學的碩士學位,研究生期間曾發表過5篇IEEE期刊文章和會議論文。
他喜歡爬取網絡數據,並從中獲取有價值的信息。他還熱衷於投資。