首页 > 编程知识 正文

衡量回归模型的准确性(回归平方和计算公式)

时间:2023-05-03 08:29:57 阅读:34 作者:534

之前已经建立了线性回归,并且已经用模型预测了测试数据。接下来最重要的是如何评价回归的模拟效果。在模型评估的相关内容中,误差用于表示模型的实际值和预测值之间的差异。

衡量回归拟合效果的常用指标如下:

平均绝对误差:这是给定数据集所有数据点的平均绝对误差。

均方误差:这是给定数据集的所有数据点的误差平方的平均值。这是最受欢迎的指标之一。

中值绝对误差:这是给定数据集中所有数据点的中值误差。该指标的主要优点是可以消除异常值的干扰。测试数据集中的单个坏点不会影响整个误差指标,但平均误差指标会受到异常点的影响。

解释方差得分:该得分用于衡量我们的模型对数据集波动的解释力。如果分数是1.0,那么我们的模型就是完美的。

R-square得分:该指标读作“R-square”,是指确定性相关系数,用于衡量模型对未知样本的预测效果。最好的分数是1.0,数值也可以是负数。

scikit-learn中有一个模块提供了计算所有指标的功能,然后编写代码《创建线性回归器》:

#计算回归精度

将sklearn.metrics导入为sm

#计算平均绝对误差

打印('平均绝对误差=',圆形(平均绝对误差(y_test,y_test_pred),2))

#计算均方误差

打印('均方误差=',四舍五入(均方误差(y_test,y_test_pred),2))

#计算绝对误差中值。

打印('中值绝对误差=',圆形(sm .中值绝对误差(y_test,y_test_pred),2))

#计算解释差异分数

打印('解释方差误差=',四舍五入(解释方差分数(y_test,y_test_pred),2))

#计算R分数

print ('R2分数误差=',round(sm.r2_score(y_test,y_test_pred),2))

输出如下:

(“平均绝对误差=”,0.54)

(“均方误差=”,0.38)

(“中间绝对误差=”,0.54)

(“解释方差误差=”,0.68)

(' R2评分误差=',0.68)

用每一个指标来描述每一件事是非常枯燥的,所以我们只选择一两个指标来评价我们的模型。通常的做法是确保均方误差最低,解释方差得分最高。

模型训练完成后,需要将模型保存为文件,下次使用时只需加载即可。代码如下:

#保存模型

进口泡菜

output _ model _ file=' saved _ model . pkl '

打开(output_model_file,' w ')为f:

pickle.dump(线性回归器,f)

回归模型保存在saved_model.pkl文件中。让我们看看如何加载和使用它。代码如下:

#负载使用模型

打开(output_model_file,' r ')为f:

model_linregr=pickle.load(f)

y _ test _ pred _ new=model _ linregr . predict(x _ test)

打印('新平均绝对误差=',圆形(sm.mean_absolute_error(y_test,y_test_pred_new),2))

输出如下:

(“新平均绝对误差=”,0.54)

相关阅读:

《用R语言做数据分析——一元线性回归》

《每天一点数据分析——回归分析》

《用R语言做数据分析——线性模型函数简介》

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。