errperf(T,P,M) uses T and P, which are target and prediction vectors respectively, and returns the value for M, which is one of several error related performance metrics.
T and P can be row or column vectors of the same size. M can be one of the following performance metrics:
mae (mean absolute error)
mse (mean squared error)
rmse (root mean squared error)
mare (mean absolute relative error)
msre (mean squared relative error)
rmsre (root mean squared relative error)
mape (mean absolute percentage error)
mspe (mean squared percentage error)
rmspe (root mean squared percentage error)
T = [0:0.2:1];
P = rand(size(T)).*T;
errperf(T,P,'mae') returns 0.1574
To compute the relevant performance metric, the function uses recursion to first compute one or more error vectors. The function can therefore secondarily be used to compute these error vectors. M can therefore also be one of the following:
ae (absolute errors)
se (squared errors)
re (relative errors)
are (absolute relative errors)
sre (squared relative errors)
pe (percentage errors)
ape (absolute percentage errors)
spe (squared percentage errors)
The Neural Network Toolbox also has functions to compute mae and mse. This function does not make use of the toolbox.
Percentage error equals relative error times 100.
The abbreviations used in the code, and the calculation tree are documented in a comments section within the file.
[Please subscribe to this file if you use it, so you can be notified of updates.]
Skynet (2021). Error related performance metrics (https://www.mathworks.com/matlabcentral/fileexchange/15130-error-related-performance-metrics), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!