Mean Absolute Percentage Error (MAPE)¶
Module Interface¶
- class torchmetrics.MeanAbsolutePercentageError(**kwargs)[source]
Computes Mean Absolute Percentage Error (MAPE):
Where
is a tensor of target values, and
is a tensor of predictions.
As input to
forward
andupdate
the metric accepts the following input:As output of
forward
andcompute
the metric returns the following output:mean_abs_percentage_error
(Tensor
): A tensor with the mean absolute percentage error over state
- Parameters
kwargs¶ (
Any
) – Additional keyword arguments, see Advanced metric settings for more info.
Note
MAPE output is a non-negative floating point. Best result is
0.0
. But it is important to note that, bad predictions, can lead to arbitarily large values. Especially when sometarget
values are close to 0. This MAPE implementation returns a very large number instead ofinf
.Example
>>> from torchmetrics import MeanAbsolutePercentageError >>> target = torch.tensor([1, 10, 1e6]) >>> preds = torch.tensor([0.9, 15, 1.2e6]) >>> mean_abs_percentage_error = MeanAbsolutePercentageError() >>> mean_abs_percentage_error(preds, target) tensor(0.2667)
Initializes internal Module state, shared by both nn.Module and ScriptModule.
Functional Interface¶
- torchmetrics.functional.mean_absolute_percentage_error(preds, target)[source]
Computes mean absolute percentage error.
- Parameters
- Return type
- Returns
Tensor with MAPE
Note
The epsilon value is taken from scikit-learn’s implementation of MAPE.
Example
>>> from torchmetrics.functional import mean_absolute_percentage_error >>> target = torch.tensor([1, 10, 1e6]) >>> preds = torch.tensor([0.9, 15, 1.2e6]) >>> mean_absolute_percentage_error(preds, target) tensor(0.2667)