MATLAB基础学习笔记(6、MATLAB评价预测效果好坏)

MATLAB评价预测效果好坏

清风老师主讲的MATLAB入门教程学习笔记

假设真实值是向量 y=[y1,y2,…,yn]y=[y_1 ,y_2 ,\ldots,y_n ]y=[y1,y2,,yn] ,拟和值或预测值是向量 y^=[y1^,y2^,…,yn^]\hat{y} =[\hat{y_1 } ,\hat{y_2 } ,\ldots,\hat{y_n } ]y^=[y1^,y2^,,yn^]

y = [100 102 108 117 135 178 198 241 290 349];
y_hat = [93 108 118 117 141 170 196 249 296 359];
n = length(y);

1、SSE

误差(或残差)平方和(Sum of Squares due to Error)

SSE=∑i=1n(yi−yi^)2 SSE=\sum_{i=1}^n (y_i -\hat{y_i } )^2 SSE=i=1n(yiyi^)2

SSE = sum((y - y_hat).^2)
SSE = 489

2、MSE

均方误差(Mean Square Error)

SSE=1n∑i=1n(yi−yi^)2 SSE=\frac{1}{n}\sum_{i=1}^n (y_i -\hat{y_i } )^2 SSE=n1i=1n(yiyi^)2

MSE = SSE / n
MSE = 48.9000

3、RMSE

均方根误差(Root Mean Square Error),实际使用最多

它的量纲和原来数据的量纲相同

SSE=1n∑i=1n(yi−yi^)2 SSE=\sqrt{\frac{1}{n}\sum_{i=1}^n (y_i -\hat{y_i } )^2 } SSE=n1i=1n(yiyi^)2

RMSE = sqrt(MSE)
RMSE = 6.9929

4、MAE

平均绝对误差(Mean Absolute Error)

它的量纲和原来数据的量纲相同

SSE=1n∑i=1n∣yi−yi^∣ SSE=\frac{1}{n}\sum_{i=1}^n |y_i -\hat{y_i } | SSE=n1i=1nyiyi^

MAE = 1 / n * (sum(abs(y - y_hat)))
MAE = 6.3000

5、MAPE

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

该公式通常将值乘以100,以百分比显示

注意:当真实值中有0时,存在分母为0的情况,该公式

MAPE=1n∑i=1n∣yi−yi^yi∣ MAPE=\frac{1}{n}\sum_{i=1}^n \left|\frac{y_i -\hat{y_i } }{y_i }\right| MAPE=n1i=1nyiyiyi^

MAPE = 1 / n * (sum(abs((y - y_hat) ./y)))
MAPE = 0.0403

将这个数乘以100,那么单位为%

MAPE = 1 / n * (sum(abs((y - y_hat) ./y))) * 100
MAPE = 4.0344

6、SMAPE

对称平均绝对百分比误差(Symmerric Mean Absolute Percentage Error)

他的范围是0%到200%,预测值和真实值完全吻合时等于0

KaTeX parse error: Unexpected end of input in a macro argument, expected '}' at end of input: …at{y_i } |)/2}

fz = abs(y - y_hat)
fz = 1x10
     7     6    10     0     6     8     2     8     6    10

fm = (abs(y) + abs(y_hat))/2
fm = 1x10
   96.5000  105.0000  113.0000  117.0000  138.0000  174.0000  197.0000  245.0000  293.0000  354.0000

MAPE = 1 / n * (sum(fz./fm)) * 100
MAPE = 3.9916

7、 R2R^2R2

决定系数、可决系数、R方、拟和优度(Coefficient of determination)

R2=1−∑i=1n(y−y^)2∑i=1n(y−yˉ)2 R^2 =1-\frac{\sum_{i=1}^n (y-\hat{y} )^2 }{\sum_{i=1}^n (y-\bar{y} )^2 } R2=1i=1n(yyˉ)2i=1n(yy^)2

R2=∑i=1n(y^−yˉ)2∑i=1n(y−yˉ)2 R^2 =\frac{\sum_{i=1}^n (\hat{y} -\bar{y} )^2 }{\sum_{i=1}^n (y-\bar{y} )^2 } R2=i=1n(yyˉ)2i=1n(y^yˉ)2

式中 yˉ\bar{y}yˉyyy 的均值

如果使用的是非线性回归模型,那么R方只能使用第一种计算方法!且此时R方的范围是 (−∞,1](-\infty ,1](,1]

线性回归中,两种方法算出来的R方一定相等

fz = sum((y - y_hat).^2)
fz = 489
fm = sum((y - mean(y)).^2)
fm = 6.8340e+04
R2 = 1- fz/fm
R2 = 0.9928

约接近1,预测效果越好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

最好有梦想~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值