培训测试有效数据集……关于拟合模型的一般问题

问题描述 投票:0回答:1

因此,我获得了HW分配的Xtrain,ytrain,Xtest,ytest,Xvalid,yvalid数据。该作业是针对随机森林的,但我认为我的问题可以应用于任何/大多数模型。

因此,我的理解是,您使用Xtrain和ytrain来拟合模型,例如(clf.fit(Xtrain,ytrain)),这将创建一个模型,该模型可以为您提供训练数据的分数和预测

因此,当我继续测试和有效数据集时,我仅使用ytest和yvalid来查看它们如何预测和评分。我的教授为我们提供了三个X数据集(Xtrain,Xtest,Xvalid),但对我来说,我只需要Xtrain来首先训练模型,然后在不同的y数据集上测试模型。

如果我为每对X做y.fit(),我将根据完全不同的数据创建/拟合三个不同的模型,因此从我的角度来看,这些模型不可比。

我错了吗?

random-forest modeling
1个回答
0
投票

训练步骤

假设您正在使用sklearn,则clf.fit(Xtrain, ytrain)方法使您可以训练模型(clf)以最适合训练数据Xtrain和标签ytrain。如您所说,您可以在此阶段计算分数以评估模型的训练数据。

#train step
clf = your_classifier
clf.fit(Xtrain, ytrain)

测试步骤:

然后,您必须使用测试数据Xtest来提供先前训练的模型,以便生成新标签ypred

#test step
ypred = clf.predict(Xtest)

最后,您必须将这些生成的标签ypred与真实标签ytest进行比较,以使用混淆矩阵,指标等工具对未知数据(训练期间未使用的数据)提供模型性能的可靠评估。

from sklearn.metrics import classification_report, confusion_matrix, accuracy_score

test_cm = confusion_matrix(ytest,ypred)
test_report = classification_report(ytest,ypred)
test_accuracy = accuracy_score(ytest, ypred)
© www.soinside.com 2019 - 2024. All rights reserved.