scikit-learn 機器學習簡介
本影片系列將教您如何使用 Python 流行的 scikit-learn 庫解決機器學習問題。有10個影片教學,總共4.5小時,每個影片教學都有對應的Jupyter筆記本。
您可以在 YouTube 上觀看整個系列,並使用 nbviewer 查看所有筆記本。
該系列還提供免費線上課程,其中包括更新內容、測驗和結業證書。
注意:此儲存庫中的筆記本已更新為使用 Python 3.9.1 和 scikit-learn 0.23.2。原始筆記本(影片中所示)使用 Python 2.7 和 scikit-learn 0.16,可以從檔案分支下載。您可以在這篇文章中了解我如何更新程式碼。
目錄
什麼是機器學習,它是如何運作的? (影片、筆記本)
- 什麼是機器學習?
- 機器學習的兩個主要類別是什麼?
- 機器學習有哪些例子?
- 機器學習如何「工作」?
設定 Python 進行機器學習:scikit-learn 和 Jupyter Notebook(影片、筆記本)
- scikit-learn 的優點和缺點是什麼?
- 如何安裝 scikit-learn?
- 如何使用 Jupyter 筆記本?
- 有哪些學習Python的好資源?
使用著名的 iris 資料集開始 scikit-learn(影片、筆記本)
- 著名的鳶尾花資料集是什麼?
- 我們如何將 iris 資料集載入到 scikit-learn 中?
- 我們如何使用機器學習術語來描述資料集?
- scikit-learn 處理資料的四個關鍵要求是什麼?
使用 scikit-learn 訓練機器學習模型(影片、筆記本)
- 什麼是K近鄰分類模型?
- scikit-learn 中模型訓練和預測的四個步驟是什麼?
- 如何將此模式應用於其他機器學習模型?
比較 scikit-learn 中的機器學習模型(影片、筆記本)
- 如何選擇監督學習任務的模型?
- 如何為該模型選擇最佳調整參數?
- 如何估計模型在樣本外資料上的可能表現?
數據科學管道:pandas、seaborn、scikit-learn(影片、筆記本)
- 如何使用 pandas 函式庫將資料讀取到 Python 中?
- 如何使用seaborn函式庫來視覺化資料?
- 什麼是線性迴歸,它是如何運作的?
- 如何在 scikit-learn 中訓練和解釋線性迴歸模型?
- 迴歸問題的評估指標有哪些?
- 如何選擇要包含在模型中的特徵?
參數調整、模型選擇和特徵選擇的交叉驗證(影片、筆記本)
- 使用訓練/測試分割程序進行模型評估有什麼缺點?
- K折交叉驗證如何克服這個限制?
- 如何使用交叉驗證來選擇調整參數、在模型之間進行選擇以及選擇特徵?
- 交叉驗證有哪些可能的改進?
有效搜尋最佳調整參數(影片、筆記本)
- 如何使用 K 折交叉驗證來搜尋最佳調整參數?
- 如何讓這個過程更有效率?
- 如何一次搜尋多個調整參數?
- 在進行真正的預測之前,您如何處理這些調整參數?
- 如何減少這個過程的計算開銷?
評估分類模型(影片、筆記本)
- 模型評估的目的是什麼?
- 分類準確率有什麼用,它有什麼限制?
- 混淆矩陣如何描述分類器的性能?
- 可以從混淆矩陣計算哪些指標?
- 如何透過改變分類閾值來調整分類器效能?
- ROC 曲線的目的是什麼?
- 曲線下面積 (AUC) 與分類準確率有何不同?
建立機器學習工作流程(影片、筆記本)
- 為什麼應該使用管道?
- 如何使用 OneHotEncoder 對分類特徵進行編碼?
- 如何使用 ColumnTransformer 將 OneHotEncoder 套用到選取的欄位?
- 如何建置和交叉驗證管道?
- 如何使用管道對新數據進行預測?
- 為什麼應該使用 scikit-learn (而不是 pandas)進行預處理?
附贈視頻
在 PyCon 2016 會議上,我教授了一個3 小時的教程,該教程基於該視頻系列,重點關注基於文字的數據。您可以在 YouTube 上觀看教學影片。
以下是我涵蓋的主題:
- 在 scikit-learn 中建構模型(複習)
- 將文字表示為數字數據
- 將基於文字的資料集讀入 pandas
- 向量化我們的數據集
- 建構和評估模型
- 型號比較
- 檢查模型以獲得進一步的見解
- 在另一個資料集上練習此工作流程
- 調整向量化器(討論)
存取此 GitHub 儲存庫以存取教程筆記本和許多其他推薦資源。