mindspore.ops.mse_loss

mindspore.ops.mse_loss(input, target, reduction='mean')[源代码]

计算预测值和标签值之间的均方误差。

更多参考详见 mindspore.nn.MSELoss

参数:
  • input (Tensor) - 任意维度的Tensor。

  • target (Tensor) - 输入标签,任意维度的Tensor。大多数场景下与 input 具有相同的shape。 但是,也支持在两者shape不相同的情况下,通过广播保持一致。

  • reduction (str,可选) - 指定应用于输出结果的规约计算方式,可选 'none''mean''sum' ,默认值: 'mean'

    • "none":不应用规约方法。

    • "mean":计算输出元素的平均值。

    • "sum":计算输出元素的总和。

返回:

Tensor,数据类型为float,如果 reduction'mean''sum' 时,shape为0;如果 reduction'none' ,输入的shape则是广播之后的shape。

异常:
  • ValueError - 如果 reduction 的值不是以下其中之一时:'none''mean''sum'

  • ValueError - 如果 inputtarget 的shape不相同且无法广播。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> logits = Tensor(np.array([1, 2, 3]), mindspore.float32)
>>> labels = Tensor(np.array([[1, 1, 1], [1, 2, 2]]), mindspore.float32)
>>> output = ops.mse_loss(logits, labels, reduction='none')
>>> print(output)
[[0. 1. 4.]
 [0. 0. 1.]]