一篇文章讲清楚:回归评估方法

通过这篇文章,我们需要掌握常用的回归评估方法,了解不同评估方法的特点。

一、线性回归模型评估 -- MAE、MSE、RMSE三种指标

1.为什么要进行线性回归模型的评估

我们希望衡量预测值和真实值之间的差距,会用到MAE、MSE、RMSE多种测评函数进行评价。

2.平均绝对误差 Mean Absolute Error MAE

n 为样本数量, y 为实际值, yy ̂为预测值

MAE 越小模型预测约准确

from sklearn.metrics import mean_absolute_error

mean_absolute_error(y_test,y_predict)

3.均方误差****Mean Squared Error MSE

n 为样本数量, y 为实际值, yy ̂为预测值

MSE 越小模型预测约准确

from sklearn.metrics import mean_squared_error

mean_squared_error(y_test,y_predict)

4.均方根误差****Root Mean Squared Error

n 为样本数量, y 为实际值, y ̂为预测值

RMSE 越小模型预测约准确

RMSE 是 MSE 的平方根,某些情况下比MSE更有用

二、线性回归模型评估 -- MAE、MSE、RMSE三种指标对比

1.举个栗子:我们绘制了一条直线 y = 2x +5 用来拟合 y = 2x + 5 + e. 这些数据点,其中e为噪声(随机值)

MAE 和 RMSE 非常接近,都表明模型的误差很低。MAE 或 RMSE 越小,误差越小!

RMSE的计算公式中有一个平方项,因此大的误差将被平方,因此会增加 RMSE 的值,大多数情况下RMSE>MAE ,比如两个误差大小为1, 3求MAE和RMSE:

RMSE 会放大预测误差较大的样本对结果的影响,而 MAE 只是给出了平均误差

结论: RMSE > MAE都能反应真实误差,但是RMSE会对异常点更加敏感

2.再举个栗子:橙色线 y = 2x +5。蓝色的点 y = y + sin(x)*exp(x/20) + e 其中 exp() 表示指数函数

对比第一张图,所有指标都变大了,RMSE 几乎是 MAE 值的两倍,因为它对预测误差较大的点比较敏感

MAE和RMSE同样是真实反应误差,能不能说RMSE是更好的指标?我们只按照RMSE指标来优化模型,让模型的误差降的更低?

一直按照RMSE指标来训练模型,如果RMSE指标训练的非常低,说明什么?

说明模型对异常点(对噪声)也拟合的非常好。这样模型就容易过拟合了。所以评价指标要综合的看。

三、总结

1一般使用MAE和RMSE这两个指标

MAE反应的是"真实"的平均误差,RMSE会将误差大的数据点放大

MAE 不能体现出误差大的数据点,RMSE放大大误差的数据点对指标的影响, 但是对异常数据比较敏感。

2****综合结论

都能反映出预测值和真实值之间的误差

MAE对误差大小不敏感

RMSE会放大预测误差较大的样本的影响

RMSE对异常数据敏感

相关推荐
程序员清风1 分钟前
让 AI 编写与运行测试:从样例通过到回归验证
人工智能·数据挖掘·回归
qinglongcn8 分钟前
Agent 可能出什么事——五类异常与应对
人工智能·编辑器·ai编程
小易老师10 分钟前
用中间件把任务规划嵌入 Agent 循环:告别把计划写死在 Prompt 里
人工智能·agent
Ai-_Man19 分钟前
Coze扣子还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·人工智能·ai·小程序·1024程序员节
机器学习之心30 分钟前
基于贝叶斯物理信息神经网络的矿产预测与不确定性量化,MATLAB代码及复现报告
人工智能·神经网络·matlab·贝叶斯物理信息神经网络
weixin_4492293834 分钟前
Skill应用11:详细设计自动生成|强制“文字先行”,杜绝AI只堆代码不讲设计
人工智能·agent·架构设计·详细设计·trae·skill应用
AiNightVision34 分钟前
电力巡检夜视方案选型指南——无人机/机器人/固定监测三种场景怎么选
人工智能·科技·车载系统·机器人·无人机·边缘计算·视频
涛声依旧-底层原理研究所37 分钟前
拆解 AI Agent 的四个内核:Loop、Tools、Memory 与 Harness
人工智能·架构
D e re k ZH44 分钟前
保序回归:从 PAVA 到可并堆的单调约束优化
c++·算法·数据挖掘·回归·kotlin
田里的水稻1 小时前
FA_CNN卷积神经网络十八---感知机到多层感知机PyTorch
人工智能·pytorch·python