本書以掌握Python語言基礎為前提,由淺入深、全面系統(tǒng)地講解了機器學習的相關(guān)知識及技能,內(nèi)容注重實用性和可操作性,在介紹機器學習理論知識的基礎上,結(jié)合具體的實戰(zhàn)實例,給出了詳細的代碼及實現(xiàn)步驟。全書共9個項目,分別介紹了數(shù)據(jù)分析基礎、機器學習項目實戰(zhàn)流程、探索性數(shù)據(jù)分析與特征工程、常見機器學習算法及框架、交叉驗證與超參數(shù)調(diào)優(yōu),并結(jié)合主流機器學習技術(shù)框架Scikit-learn,展開了信用違約分類預測、社交媒體評論分類預測、共享單車用量需求回歸預測、信用卡客戶忠誠度回歸預測的項目實戰(zhàn)。
王志(1986.8—),博士,現(xiàn)任浙江省金融職業(yè)學院人工智能技術(shù)服務專業(yè)負責人,專業(yè)教研室副主任,人工智能領(lǐng)域技術(shù)多年創(chuàng)業(yè)經(jīng)歷,具備豐富的機器學習工業(yè)實戰(zhàn)及培訓經(jīng)驗,曾獲得銀監(jiān)會"機器學習在中小銀行應用”科技項目三等獎。參與編寫《人工智能導論》教材,入選十三五規(guī)劃教材。
項目1 數(shù)據(jù)分析基礎 1
任務1 開發(fā)環(huán)境的搭建 1
1.1.1 數(shù)據(jù)分析相關(guān)庫 1
1.1.2 Anaconda的安裝和使用 2
1.1.3 Jupyter Notebook的使用 3
任務2 NumPy的應用 4
1.2.1 數(shù)組對象的創(chuàng)建 4
1.2.2 數(shù)組的索引和切片 10
任務3 Pandas的應用 14
1.3.1 Series對象的創(chuàng)建 14
1.3.2 Series對象的索引和切片 15
1.3.3 Series對象的常用屬性 17
任務4 數(shù)據(jù)可視化 17
1.4.1 安裝和導入 18
1.4.2 繪圖的流程 18
任務5 Pandas、NumPy庫的數(shù)據(jù)操作 18
1.5.1 數(shù)據(jù)讀入 18
1.5.2 數(shù)據(jù)選擇 19
1.5.3 缺失值填充 20
1.5.4 數(shù)據(jù)透視表繪制 21
1.5.5 數(shù)據(jù)集合并 21
1.5.6 獨熱編碼 23
項目2 機器學習項目實戰(zhàn)流程 25
任務1 知識準備 26
2.1.1 問題定義 26
2.1.2 數(shù)據(jù)準備 27
2.1.3 模型訓練 30
2.1.4 模型評估 34
2.1.5 模型部署 38
2.1.6 模型監(jiān)控與更新 39
2.1.7 小結(jié) 40
任務2 使用Scikit-learn框架完成基本的機器學習項目 40
2.2.1 Estimator 40
2.2.2 Metrics 41
2.2.3 小結(jié) 41
任務3 實戰(zhàn):泰坦尼克號事件生存預測 42
2.3.1 問題定義 42
2.3.2 數(shù)據(jù)準備 42
2.3.3 模型訓練 45
2.3.4 模型評估 46
2.3.5 小結(jié) 47
項目3 探索性數(shù)據(jù)分析與特征工程 48
任務1 知識準備 49
3.1.1 探索性數(shù)據(jù)分析 49
3.1.2 特征工程 56
3.1.3 特征抽取 58
3.1.4 特征轉(zhuǎn)換 61
3.1.5 特征選擇 67
3.1.6 小結(jié) 67
任務2 實戰(zhàn):基于決策樹的泰坦尼克號事件生存預測 68
3.2.1 問題定義 68
3.2.2 數(shù)據(jù)準備 68
3.2.3 模型訓練 77
3.2.4 模型評估 77
3.2.5 數(shù)據(jù)保存 78
3.2.6 小結(jié) 78
項目4 常見機器學習算法及框架 79
任務1 知識準備 79
4.1.1 損失函數(shù)、代價函數(shù)與目標函數(shù) 79
4.1.2 邏輯回歸與神經(jīng)網(wǎng)絡 81
4.1.3 決策樹與隨機森林 84
任務2 基于集成學習思想的算法 85
任務3 Python環(huán)境下XGBoost的安裝及使用 88
任務4 Python環(huán)境下LightGBM的安裝及使用 89
項目5 交叉驗證與超參數(shù)調(diào)優(yōu) 91
任務1 知識準備 92
5.1.1 機器學習算法中的參數(shù)與超參數(shù) 92
5.1.2 超參數(shù)調(diào)優(yōu)方法 92
5.1.3 GBM算法的超參數(shù)調(diào)優(yōu) 97
任務2 隨機森林超參數(shù)調(diào)優(yōu) 99
5.2.1 RF框架的參數(shù)意義 99
5.2.2 RF決策樹的參數(shù)含義 100
任務3 實戰(zhàn):GBM算法超參數(shù)調(diào)優(yōu) 101
5.3.1 問題定義 101
5.3.2 數(shù)據(jù)準備 101
5.3.3 小結(jié) 107
項目6 信用違約分類預測 109
任務1 信用違約分類建模 109
6.1.1 問題定義 109
6.1.2 數(shù)據(jù)準備 110
6.1.3 模型訓練 114
6.1.4 模型評估 115
6.1.5 小結(jié) 116
任務2 實戰(zhàn):處理不平衡樣本來優(yōu)化模型 116
6.2.1 數(shù)據(jù)準備 116
6.2.2 小結(jié) 119
項目7 社交媒體評論分類預測 120
任務1 社交媒體評論分類建模 120
7.1.1 問題定義 120
7.1.2 數(shù)據(jù)準備 121
7.1.3 模型訓練 125
7.1.4 模型評估 126
7.1.5 小結(jié) 126
任務2 實戰(zhàn):使用不同文本特征提取方法來優(yōu)化模型 127
7.2.1 問題定義 127
7.2.2 數(shù)據(jù)準備 127
7.2.3 基于TF-IDF特征的模型訓練與評估 130
7.2.4 TSNE、LDA降維操作及TSNE可視化 131
7.2.5 基于LDA方法對TF-IDF特征降維處理后的模型訓練與評估 132
7.2.6 基于詞向量方法的模型訓練與評估 133
7.2.7 小結(jié) 135
項目8 共享單車用量需求回歸預測 136
任務1 共享單車用量需求回歸建模 136
8.1.1 問題定義 136
8.1.2 數(shù)據(jù)準備 137
8.1.3 模型訓練 143
8.1.4 模型評估 143
8.1.5 小結(jié) 144
任務2 實戰(zhàn):使用特征選擇及離散化方法來優(yōu)化模型 144
8.2.1 問題定義 144
8.2.2 數(shù)據(jù)準備 145
8.2.3 模型訓練 148
8.2.4 模型評估 149
8.2.5 小結(jié) 149
項目9 信用卡客戶忠誠度回歸預測 150
任務1 信用卡客戶忠誠度回歸建模 150
9.1.1 問題定義 150
9.1.2 數(shù)據(jù)準備 151
9.1.3 模型訓練 160
9.1.4 模型評估 160
9.1.5 小結(jié) 162
任務2 實戰(zhàn):增加數(shù)據(jù)源抽取特征來優(yōu)化模型 162
9.2.1 問題定義 162
9.2.2 數(shù)據(jù)準備 162
9.2.3 模型訓練 167
9.2.4 模型評估 167
9.2.5 小結(jié) 168
附錄A 課后習題及參考答案 169
項目1 習題及參考答案 169
項目2 習題及參考答案 170
項目3 習題及參考答案 171
項目4 習題及參考答案 172
項目5 習題及參考答案 173
項目6 習題及參考答案 174
項目7 習題及參考答案 174
項目8 習題及參考答案 175
項目9 習題及參考答案 176