2024年04月29日 Python计算RMSE 极客笔记
在回归分析中,均方根误差(Root Mean Square Error,RMSE)是一种用来评估预测模型的准确度的常见指标。RMSE是预测值与观测值之差的平方的均值的平方根。在本文中,我们将详细介绍如何使用Python来计算RMSE,并给出示例代码和运行结果。
RMSE的定义如下:
RMSE = \sqrt{\frac{1}{n}\sum_{i=1}^{n}(y_i – \hat{y_i})^2}
其中,n表示样本数量,y_i表示观测值,\hat{y_i}表示预测值,\sum表示求和。
在Python中,我们可以使用numpy库来进行数学运算,方便地计算RMSE。下面是一个简单的示例,展示了如何使用Python计算RMSE。
import numpy as np
# 定义观测值和预测值
y_true = np.array([3, -0.5, 2, 7])
y_pred = np.array([2.5, 0.0, 2, 8])
# 计算均方根误差
rmse = np.sqrt(np.mean((y_true - y_pred) ** 2))
print("RMSE:", rmse)
上述代码中,我们首先导入numpy库,并定义了观测值y_true
和预测值y_pred
。然后使用np.mean
计算均值,np.sqrt
计算平方根,最后输出RMSE的值。
当我们运行上述代码时,将会输出如下结果:
RMSE: 0.6123724356957945
这表示预测模型的均方根误差为0.612。
上面的示例中,我们只考虑了一维的情况。在实际应用中,我们可能会处理多维的数据。下面是一个计算多维数据RMSE的示例:
import numpy as np
# 定义多维观测值和预测值
y_true = np.array([[1, 2], [3, 4], [5, 6]])
y_pred = np.array([[1, 1], [3, 3], [5, 6]])
# 计算均方根误差
rmse = np.sqrt(np.mean((y_true - y_pred) ** 2))
print("RMSE:", rmse)
在这个示例中,我们定义了一个二维的观测值y_true
和预测值y_pred
。我们仍然使用相同的方法计算RMSE,并输出其值。
当我们运行上述代码时,将会输出如下结果:
RMSE: 0.5
这表示多维数据的预测模型的均方根误差为0.5。
在本文中,我们详细介绍了如何使用Python计算均方根误差(RMSE)。
本文链接:http://so.lmcjl.com/news/3392/