首页 > 其他分享 >【线性回归模型评价指标解析】

【线性回归模型评价指标解析】

时间:2023-12-24 15:33:03浏览次数:26  
标签:误差 RMSE 模型 np MAE 线性 MSE 解析

线性回归模型评价指标解析

(文章目录)


前言

线性回归是统计学中一种常见的方法,用于建立自变量与因变量之间的线性关系模型。在实际应用中,我们常常需要对线性回归模型的性能进行评估,以了解模型的拟合程度和预测能力。本文将介绍线性回归中几种常见的模型评价指标,包括均方误差(Mean Squared Error,MSE)、均方根误差(Root Mean Squared Error,RMSE)以及平均绝对误差(Mean Absolute Error,MAE)。


一、均方误差(MSE)

均方误差是线性回归模型中最常用的评价指标之一,它衡量了模型的预测值与真实值之间的平方差的平均值。MSE的计算公式如下:

$$ MSE = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 $$

其中,$n$表示样本数量,$y_i$表示第$i$个样本的真实值,$\hat{y}_i$表示模型对第$i$个样本的预测值。MSE越小,说明模型对数据的拟合越好。

import numpy as np
from sklearn.metrics import mean_squared_error

# 真实值
y_true = np.array([3, 4, 5, 6, 7])
# 模型预测值
y_pred = np.array([2.5, 4.2, 4.8, 6.2, 7.1])

# 计算均方误差
mse = mean_squared_error(y_true, y_pred)
print("均方误差 (MSE):", mse)

二、均方根误差(RMSE)

均方根误差是均方误差的平方根,它具有与原始数据相同的单位,因此更容易解释。RMSE的计算公式如下:

$$ RMSE = \sqrt{MSE} $$

与MSE一样,RMSE的值越小,表示模型的拟合效果越好。在实际应用中,通常用RMSE来度量模型的性能。

import numpy as np
from sklearn.metrics import mean_squared_error

# 真实值
y_true = np.array([3, 4, 5, 6, 7])
# 模型预测值
y_pred = np.array([2.5, 4.2, 4.8, 6.2, 7.1])

# 计算均方误差
mse = mean_squared_error(y_true, y_pred)
# 计算均方根误差
rmse = np.sqrt(mse)
print("均方根误差 (RMSE):", rmse)

三、平均绝对误差(MAE)

平均绝对误差是另一种常见的模型评价指标,它衡量了模型的预测值与真实值之间的绝对差的平均值。MAE的计算公式如下:

$$ MAE = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i| $$

与MSE和RMSE不同,MAE不考虑差值的平方,因此对异常值更加鲁棒。MAE的值越小,表示模型的拟合效果越好。

import numpy as np
from sklearn.metrics import mean_absolute_error

# 真实值
y_true = np.array([3, 4, 5, 6, 7])
# 模型预测值
y_pred = np.array([2.5, 4.2, 4.8, 6.2, 7.1])

# 计算平均绝对误差
mae = mean_absolute_error(y_true, y_pred)
print("平均绝对误差 (MAE):", mae)

标签:误差,RMSE,模型,np,MAE,线性,MSE,解析
From: https://blog.51cto.com/u_16202095/8955981

相关文章

  • 大模型的评测
    https://hf-mirror.com/spaces/HuggingFaceH4/open_llm_leaderboardHowitworks......
  • spring加载bean流程解析
    spring加载bean流程解析转载自:https://www.cnblogs.com/wyq178/p/11415877.htmlspring作为目前我们开发的基础框架,每天的开发工作基本和他形影不离,作为管理bean的最经典、优秀的框架,它的复杂程度往往令人望而却步。不过作为朝夕相处的框架,我们必须得明白一个问题就......
  • dns域名解析
    dns域名解析,需要一台服务器server1PC要先知道dns服务器的存在,dhcp配置服务器测试pc是否知道服务器存在:......
  • IP地址定位解析
    目录1IP地址定位解析1.1获取用户IP地址1.2淘宝库获取用户IP地址属地1.3通过Ip2region定位1.3.1Ip2region介绍1.3.2Ip2region特性1.3.3客户端实现1.3.3.1引入Maven仓库1.3.3.2基于文件查询1.3.3.3缓存VectorIndex索引1.3.3.4缓存整个xdb数据1IP地址定位......
  • Go 语言学习指南:变量、循环、函数、数据类型、Web 框架等全面解析
    学习基础知识掌握Go语言的常见概念,如变量、循环、条件语句、函数、数据类型等等。深入了解Go基础知识的好起点是查阅Go官方文档文章链接:Go编程语言详解:用途、特性、与Python和C++的比较基本语法了解Go语言的基本语法,包括Go程序的执行方式、包引入、主函数等Go......
  • Go 语言学习指南:变量、循环、函数、数据类型、Web 框架等全面解析
    学习基础知识掌握Go语言的常见概念,如变量、循环、条件语句、函数、数据类型等等。深入了解Go基础知识的好起点是查阅Go官方文档文章链接:Go编程语言详解:用途、特性、与Python和C++的比较基本语法了解Go语言的基本语法,包括Go程序的执行方式、包引入、主函数等Go......
  • 全面的开发者文档和用户目标解析:API 文档指南和开发者旅程
    开发者文档开发者文档,也称为API文档,是一种专门针对软件开发人员的技术写作形式。这种类型的文档通常包括API的技术规范、代码注释、软件设计和架构以及软件开发中涉及的其他详细技术描述。开发者文档是开发人员的重要工具,因为它提供了使用和集成特定软件、库或API的必要指南......
  • 全面的开发者文档和用户目标解析:API 文档指南和开发者旅程
    开发者文档开发者文档,也称为API文档,是一种专门针对软件开发人员的技术写作形式。这种类型的文档通常包括API的技术规范、代码注释、软件设计和架构以及软件开发中涉及的其他详细技术描述。开发者文档是开发人员的重要工具,因为它提供了使用和集成特定软件、库或API的必要指......
  • ml.net例子笔记8-生成式AI-大模型LLM
    生成式AI生成式AI是指能够通过学习数据和语言,生成新的、在某种程度上相似的输出,这种技术由深度学习特别是神经网络的快速发展推动。一、数据:AI的燃料首先,要理解生成式AI,我们必须了解它的基础——数据。数据是AI的燃料,没有数据,AI就无法运行。在生成式AI中,我们需要大量的高质量......
  • Feign源码解析:初始化过程(二)
    背景上一篇介绍了Feign源码初始化的一部分,内容主要是,@EnableFeignClients、@FeignClient这些注解,都支持设置一些自定义的配置类:[email protected]@Beandefinitionforthepiecesthatmakeuptheclient,forinstance......