Python機器學習:預測分析核心算法 | 被動收入的投資秘訣 - 2024年8月
![](https://www.books.com.tw/img/CN1/140/10/CN11401056.jpg)
Python機器學習:預測分析核心算法
在學習和研究機器學習的時候,面臨令人眼花繚亂的算法,機器學習新手往往會不知所措。本書從算法和Python語言實現的角度,幫助讀者認識機器學習。本書專注於兩類核心的「算法族」,即懲罰線性回歸和集成方法,並通過代碼實例來展示所討論的算法的使用原則。全書共分為7章,詳細討論了預測模型的兩類核心算法、預測模型的構建、懲罰線性回歸和集成方法的具體應用和實現。本書主要針對想提高機器學習技能的Python開發人員,幫助他們解決某一特定的項目或是提升相關的技能。MichaelBowles在硅谷黑客道場教授機器學習,提供機器學習項目咨詢,同時參與了多家創業公司,涉及的領域包括生物信息學、金融高頻交易等。他在麻省理工學院獲得助理教授教職后,創建並運營了兩家硅谷創業公司,這兩家公司都已成功上市。他在黑客道場的課程往往聽者雲集並且好評頗多。
第1章 關於預測的兩類核心算法1.1為什麼這兩類算法如此有用1.2什麼是懲罰回歸方法1.3什麼是集成方法1.4算法的選擇1.5構建預測模型的流程1.5.1構造一個機器學習問題1.5.2特征提取和特征工程1.5.3確定訓練后的模型的性能1.6各章 內容及其依賴關系1.7小結1.8參考文獻第2章 通過理解數據來了解問題2.1「解剖」一個新問題2.1.1屬性和標簽的不同類型決定模型的選擇2.1.2新數據集的注意事項2.2分類問題:用聲納發現未爆炸的水雷2.2.1「岩石vs水雷」數據集的物理特性2.2.2「岩石vs水雷」數據集統計特征2.2.3用分位數圖展示異常點2.2.4類別屬性的統計特征2.2.5利用PythonPandas對「岩石vs水雷」數據集進行統計分析2.3對「岩石vs水雷數據集」屬性的可視化展示2.3.1利用平行坐標圖進行可視化展示2.3.2屬性和標簽的關系可視化2.3.3用熱圖(heatmap)展示屬性和標簽的相關性2.3.4對「岩石vs2.4基於因素變量的實數值預測鮑魚的年齡2.4.1回歸問題的平行坐標圖—鮑魚問題的變量關系可視化2.4.2回歸問題如何使用關聯熱圖—鮑魚問題的屬性對關系的可視化2.5用實數值屬性預測實數值目標:評估紅酒口感2.6多類別分類問題:它屬於哪種玻璃小結參考文獻第3章 預測模型的構建:平衡性能、復雜性以及大數據3.1基本問題:理解函數逼近3.1.1使用訓練數據3.1.2評估預測模型的性能3.2影響算法選擇及性能的因素——復雜度以及數據3.2.1簡單問題和復雜問題的對比3.2.2一個簡單模型與復雜模型的對比3.2.3影響預測算法性能的因素3.2.4選擇一個算法:線性或者非線性3.3度量預測模型性能3.3.1不同類型問題的性能評價指標3.3.2部署模型的性能模擬3.4模型與數據的均衡3.4.1通過權衡問題復雜度、模型復雜度以及數據集規模來選擇模型3.4.2使用前向逐步回歸來控制過擬合3.4.3評估並理解你的預測模型3.4.4通過懲罰回歸系數來控制過擬合——嶺回歸小結參考文獻第4章 懲罰線性回歸模型4.1為什麼懲罰線性回歸方法如此有效4.1.1足夠快速地估計系數4.1.2變量的重要性信息4.1.3部署時的預測足夠快速4.1.4性能可靠4.1.5稀疏解4.1.6問題本身可能需要線性模型4.1.7什麼時候使用集成方法4.2懲罰線性回歸:對線性回歸進行正則化以獲得最優性能4.2.1訓練線性模型:最小化錯誤以及更多4.2.2向OLS公式中添加一個系數懲罰項4.2.3其他有用的系數懲罰項:Manhattan以及ElasticNet4.2.4為什麼套索懲罰會導致稀疏的系數向量4.2.5ElasticNet懲罰項包含套索懲罰項以及嶺懲罰項4.3求解懲罰線性回歸問題4.3.1理解最小角度回歸與前向逐步回歸的關系4.3.2LARS如何生成數百個不同復雜度的模型4.3.3從數百個LARS生成結果中選擇最佳模型4.3.4使用Glmnet:非常快速並且通用4.4基於數值輸入的線性回歸方法的擴展4.4.1使用懲罰回歸求解分類問題4.4.2求解超過2種輸出的分類問題4.4.3理解基擴展:使用線性方法來解決非線性問題4.4.4向線性方法中引入非數值屬性小結參考文獻第5章 使用懲罰線性方法來構建預測模型5.1懲罰線性回歸的Python包5.2多變量回歸:預測紅酒口感5.2.1構建並測試模型以預測紅酒口感5.2.2部署前在整個數據集上進行訓練5.2.3基擴展:基於原始屬性擴展新屬性來改進性能5.3二分類:使用懲罰線性回歸來檢測未爆炸的水雷5.3.1構建部署用的岩石水雷分類器5.4多類別分類—分類犯罪現場的玻璃樣本小結參考文獻第6章 集成方法6.1二元決策樹6.1.1如何利用二元決策樹進行預測6.1.2如何訓練一個二元決策樹6.1.3決策樹的訓練等同於分割點的選擇6.1.4二元決策樹的過擬合6.1.5針對分類問題和類別特征所做的修改6.2自舉集成:Bagging算法6.2.1Bagging算法是如何工作的6.2.2Bagging算法小結6.3梯度提升法(GradientBoosting)6.3.1梯度提升法的基本原理6.3.2獲取梯度提升法的最佳性能6.3.3針對多變量問題的梯度提升法6.3.4梯度提升方法的小結6.4隨機森林6.4.1隨機森林:Bagging加上隨機屬性子集6.4.2隨機森林的性能6.4.3隨機森林小結6.5小結6.6參考文獻第7章 用Python構建集成模型7.1用Python集成方法工具包解決回歸問題7.1.1構建隨機森林模型來預測紅酒口感7.1.2用梯度提升預測紅酒品質7.2用Bagging來預測紅酒口感7.3Python集成方法引入非數值屬性7.3.1對鮑魚性別屬性編碼引入Python隨機森林回歸方法7.3.2評估性能以及變量編碼的重要性7.3.3在梯度提升回歸方法中引入鮑魚性別屬性7.3.4梯度提升法的性能評價以及變量編碼的重要性7.4用Python集成方法解決二分類問題7.4.1用Python隨機森林方法探測未爆炸的水雷7.4.2構建隨機森林模型探測未爆炸水雷7.4.3隨機森林分類器的性能7.4.4用Python梯度提升法探測未爆炸水雷7.4.5梯度提升法分類器的性能7.5用Python集成方法解決多類別分類問題7.5.1用隨機森林對玻璃進行分類7.5.2處理類不均衡問題7.5.3用梯度提升法對玻璃進行分類7.5.4評估在梯度提升法中使用隨機森林基學習器的好處7.6算法比較小結參考文獻