PyCaret:機器學習模型開發變得簡單
在當今快節奏的數字世界中,機構們使用低代碼/無代碼(LC/NC)應用來快速構建新的信息系統。本文將介紹 PyCaret,這是一個用 Python 編寫的低代碼機器學習庫。
PyCaret 是 R 編程語言中 Caret(分類和回歸訓練Classification And REgression Training的縮寫)包的 Python 版本,具有許多優點。
提高工作效率: PyCaret 是一個低代碼庫,可讓你提高工作效率。由于花費更少的時間進行編碼,你和你的團隊現在可以專注于業務問題。
易于使用: 這個簡單易用的機器學習庫將幫助你以更少的代碼行執行端到端的機器學習實驗。
可用于商業: PyCaret 是一個可用于商業的解決方案。它允許你從選擇的 notebook 環境中快速有效地進行原型設計。
你可以在 Python 中創建一個虛擬環境并執行以下命令來安裝 PyCaret 完整版:
pip install pycaret [full]
機器學習從業者可以使用 PyCaret 進行分類、回歸、聚類、異常檢測、自然語言處理、關聯規則挖掘和時間序列分析。
使用 PyCaret 構建分類模型
本文通過從 PyCaret 的數據倉庫中獲取 Iris 數據集來解釋使用 PyCaret 構建分類模型。
我們將使用 Google Colab 環境使事情變得簡單,并按照下面提到的步驟進行操作。
步驟 1
首先,通過給出以下命令安裝 PyCaret:
pip install pycaret
步驟 2
接下來,加載數據集,如圖 2 所示:
Loading the data set
from pycaret.datasets import get_data
dataset = get_data('iris')
(或者)
import pandas as pd
dataset = pd.read_csv('/path_to_data/file.csv')
步驟 3
現在設置 PyCaret 環境,如圖 2 所示:
PyCaret environment setup
from pycaret.classification import *
clf1 = setup(data=dataset, target = ‘species’)
PyCaret environment setup result
使用 PyCaret 構建任何類型的模型,環境設置是最重要的一步。默認情況下,setup() 函數接受參數 data(Pandas 數據幀)和 target(指向數據集中的類標簽變量)。setup() 函數的結果如圖 3 所示。 setup() 函數默認將 70% 的數據拆分為訓練集,30% 作為測試集,并進行數據預處理,如圖 3 所示。
步驟 4
接下來,找到最佳模型,如圖 4 所示:
Finding the best model
best = compare_models()
默認情況下,compare_models() 應用十倍交叉驗證,并針對具有較少訓練時間的不同分類器計算不同的性能指標,如準確度、AUC、召回率、精度、F1 分數、Kappa 和 MCC,如圖 4 所示。通過將 tubro=True 傳遞給 compare_models() 函數,我們可以嘗試所有分類器。
步驟 5
現在創建模型,如圖 5 所示:
Creating the model
lda_model=create_model (‘lda’)
線性判別分析分類器表現良好,如圖 4 所示。因此,通過將 lda 傳遞給 create_model() 函數,我們可以擬合模型。
步驟 6
下一步是微調模型,如圖 6 所示。
Tuning the model
tuned_lda=tune_model(lda_model)
超參數的調整可以提高模型的準確性。tune_model() 函數將線性判別分析模型的精度從 0.9818 提高到 0.9909,如圖 7 所示。
Tuned model details
步驟 7
下一步是進行預測,如圖 8 所示:
Predictions using the tuned model
predictions=predict_model(tuned_lda)
predict_model() 函數用于對測試數據中存在的樣本進行預測。
步驟 8
現在繪制模型性能,如圖 9 所示:
Evaluating and plotting the model performance — confusion matrix
evaluate_model(tuned_lda)
evaluate_model() 函數用于以最小的努力開發不同的性能指標。你可以嘗試它們并查看輸出。