自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

使用MultiTrain在數(shù)據(jù)集上訓(xùn)練多個(gè)機(jī)器學(xué)習(xí)分類模型示例

人工智能 機(jī)器學(xué)習(xí)
MultiTrain是一個(gè)python庫(kù),它允許您一次訓(xùn)練多個(gè)機(jī)器學(xué)習(xí)模型,以評(píng)估它們?cè)跀?shù)據(jù)集上的性能。Python

現(xiàn)在,讓我們用MultiTrain庫(kù)訓(xùn)練一個(gè)數(shù)據(jù)集,看看它與傳統(tǒng)的測(cè)試模型方法相比是如何工作的。

注意:訓(xùn)練結(jié)果可作為選擇適合您特定情況的最佳模型的參考。為了使模型執(zhí)行得更好,需要進(jìn)行更多的超參數(shù)調(diào)優(yōu)。

在本教程中,我們將使用手機(jī)價(jià)格分類數(shù)據(jù)集(https://www.kaggle.com/datasets/iabhishekofficial/mobile-price-classification)處理一個(gè)分類問(wèn)題

安裝庫(kù)

pip install MultiTrain

導(dǎo)入所需的Python庫(kù)

要處理這個(gè)數(shù)據(jù)集,我們需要導(dǎo)入以下庫(kù)

import warnings 
import pandas as pd
import seaborn as sns
from MultiTrain import MultiClassifier
from numpy import mean,
arange from matplotlib import pyplot as plt
warning.filterwarnings('ignore')

導(dǎo)入機(jī)器學(xué)習(xí)數(shù)據(jù)集

現(xiàn)在,讓我們也導(dǎo)入我們將使用的數(shù)據(jù)集

df = pd.read_csv(“train_phone.csv”)

檢查數(shù)據(jù)集標(biāo)簽是否平衡

我們檢查數(shù)據(jù)集中包含的標(biāo)簽,以確定它是是否平衡,這將幫助我們決定如何訓(xùn)練數(shù)據(jù)集。

在運(yùn)行下面的代碼時(shí),您將發(fā)現(xiàn)數(shù)據(jù)集標(biāo)簽是均勻分布的。

# price_range is the column name for the labels
df["price_range"].value_counts()

模型訓(xùn)練

我們將跳過(guò)探索性數(shù)據(jù)分析,這里的重點(diǎn)是看看我們?nèi)绾问褂?MultiTrain 來(lái)實(shí)現(xiàn)它的目的。

下一步是將數(shù)據(jù)集劃分為特征和標(biāo)簽。

features = df.drop('price_range', axis=1)
labels = df['price_range']

在定義了訓(xùn)練特征和標(biāo)簽之后,我們現(xiàn)在需要進(jìn)一步將它們分為訓(xùn)練集和測(cè)試集。模型將使用訓(xùn)練集進(jìn)行訓(xùn)練,并使用測(cè)試集對(duì)其性能進(jìn)行評(píng)估。

然后必須在MultiTrain庫(kù)中定義MultiClassifier對(duì)象。我們正在處理的數(shù)據(jù)集包括四個(gè)不同的標(biāo)簽,這使它成為一個(gè)多類問(wèn)題。

通過(guò)定義隨機(jī)狀態(tài)參數(shù),在數(shù)據(jù)集上訓(xùn)練的所有機(jī)器學(xué)習(xí)模型將產(chǎn)生一致的結(jié)果。設(shè)置“cores”為“-1”可以確保訓(xùn)練使用CPU中的所有內(nèi)核來(lái)提高性能。

train = MultiClassifier(random_state=42,
imbalanced=False,
target_class='multiclass',
cores=-1)
# It's important to assign this method to a variable because it
# returns the training and test splits to be used in the fit method
returned_split = train.split(X=features,
y=labels,
randomState=42,
sizeOfTest=0.2)
fit = train.fit(X=features,
y=labels,
splitting=True,
split_data=returned_split,
show_train_score=True)

圖片

您也可以使用 KFold 拆分對(duì)數(shù)據(jù)集進(jìn)行訓(xùn)練。

train = MultiClassifier(random_state=42,
imbalanced=False,
target_class='multiclass',
cores=-1)
# setting kf to True tells the fit method to use the KFold Split for # training.
fit = train.fit(X=features,
y=labels,
kf=True,
fold=5,
show_train_score=True)

圖片

您還可以將單個(gè)模型與scikit-learn實(shí)現(xiàn)進(jìn)行比較,以查看它們是否產(chǎn)生類似的結(jié)果。


責(zé)任編輯:華軒 來(lái)源: 不靠譜的貓
相關(guān)推薦

2023-11-06 10:50:35

機(jī)器學(xué)習(xí)LIME

2020-08-10 15:05:02

機(jī)器學(xué)習(xí)人工智能計(jì)算機(jī)

2017-03-24 15:58:46

互聯(lián)網(wǎng)

2022-03-28 09:00:00

SQL數(shù)據(jù)庫(kù)機(jī)器學(xué)習(xí)

2022-06-05 21:16:08

機(jī)器學(xué)習(xí)Python

2023-01-11 07:28:49

TensorFlow分類模型

2022-09-19 15:37:51

人工智能機(jī)器學(xué)習(xí)大數(shù)據(jù)

2022-08-15 15:16:20

機(jī)器學(xué)習(xí)圖片深度學(xué)習(xí)

2025-02-24 08:40:00

神經(jīng)網(wǎng)絡(luò)模型矩陣變換

2024-11-04 00:24:56

2024-11-26 09:33:44

2024-12-26 00:46:25

機(jī)器學(xué)習(xí)LoRA訓(xùn)練

2018-11-07 09:00:00

機(jī)器學(xué)習(xí)模型Amazon Sage

2024-09-09 11:45:15

ONNX部署模型

2022-07-22 08:00:00

深度學(xué)習(xí)數(shù)據(jù)機(jī)器學(xué)習(xí)

2023-01-09 08:00:00

遷移學(xué)習(xí)機(jī)器學(xué)習(xí)數(shù)據(jù)集

2024-07-01 12:55:50

2023-09-05 10:41:28

人工智能機(jī)器學(xué)習(xí)

2022-04-01 14:50:52

算法架構(gòu)OnFire

2017-07-07 14:41:13

機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)JavaScript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)