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