繁体   English   中英

SKLearn使用新数据进行预测

[英]SKLearn Predicting using new Data

我已经尝试使用SKLearn进行线性回归。 我有类似的信息:Calories Eaten | 重量。

150 | 150

300 | 190

350 | 200

基本上编号,但我已将数据集纳入线性回归模型。

令我感到困惑的是,我将如何预测新数据,说我有10个新的卡路里数据被吃掉了,我希望它能预测体重?

regressor = LinearRegression()
regressor.fit(x_train, y_train)
y_pred = regressor.predict(x_test) ??

但是,我将如何制作卡路里吃掉的10个新数据并将其作为测试集我希望回归量预测?

您是对的,您只需调用模型的predict方法并传入新的未见数据进行预测。 现在它还取决于new data含义。 您是在引用您不知道结果的数据(即您不知道权重值),还是这些数据用于测试模型的性能?

对于新数据(预测):

你的方法是正确的。 您只需打印y_pred变量即可访问所有预测。

您知道相应的重量值,并且您想要评估模型:

确保您有两个单独的数据集:x_test(包含要素)和y_test(包含标签)。 使用y_pred变量生成预测,然后使用许多性能指标计算其性能。 最常见的是均方根,您只需将y_testy_pred作为参数传递。 以下是sklearn提供的所有回归性能指标的列表。

如果您不知道10个新数据点的权重值:

使用train_test_split将您的初始数据集分为两部分: trainingtesting 您将拥有4个数据集: x_trainy_trainx_testy_test

from sklearn.model_selection import train_test_split
# random state can be any number (to ensure same split), and test_size indicates a 25% cut
x_train, y_train, x_test, y_test = train_test_split(calories_eaten, weight, test_size = 0.25, random_state = 42) 

通过拟合x_trainy_train训练模型。 然后通过预测x_test并将这些predictionsy_test的实际结果进行比较来评估模型的训练表现。 通过这种方式,您可以了解模型的执行方式。 此外,您可以相应地预测10新数据点的weight values

作为初学者,还值得进一步阅读该主题。 是一个简单的教程。

令我感到困惑的是,我将如何预测新数据,说我有10个新的卡路里数据被吃掉了,我希望它能预测体重?

是的, Calories Eaten表示自变量,而Weight表示dependent变量。

将数据拆分为训练集和测试集后,下一步是使用X_trainy_train数据拟合回归y_train

训练模型后,您可以预测X_test方法的结果,因此我们得到了y_pred

现在,您可以将y_pred (预测数据)与y_test实际数据的y_test进行比较。

您还可以为创建的线性模型使用score方法,以获得模型的性能

使用R^2 (R平方)度量或确定系数来计算score

score = regressor.score(x_test, y_test)

要分割数据,可以使用train_test_split方法。

from sklearn.model_selection import train_test_split
X_train, y_train, X_test, y_test = train_test_split(eaten, weight, test_size = 0.2, random_state = 0)

您必须在sklearn中使用model_selection选择模型,然后训练并拟合数据集。

from sklearn.model_selection import train_test_split
X_train, y_train, X_test, y_test = train_test_split(eaten, weight)

regressor.fit(X_train, y_train)
y_pred = regressor.predict(X_test)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM