1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 回归评价指标MSE RMSE MAE MAPE及python实现

回归评价指标MSE RMSE MAE MAPE及python实现

时间:2024-04-23 06:35:25

相关推荐

回归评价指标MSE RMSE MAE MAPE及python实现

文章目录

回归评价指标公式MSERMSEMAEMAPEpython实现numpysklearn

回归评价指标公式

假设:

预测值:y^={y1^,y2^,…,yn^}\hat{y}=\{\hat{y_1},\hat{y_2},…,\hat{y_n}\}y^​={y1​^​,y2​^​,…,yn​^​}

真实值:y={y1,y2,…,yn}y=\{y_1,y_2,…,y_n\}y={y1​,y2​,…,yn​}

MSE

均方误差 – Mean Square Error

MSE=1n∑i=1n(yi^−yi)2MSE=\frac{1}{n}\sum_{i=1}^n(\hat{y_i}-y_i)^2MSE=n1​i=1∑n​(yi​^​−yi​)2

RMSE

均方根误差 – Root Mean Square Error

RMSE=1n∑i=1n(yi^−yi)2RMSE=\sqrt{\frac{1}{n}\sum_{i=1}^n(\hat{y_i}-y_i)^2}RMSE=n1​i=1∑n​(yi​^​−yi​)2​

MAE

平均绝对误差 – Mean Absolute Error

MAE=1n∑i=1n∣yi^−yi∣MAE=\frac{1}{n}\sum_{i=1}^n|\hat{y_i}-y_i|MAE=n1​i=1∑n​∣yi​^​−yi​∣

MAPE

平均绝对百分比误差 – Mean Absolute Percentage Error

MAPE=100%n∑i=1n∣yi^−yiyi∣MAPE=\frac{100\%}{n}\sum_{i=1}^n|\frac{\hat{y_i}-y_i}{y_i}|MAPE=n100%​i=1∑n​∣yi​yi​^​−yi​​∣

python实现

numpy

numpy的范数可以实现 MSE、RMSE、MAE,也可以都自己写。

numpy范数说明:

x_norm = np.linalg.norm(x, ord=None, axis=None, keepdims=False)

import numpy as npy = np.array([1,1])y_hat = np.array([2,3])## 利用范数实现## MSE--相当于y-y_hat的二阶范数的平方/nMSE = np.linalg.norm(y-y_hat, ord=2)**2/len(y)## RMSE--相当于y-y_hat的二阶范数/根号nRMSE = np.linalg.norm(y-y_hat, ord=2)/len(y)**0.5## MAE--相当于y-y_hat的一阶范数/nMAE = np.linalg.norm(y-y_hat, ord=1)/len(y)## 自己写MSE = np.mean(np.square(y - y_hat))RMSE = np.sqrt(np.mean(np.square(y - y_hat)))MAE = np.mean(np.abs(y-y_hat))MAPE = np.mean(np.abs((y - y_hat) / y)) * 100

sklearn

sklearn.metrics 可以实现 MSE、RMSE、MAE

from sklearn import metricsy = np.array([1,1])y_hat = np.array([2,3])MSE = metrics.mean_squared_error(y, y_hat)RMSE = metrics.mean_squared_error(y, y_hat)**0.5MAE = metrics.mean_absolute_error(y, y_hat)MAPE = metrics.mean_absolute_percentage_error(y, y_hat)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。