PyCaret:機器學習模型開發(fā)變得簡單
在當今快節(jié)奏的數(shù)字世界中,機構(gòu)們使用低代碼/無代碼(LC/NC)應用來快速構(gòu)建新的信息系統(tǒng)。本文將介紹 PyCaret,這是一個用 Python 編寫的低代碼機器學習庫。
PyCaret 是 R 編程語言中 Caret(分類和回歸訓練Classification And REgression Training的縮寫)包的 Python 版本,具有許多優(yōu)點。
提高工作效率: PyCaret 是一個低代碼庫,可讓你提高工作效率。由于花費更少的時間進行編碼,你和你的團隊現(xiàn)在可以專注于業(yè)務問題。
易于使用: 這個簡單易用的機器學習庫將幫助你以更少的代碼行執(zhí)行端到端的機器學習實驗。
可用于商業(yè): PyCaret 是一個可用于商業(yè)的解決方案。它允許你從選擇的 notebook 環(huán)境中快速有效地進行原型設(shè)計。
你可以在 Python 中創(chuàng)建一個虛擬環(huán)境并執(zhí)行以下命令來安裝 PyCaret 完整版:
pip install pycaret [full]
機器學習從業(yè)者可以使用 PyCaret 進行分類、回歸、聚類、異常檢測、自然語言處理、關(guān)聯(lián)規(guī)則挖掘和時間序列分析。
使用 PyCaret 構(gòu)建分類模型
本文通過從 PyCaret 的數(shù)據(jù)倉庫中獲取 Iris 數(shù)據(jù)集來解釋使用 PyCaret 構(gòu)建分類模型。
我們將使用 Google Colab 環(huán)境使事情變得簡單,并按照下面提到的步驟進行操作。
步驟 1
首先,通過給出以下命令安裝 PyCaret:
pip install pycaret
步驟 2
接下來,加載數(shù)據(jù)集,如圖 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
現(xiàn)在設(shè)置 PyCaret 環(huán)境,如圖 2 所示:

PyCaret environment setup
from pycaret.classification import *
clf1 = setup(data=dataset, target = ‘species’)

PyCaret environment setup result
使用 PyCaret 構(gòu)建任何類型的模型,環(huán)境設(shè)置是最重要的一步。默認情況下,setup() 函數(shù)接受參數(shù) data(Pandas 數(shù)據(jù)幀)和 target(指向數(shù)據(jù)集中的類標簽變量)。setup() 函數(shù)的結(jié)果如圖 3 所示。 setup() 函數(shù)默認將 70% 的數(shù)據(jù)拆分為訓練集,30% 作為測試集,并進行數(shù)據(jù)預處理,如圖 3 所示。
步驟 4
接下來,找到最佳模型,如圖 4 所示:

Finding the best model
best = compare_models()
默認情況下,compare_models() 應用十倍交叉驗證,并針對具有較少訓練時間的不同分類器計算不同的性能指標,如準確度、AUC、召回率、精度、F1 分數(shù)、Kappa 和 MCC,如圖 4 所示。通過將 tubro=True 傳遞給 compare_models() 函數(shù),我們可以嘗試所有分類器。
步驟 5
現(xiàn)在創(chuàng)建模型,如圖 5 所示:

Creating the model
lda_model=create_model (‘lda’)
線性判別分析分類器表現(xiàn)良好,如圖 4 所示。因此,通過將 lda 傳遞給 create_model() 函數(shù),我們可以擬合模型。
步驟 6
下一步是微調(diào)模型,如圖 6 所示。

Tuning the model
tuned_lda=tune_model(lda_model)
超參數(shù)的調(diào)整可以提高模型的準確性。tune_model() 函數(shù)將線性判別分析模型的精度從 0.9818 提高到 0.9909,如圖 7 所示。

Tuned model details
步驟 7
下一步是進行預測,如圖 8 所示:

Predictions using the tuned model
predictions=predict_model(tuned_lda)
predict_model() 函數(shù)用于對測試數(shù)據(jù)中存在的樣本進行預測。
步驟 8
現(xiàn)在繪制模型性能,如圖 9 所示:

Evaluating and plotting the model performance — confusion matrix
evaluate_model(tuned_lda)
evaluate_model() 函數(shù)用于以最小的努力開發(fā)不同的性能指標。你可以嘗試它們并查看輸出。






























