Python 中的 RSME - 均方根误差

2025年3月17日 | 阅读 3 分钟

本教程将学习RSME(均方根误差)及其在Python中的实现。让我们从它的简要介绍开始。

引言

RSME(均方根误差)计算模型预测值与实际值之间的转换。换句话说,它是衡量回归问题中任何机器学习算法精度和错误率的技术之一。

误差指标使我们能够跟踪各种矩阵的效率和准确性。这些矩阵如下所示。

  • 均方误差 (MSE)
  • 均方根误差 (RSME)
  • R-square
  • 精度
  • MAPE等。

均方误差 (MSE)

MSE是一种风险方法,它使我们能够表示预测值与特征或实际值之间的平均平方差。它是使用以下方法计算的。语法如下。

语法 -

参数 -

  • y_true - 它是类数组的目标值或n_samples。
  • y_pred - 它是估计的目标值。
  • sample_weight (可选) - 它表示样本权重。
  • Multioutput {raw_values, uniform_average} - 它定义了多个输出值的聚合。raw_values返回多输出输入的完整误差集,uniform_average是所有输出的误差,权重均匀。
  • Squared - True,返回MSE值,否则返回RSME值。

返回 -

它返回一个非负浮点值(最佳值为0.0)或一个浮点值数组,每个目标值一个。

让我们理解下面的例子。

示例 - 1

输出

The difference between actual and predicted values: 1.5388307249337076

示例 - 2

输出

3.15206

均方根误差 (RMSE)

RMSE是均方误差函数计算值的平方根。它有助于我们绘制模型参数的估计值与实际值之间的差异。

使用RSME,我们可以轻松衡量模型的效率。

一个工作良好的算法,其RSME分数低于180。然而,如果RSME值超过180,我们需要对模型参数应用特征选择和超参数调优。

使用NumPy模块的均方根误差

RSME是预测值和实际值之间平均平方差的平方根。让我们看下面的公式。

RSME - Root Mean Square Error in Python

让我们分解上面的公式 -

  • Σ - 它代表“总和”。
  • di- 它代表第i个观测值。
  • pi- 它代表第i个预测值。
  • n - 它代表样本大小。

我们将使用Numpy模块的函数来实现RSME。让我们理解下面的例子。

注意 - 如果您的系统没有numpy和sklearn库,您可以使用以下命令进行安装。

示例 -

输出

Root Mean Square Error:
2.127439775880859

解释 -

我们在上面的程序中使用了numpy.subtract()函数计算了预测值和实际值之间的差值。首先,我们定义了包含实际值和预测值的两个列表。然后我们使用numpy的square()方法计算了实际值和预测值差值的平均值。最后我们计算了rmse。

结论

在本教程中,我们已经讨论了如何使用Python计算均方根误差,并配有示例说明。它主要用于查找给定数据集的准确性。如果RSME返回0;这意味着预测值和观测值之间没有差异。