序
人工智慧的浪潮正在席捲全球,機器學習是人工智慧領域最能表現智慧的分支。隨著電腦性能的提升,機器學習在各個領域中大放光彩。尤其是自從2016 年AlphaGo 戰勝人類圍棋頂尖高手後,機器學習、深度學習「一夜爆紅」,遍佈網際網路的各個角落,成為民眾茶餘飯後討論最多的話題。不過很多人可能苦於不知如何下手,又或考慮到演算法中的數學知識,從而產生了放棄學習的念頭。因此本書剔除了枯燥乏味的數學原理及其推導過程,用淺顯易懂的程式去實現這些經典和主流的演算法,並在實際的場景中對演算法進行應用。
Python 語言是全球最熱門的程式語言,其最大的優點就是自由、開放原始碼。隨著Python 的不斷發展,其已經在機器學習和深度學習領域受到了許多學者和企業的關注。本書在簡介機器學習理論知識的同時,重點研究如何使用Python 語言來建模分析實際場景中的資料,增強讀者的動手能力,促進讀者對理論知識的深刻瞭解。
本書共分為12 章,前4 章介紹了Python 的使用與基於Python 機器學習的預備知識,後8 章則分模組介紹了統計分析、機器學習與深度學習的主流演算法和經典應用。本書盡可能做到內容全面、循序漸進,案例經典實用,而且程式透過Jupyter Notebook 來完成,清晰易懂,方便操作,即使沒有Python 基礎知識的讀者也能看懂本書的內容。
透過閱讀第1 章~第4 章,你將學到以下內容。
第1 章:Python 機器學習入門。先介紹機器學習相關知識,然後介紹如何安裝Anaconda 用於Python 程式的運行,接著介紹Python 相關的基礎知識, 快速入門Python 程式設計, 最後介紹NumPy、pandas 與Matplotlib 等第三方Python 函數庫的使用。
第2 章:資料探索與視覺化。將介紹如何使用Python 對資料集的遺漏值、異常值等進行前置處理,以及如何使用豐富的視覺化圖型,展示資料之間的潛在關係,增強對資料的全面認識。
第3 章:特徵工程。利用Python 結合實際資料集,介紹如何對資料進行特徵變換、特徵建構、特徵選擇、特徵提取與降維,以及對類別不平衡資料進行資料平衡的方法。
第4 章:模型選擇和評估。該章主要介紹如何更進一步地訓練資料,防止模型過擬合,以及針對不同類型的機器學習任務,如何評價模型的性能。
透過閱讀第5 章~第12 章,你將學到以下內容。
第5 章:假設檢驗和回歸分析。該章主要介紹統計分析的相關內容,如t檢驗、方差分析、多元回歸分析、Ridge 回歸分析、LASSO 回歸分析以及Logistic 回歸分析等內容。
第6 章:時間序列分析。該章將介紹如何對時間序列這一類特殊的資料進行建模和預測,結合實際資料集,比較不同類型的預測演算法的預測效果。
第7 章:聚類演算法與異常值檢測。該章主要介紹機器學習中的資料聚類和異常值檢測兩種無監督學習任務內容。其中聚類演算法將介紹K- 平均值聚類、K- 中值聚類、層次聚類、密度聚類等經典的聚類演算法;異常值檢測演算法將介紹LOF、COF、SOD 等經典的無監督檢測演算法。
第8 章:決策樹和整合學習。該章主要介紹幾種基於樹的機器學習演算法,如決策樹、隨機森林、AdaBoost、梯度提升樹等模型在資料分類與回歸中的應用。
第9 章:貝氏演算法和K- 近鄰演算法。該章將介紹如何利用貝氏模型進行文字分類及如何建構貝氏網路,同時還會介紹K- 近鄰演算法在資料分類和回歸上的應用。
第10 章:支持向量機和類神經網路。該章主要介紹支持向量機與全連接神經網路在資料分類和回歸上的應用。
第11 章:連結規則與文字探勘。該章主要結合具體的資料集,介紹如何利用Python 進行連結規則分析及對文字資料的分析與探勘。
第12 章:深度學習入門。該章主要依靠PyTorch 深度學習框架,介紹相關的深度學習入門知識,如透過卷積神經網路進行圖型分類、透過循環神經網路進行文字分類及透過自編碼網路進行圖型重建等實戰案例。
本書在編寫時盡可能地使用了目前最新的Python 庫,但是隨著電腦技術的迅速發展,以及作者水準有限,編寫時間倉促,書中難免存在疏漏,敬請讀者不吝賜教。
余本國