# MSELoss¶

class paddle.nn. MSELoss ( reduction='mean' ) [source]

Mean Square Error Loss Computes the mean square error (squared L2 norm) of given input and label.

If `reduction` is set to `'none'`, loss is calculated as:

\[Out = (input - label)^2\]

If `reduction` is set to `'mean'`, loss is calculated as:

\[Out = \operatorname{mean}((input - label)^2)\]

If `reduction` is set to `'sum'`, loss is calculated as:

\[Out = \operatorname{sum}((input - label)^2)\]

where input and label are float32 tensors of same shape.

Parameters

reduction (str, optional) – The reduction method for the output, could be ‘none’ | ‘mean’ | ‘sum’. If `reduction` is `'mean'`, the reduced mean loss is returned. If `size_average` is `'sum'`, the reduced sum loss is returned. If `reduction` is `'none'`, the unreduced loss is returned. Default is `'mean'`.

Shape:

input (Tensor): Input tensor, the data type is float32 or float64 label (Tensor): Label tensor, the data type is float32 or float64 output (Tensor): output tensor storing the MSE loss of input and label, the data type is same as input.

Examples

```>>> import paddle
>>> mse_loss = paddle.nn.loss.MSELoss()
>>> input = paddle.to_tensor([1.5])
>>> label = paddle.to_tensor([1.7])
>>> output = mse_loss(input, label)
>>> print(output)
Tensor(shape=[], dtype=float32, place=Place(cpu), stop_gradient=True,
0.04000002)
```
forward ( input, label )

Defines the computation performed at every call. Should be overridden by all subclasses.

Parameters
• *inputs (tuple) – unpacked tuple arguments

• **kwargs (dict) – unpacked dict arguments