MATLAB函数,用于计算平均误差、误差最大值、标准差、均方误差、均方根误差

在这里插入图片描述

以下是一个MATLAB函数,用于计算常见的性能指标,并提供相应的解释:

源代码

function [ME, max_error, std_error, MSE, RMSE] = evaluate_model_performance(true_values, predicted_values)
% 评估模型性能的函数
%
% 输入:
%   true_values - 真实值
%   predicted_values - 预测值
%
% 输出:
%   ME - 平均误差(Mean Error)
%   max_error - 最大误差
%   std_error - 预测误差的标准差
%   MSE - 均方误差(Mean Squared Error)
%   RMSE - 均方根误差(Root Mean Squared Error)

% 计算平均误差(Mean Error)
ME = mean(true_values - predicted_values);
% 平均误差反映了预测是否存在系统性偏差,值为0表示无偏差。

% 计算最大误差
max_error = max(abs(true_values - predicted_values));
% 最大误差反映了预测中最大的绝对误差,有助于识别异常情况。

% 计算预测误差的标准差
std_error = std(true_values - predicted_values);
% 标准差反映了预测误差的离散程度,值越小表示预测更精确稳定。

% 计算均方误差(Mean Squared Error)
MSE = mean((true_values - predicted_values).^2);
% 均方误差综合反映了预测的准确性,值越小表示预测效果越好。

% 计算均方根误差(Root Mean Squared Error)
RMSE = sqrt(MSE);
% 均方根误差与原始数据单位相同,更直观地反映了预测误差的大小。
end

使用示例:

true_values = [10, 15, 20, 25, 30];
predicted_values = [12, 17, 18, 23, 28];

[ME, max_error, std_error, MSE, RMSE] = evaluate_model_performance(true_values, predicted_values);

fprintf('平均误差(ME): %.2f\n', ME);
fprintf('最大误差: %.2f\n', max_error);
fprintf('预测误差标准差: %.2f\n', std_error);
fprintf('均方误差(MSE): %.2f\n', MSE);
fprintf('均方根误差(RMSE): %.2f\n', RMSE);

该函数计算了五个常用的性能指标:

  1. 平均误差(ME): 反映预测是否存在系统性偏差,值为0表示无偏差。
  2. 最大误差: 反映预测中最大的绝对误差,有助于识别异常情况。
  3. 预测误差标准差: 反映预测误差的离散程度,值越小表示预测更精确稳定。
  4. 均方误差(MSE): 综合反映预测的准确性,值越小表示预测效果越好。
  5. 均方根误差(RMSE): 与原始数据单位相同,更直观地反映预测误差的大小。

这些指标可以全面评估模型的性能,有助于分析模型的优缺点,并针对性地进行模型优化和改进。

计算公式

计算公式如下:
以下是平均误差、误差最大值、标准差、均方误差和均方根误差的计算公式:

1. 平均误差 (Mean Error, ME)

平均误差是所有误差的算术平均值,公式为:
[
\text{ME} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)
]
其中:

  • (y_i) 是真实值
  • (\hat{y}_i) 是预测值
  • (n) 是样本数量

2. 误差最大值 (Maximum Error, ME)

误差最大值是所有误差中的最大值,公式为:
[
\text{Max Error} = \max(|y_i - \hat{y}_i|) \quad \text{for } i = 1, 2, \ldots, n
]

3. 标准差 (Standard Deviation, SD)

标准差是误差的离散程度,公式为:
[
\text{SD} = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \mu)^2}
]
其中:

  • (\mu) 是误差的平均值
  • (n) 是样本数量

4. 均方误差 (Mean Squared Error, MSE)

均方误差是误差平方的平均值,公式为:
[
\text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2
]

5. 均方根误差 (Root Mean Squared Error, RMSE)

均方根误差是均方误差的平方根,公式为:
[
\text{RMSE} = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2}
]

总结

这些误差指标可以帮助评估模型的预测性能,选择合适的指标取决于具体的应用场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

MATLAB卡尔曼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值