首页 > 其他分享 >测试一波回归模型的误差

测试一波回归模型的误差

时间:2024-02-26 23:56:13浏览次数:35  
标签:一波 误差 pred 模型 metrics 测试 error model true

如何衡量一个线性回归模型准确性

上一篇文章讲了怎么使用线性回归来预测,但是没有对这个模型的性能和准确性进行有效评估。

一般来讲,误差越小,预测就越准确。但是如果误差过于小,也要考虑是否过度拟合。

下面几个指标是用来衡量一个模型的误差大小:

    1. 平均绝对误差(Mean Absolute Error,简称MAE)
      它的数学公式是:

scikit-learn里对应的函数如下:

mean_absolute_error(y_true, y_pred)

其中y_true是真实的目标值,y_pred是预测目标值。
MAE越小,说明模型的预测能力越好。

    1. 均方误差(Mean Squared Error,简称MSE)
      它的数学公式是:

mean_squared_error(y_true, y_pred)
MSE越小,表示模型的预测值与实际观测值之间的差异较小,即模型具有较高的预测精度。

    1. 均方对数误差(Mean Squared Log Error,简称MSLE):

mean_squared_log_error(y_true, y_pred)
MSLE的值越小,表示预测结果与真实值的差异越小,即模型的拟合程度越好。

    1. 绝对误差中值(Median Absolute Error,简称MedAE):

median_absolute_error(y_true, y_pred)

MedAE越小的模型,通常意味着它在大多数数据点上的预测更为准确。

实际使用中我用得最多的是MSE和MEdAE以及r2 score(它用来描述自变量和因变量的关联性,通常值为0-1之间),具体代码如下所示:

import sklearn.metrics as metrics
import numpy as np

# Sample data
X = np.array([[1], [2], [3], [4], [5]])  # Input feature
y = np.array([2, 3.5, 2.8, 4.6, 5.2])     # Output target

# Create a linear regression model
model = LinearRegression()

# Fit the model to the data
model.fit(X, y)

# Make predictions
X_new = np.array([[6], [7]])  # New data for prediction
y_pred = model.predict(X_new)

print("Predictions:", y_pred)

mse = metrics.mean_squared_error(y, y_pred)
r2 = metrics.r2_score(y, y_pred)
m_error = metrics.median_absolute_error(y, y_pred)

print('MSE is {}'.format(mse))
print('R2 is {}'.format(r2))
print('M_ERROR is {}'.format(m_error))

标签:一波,误差,pred,模型,metrics,测试,error,model,true
From: https://www.cnblogs.com/freephp/p/18035887

相关文章

  • 【性能测试】Redis中的缓存雪崩、缓存击穿、缓存穿透问题详解
    一.什么是缓存雪崩当我们提到缓存系统中的问题,缓存雪崩是一个经常被讨论的话题。缓存雪崩是指在某一时刻发生大量的缓存失效,导致瞬间大量的请求直接打到了数据库,可能会导致数据库瞬间压力过大甚至宕机。尤其在高并发的系统中,这种情况会导致连锁反应,整个系统可能会崩溃。1.......
  • 基于FPGA的图像双边滤波实现,包括tb测试文件和MATLAB辅助验证
    1.算法运行效果图预览  将FPGA数据导入到matlab对比测试: 2.算法运行软件版本vivado2019.2 matlab2022a 3.算法理论概述         双边滤波是一种非线性滤波方法,它能够在平滑图像的同时保持边缘的锐度。这一特性使得双边滤波在图像处理领域具有广泛的应......
  • 学习python自动化——pytest单元测试框架
    一、什么是pytest单元测试框架,unittest(python自带的),pytest(第三方库)。用于编写测试用例、收集用例、执行用例、生成测试结果文件(html、xml)1.1、安装pytestpipinstallpytest1.2、导入importpytest二、步骤2.1、TestCase(测试用例)2.1.1、创建测试类......
  • 接口管理怎么做,软件接口测试工具推荐
    1.背景作为互联网工作者,不论是前端、后端还是测试,接口管理都是一个重要的任务。通常情况下,我们需要依赖以下解决方案来完成整个接口管理过程:使用Swagger管理API文档使用Postman调试API使用RAP或其他MockAPI工具使用JMeter进行API自动化测试可以看出,每个步骤......
  • 中英文互译赫尔辛基大学翻译模型安装与测试
    引子近期接到一个文本中英互译的任务,一直以为这种翻译应该很成熟,各种商用版本很多。那么开源的一定也不少,经过网络搜索发现,近两年还真的出现了很多优秀的开源翻译项目。找到了赫尔辛基大学开源免费的多语言翻译模型,开发了1400多个多语种翻译模型。其中就包含了中译英和英译中。OK......
  • 测试用例要素
     编写测试用例的主要包含以下要素:用例编号,所属模块,测试标题,优先级,前置条件,测试输入,操作步骤,预期结果,实际结果,案例设计者,设计日期,案例性质。用例编号由字母、字符、数字组合而成的字符串,有唯一性,易识别性。所属模块当前测试用例所在的测试大类或被测试需求、被测的模块、被测......
  • K8S测试lcoal StorageClass PVC
    测试lcoalStorageClassvilocal-path.yaml---apiVersion:v1kind:PersistentVolumeClaimmetadata:name:local-path-pvcspec:storageClassName:nfs#<===使用哪个SCaccessModes:-ReadWriteOnceresources:requests:storage:10Gi---......
  • 选择最适合数据的嵌入模型:OpenAI 和开源多语言嵌入的对比测试
    OpenAI最近发布了他们的新一代嵌入模型embeddingv3,他们将其描述为性能最好的嵌入模型,具有更高的多语言性能。这些模型分为两类:较小的称为text-embeddings-3-small,较大且功能更强大的称为text-embeddings-3-large。这些模型的设计和训练方式的信息披露得很少,模型只能通过付......
  • 寒假学习 13 使用Avro数据源测试Flume
    1.1  创建avro.conf#Namethecomponentsonthisagenta1.sources=r1a1.sinks=k1a1.channels=c1#Describe/configurethesourcea1.sources.r1.type=avroa1.sources.r1.channels=c1a1.sources.r1.bind=0.0.0.0a1.sources.r1.port=4141#Describet......
  • 寒假学习 14 使用netcat 数据源测试Flume
    1.1  创建netcat.conf 1.2在/usr/flume/flume-1.7.0目录下启动flumeagent出现如下: 1.3启动Flume,在另一个终端(这里称为“Telnet终端”)中,输入命令“telnetlocalhost44444”  当输出错误:bash:telnet:commandnotfound…说明容器中没有telnet,需要下载:......