mindspore.nn.MAE

class mindspore.nn.MAE[源代码]

计算平均绝对误差MAE(Mean Absolute Error)。

计算输入 \(x\) 和目标 \(y\) 各元素之间的平均绝对误差。

\[\text{MAE} = \frac{\sum_{i=1}^n \|{y\_pred}_i - y_i\|}{n}\]

这里, \(n\) 是batch size。

支持平台:

Ascend GPU CPU

样例:

>>> import numpy as np
>>> import mindspore
>>> from mindspore import nn, Tensor
>>>
>>> x = Tensor(np.array([0.1, 0.2, 0.6, 0.9]), mindspore.float32)
>>> y = Tensor(np.array([0.1, 0.25, 0.7, 0.9]), mindspore.float32)
>>> error = nn.MAE()
>>> error.clear()
>>> error.update(x, y)
>>> result = error.eval()
>>> print(result)
0.037499990314245224
clear()[源代码]

内部评估结果清零。

eval()[源代码]

计算平均绝对差(MAE)。

返回:

numpy.float64,计算的MAE的结果。

异常:
  • RuntimeError - 样本总数为0。

update(*inputs)[源代码]

使用预测值 \(y_{pred}\) 和真实值 \(y\) 更新局部变量。

参数:
  • inputs - 输入 y_predy 来计算MAE,其中 y_predy 的shape都是N-D,它们的shape相同。

异常:
  • ValueError - inputs 的数量不等于2。