Python 機器學習基礎教程 (Introduction to Machine Learning with Python: A Guide for Data Scientists) Python机器学习基础教程

[德]安德里亞斯·穆勒[美]莎拉·吉多

買這商品的人也買了...

商品描述

本書是機器學習入門書,以Python語言介紹。主要內容包括:機器學習的基本概念及其應用;實踐中常用的機器學習算法以及這些算法的優缺點;在機器學習中待處理數據的呈現方式的重要性,以及應重點關註數據的哪些方面;模型評估和調參的方法,重點講解交叉驗證和網格搜索;管道的概念;如何將前面各章的方法應用到文本數據上,還介紹了一些文本特有的處理方法。
本書適合機器學習從業者或有志成為機器學習從業者的人閱讀。

作者簡介

[德]安德里亞斯·穆勒(Andreas C. Müller)[美]莎拉·吉多(Sarah Guido)譯者:張亮(hysic)

Andreas C.Müller,scikit-learn庫維護者和核心貢獻者。現任哥倫比亞大學數據科學研究院講師,曾任紐約大學數據科學中心助理研究員、亞馬遜公司計算機視覺應用的機器學習研究員。在波恩大學獲得機器學習博士學位。

Sarah Guido,Mashable公司數據科學家,曾擔任Bitly公司數據科學家。

目錄大綱

第1章引言1 
1.1為何選擇機器學習1 
1.1.1機器學習能夠解決的問題2 
1.1.2熟悉任務和數據4 
1.2為何選擇Python 4 
1.3 scikit-learn 4 
1.4必要的庫和工具5 
1.4. 1 Jupyter Notebook 6 
1.4.2 NumPy 6 
1.4.3 SciPy 6 
1.4.4 matplotlib 7 
1.4.5 pandas 8 
1.4.6 mglearn 9 
1.5 Python 2與Python 3的對比9 
1.6本書用到的版本10 
1.7第一個應用:鳶尾花分類11 
1.7.1初識數據12 
1.7.2衡量模型是否成功:訓練數據與測試數據14 
1.7.3要事第一:觀察數據15 
1.7.4構建第一個模型:k近鄰算法16 
1.7.5做出預測17 
1.7.6評估模型18 
1.8小結與展望19
 
第2章監督學習21 
2.1分類與回歸21 
2.2泛化、過擬合與欠擬合22 
2.3監督學習算法24
2.3.1一些樣本數據集25 
2.3.2 k近鄰28 
2.3.3線性模型35 
2.3.4樸素貝葉斯分類器53 
2.3.5決策樹54 
2.3.6決策樹集成64 
2.3.7核支持向量機71 
2.3.8神經網絡(深度學習) 80 
2.4分類器的不確定度估計91 
2.4.1決策函數91 
2.4.2預測概率94 
2.4.3多分類問題的不確定度96 
2.5小結與展望98 

第3章無監督學習與預處理100 
3.1無監督學習的類型100 
3.2無監督學習的挑戰101 
3.3預處理與縮放101 
3.3.1不同類型的預處理102 
3.3.2應用數據變換102 
3.3.3對訓練數據和測試數據進行相同的縮放104 
3.3.4預處理對監督學習的作用106 
3.4降維、特徵提取與流形學習107 
3.4.1主成分分析107 
3.4.2非負矩陣分解120 
3.4.3用t -SNE進行流形學習126 
3.5聚類130 
3.5.1 k均值聚類130 
3.5.2凝聚聚類140 
3.5.3 DBSCAN 143
3.5.4聚類算法的對比與評估147 
3.5.5聚類方法小結159 
3.6小結與展望159 

第4章數據表示與特徵工程161 
4.1分類變量161 
4.1.1 One-Hot編碼(虛擬變量) 162 
4.1 .2數字可以編碼分類變量166 
4.2分箱、離散化、線性模型與樹168 
4.3交互特徵與多項式特徵171 
4.4單變量非線性變換178 
4.5自動化特徵選擇181 
4.5.1單變量統計181 
4.5.2基於模型的特徵選擇183 
4.5.3迭代特徵選擇184 
4.6利用專家知識185 
4.7小結與展望192 

第5章模型評估與改進193 
5.1交叉驗證194 
5.1.1 scikit-learn中的交叉驗證194 
5.1.2交叉驗證的優點195 
5.1.3分層k折交叉驗證和其他策略196 
5.2網格搜索200 
5.2.1簡單網格搜索201 
5.2.2參數過擬合的風險與驗證集202 
5.2.3帶交叉驗證的網格搜索203 
5.3評估指標與評分213 
5.3.1牢記目標213 
5.3.2二分類指標214
5.3.3多分類指標230 
5.3.4回歸指標232 
5.3.5在模型選擇中使用評估指標232 
5.4小結與展望234 

第6章算法鏈與管道236 
6.1用預處理進行參數選擇237 
6.2構建管道238 
6.3在網格搜索中使用管道239 
6.4通用的管道接口242 
6.4.1用make_pipeline方便地創建管道243 
6.4.2訪問步驟屬性244 
6.4.3訪問網格搜索管道中的屬性244 
6.5網格搜索預處理步驟與模型參數246 
6.6網格搜索選擇使用哪個模型248 
6.7小結與展望249 

第7章處理文本數據250 
7.1用字符串表示的數據類型250 
7.2示例應用:電影評論的情感分析252 
7.3將文本數據表示為詞袋254 
7.3.1將詞袋應用於玩具數據集255 
7.3.2將詞袋應用於電影評論256 
7.4停用詞259 
7.5用tf-idf縮放數據260 
7.6研究模型係數263 
7.7多個單詞的詞袋(n元分詞) 263 
7.8分詞、詞幹提取與詞形還原267 
7.9主題建模與文檔聚類270
7.10小結與展望277 

第8章全書總結278 
8.1處理機器學習問題278 
8.2從原型到生產279 
8.3測試生產系統280 
8.4構建你自己的估計器280 
8.5下一步怎麼走281 
8.5.1理論281 
8.5.2其他機器學習框架和包281 
8.5.3排序、推薦系統與其他學習類型282 
8.5.4概率建模、推斷與概率編程282 
8.5.5神經網絡283 
8.5.6推廣到更大的數據集283 
8.5. 7磨練你的技術284 
8.6總結284 
關於作者285 
關於封面285