在兩行Python代碼中應(yīng)用 40 個(gè)機(jī)器學(xué)習(xí)模型
我們將使用lazypredict庫(kù),它允許我們只用一行代碼在我們的數(shù)據(jù)集上實(shí)現(xiàn)許多機(jī)器學(xué)習(xí)模型,本文將演示lazypredict的快速使用。
步驟1、使用以下命令安裝lazypredict 庫(kù):
pip install lazypredict
步驟2、導(dǎo)入pandas庫(kù),以加載我們的機(jī)器學(xué)習(xí)數(shù)據(jù)集。
數(shù)據(jù)集鏈接:https ://raw.githubusercontent.com/tirthajyoti/Machine-Learning-with-Python/master/Datasets/Mall_Customers.csv
import pandas as pd
df=pd.read_csv("Mall_Customers.csv")
步驟3、查看機(jī)器學(xué)習(xí)數(shù)據(jù)集前幾行。
df.head()
步驟4、拆分訓(xùn)練集和測(cè)試集。這里 Y 變量是 Spending Score 列,而其余列是 X 變量。
from sklearn.model_selection import train_test_split
x=df.loc[:,df.columns!='Spending Score (1-100)']
y=df['Spending Score (1-100)']
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.3)
步驟5、讓我們導(dǎo)入之前安裝的lazypredict庫(kù),lazypredict里面有兩個(gè)類(lèi),一個(gè)是Classification類(lèi),一個(gè)是Regression類(lèi)。
import lazypredict
from lazypredict.Supervised import LazyRegressor
from lazypredict.Supervised import LazyClassifier
導(dǎo)入后,我們將使用 LazyRegressor,因?yàn)槲覀冋谔幚砘貧w問(wèn)題,如果您處理的分類(lèi)問(wèn)題,這兩種類(lèi)型的問(wèn)題都需要類(lèi)似的步驟。
multiple_ML_model=LazyRegressor(verbose=0,ignore_warnings=True,predictions=True)
models,predictions=multiple_ML_model.fit(x_train,x_test,y_train,y_test)
在這里,prediction = True意味著您想要獲得每個(gè)模型的準(zhǔn)確性并想要對(duì)每個(gè)模型進(jìn)行預(yù)測(cè)。
模型的變量包含每個(gè)模型的準(zhǔn)確度,以及其他一些重要的信息。
models
如您所見(jiàn),它已經(jīng)在我的回歸問(wèn)題上實(shí)現(xiàn)了42 個(gè) 機(jī)器學(xué)習(xí)模型,本指南更側(cè)重于如何測(cè)試許多模型而不是提高它們的準(zhǔn)確性。
查看每個(gè)機(jī)器學(xué)習(xí)模型的預(yù)測(cè)如下:
predictions
您可以使用這些預(yù)測(cè)來(lái)創(chuàng)建混淆矩陣。
如果您正在處理分類(lèi)問(wèn)題,這就是您使用lazypredict 庫(kù)的方式。
multiple_ML_model=LazyClassifier(verbose=0,ignore_warnings=True,predictions=True)
models,predictions=multiple_ML_model.fit(x_train,x_test,y_train,y_test)
要記住的關(guān)鍵點(diǎn):
- 該庫(kù)僅用于測(cè)試目的,為您提供有關(guān)哪種模型在您的數(shù)據(jù)集上表現(xiàn)良好的信息。
- 因?yàn)槲覍⒁褂玫膸?kù)需要的是特定版本,所以建議使用一個(gè)單獨(dú)環(huán)境。