均方根误差与精度线性回归

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

我建立了一个简单的线性回归模型,使用该数据集https://archive.ics.uci.edu/ml/datasets/Student+Performance来预测学生的最终成绩。

虽然我的准确性非常好,但误差似乎很大。

enter image description here

我不确定我是不是只正确理解错误的含义,还是在代码中犯了一些错误。我认为对于92的精度,误差应该更小并且更接近于0。

这是我的代码:

data = pd.read_csv("/Users/.../student/student-por.csv", sep=";")

X = np.array(data.drop([predict], 1))
y = np.array(data[predict]) 

x_train, x_test, y_train, y_test = sklearn.model_selection.train_test_split(X, y, test_size = 0.1, random_state=42)

linear = linear_model.LinearRegression()

linear.fit(x_train, y_train)

linear_accuracy = round(linear.score(x_test, y_test) , 5)

linear_mean_abs_error = metrics.mean_absolute_error(y_test, linear_prediction)
linear_mean_sq_error = metrics.mean_squared_error(y_test, linear_prediction)
linear_root_mean_sq_error = np.sqrt(metrics.mean_squared_error(y_test, linear_prediction))

在这种情况下,我是否在代码中犯了任何错误或确实有意义?

我建立了一个简单的线性回归模型,使用此数据集https://archive.ics.uci.edu/ml/datasets/Student+Performance预测学生的最终成绩。虽然我的准确性非常好,但是错误...

python machine-learning scikit-learn linear-regression
1个回答
0
投票

sklearn线性回归中的精度度量是R ^ 2度量。它从本质上告诉您模型预测变量解释的因变量变化的百分比。 0.92是一个非常好的分数,但这并不意味着您的错误将是0。我看了您的工作,似乎您使用了所有数值变量作为预测变量,而目标是G3。代码看起来不错,结果看起来也很准确。在回归任务中,很难获得0错误。请让我知道,如果你有任何问题。干杯

© www.soinside.com 2019 - 2024. All rights reserved.