未验证 提交 ae4724cf 编写于 作者: B Bai Yifan 提交者: GitHub

fix type issue (#26500)

上级 bf4a4636
...@@ -253,9 +253,6 @@ class CrossEntropyLoss(fluid.dygraph.Layer): ...@@ -253,9 +253,6 @@ class CrossEntropyLoss(fluid.dygraph.Layer):
class MSELoss(fluid.dygraph.layers.Layer): class MSELoss(fluid.dygraph.layers.Layer):
""" """
:alias_main: paddle.nn.MSELoss
:alias: paddle.nn.MSELoss,paddle.nn.layer.MSELoss,paddle.nn.layer.loss.MSELoss
**Mean Square Error Loss** **Mean Square Error Loss**
Computes the mean square error (squared L2 norm) of given input and label. Computes the mean square error (squared L2 norm) of given input and label.
...@@ -277,8 +274,6 @@ class MSELoss(fluid.dygraph.layers.Layer): ...@@ -277,8 +274,6 @@ class MSELoss(fluid.dygraph.layers.Layer):
where `input` and `label` are `float32` tensors of same shape. where `input` and `label` are `float32` tensors of same shape.
Parameters: Parameters:
input (Variable): Input tensor, the data type is float32,
label (Variable): Label tensor, the data type is float32,
reduction (string, optional): The reduction method for the output, reduction (string, optional): The reduction method for the output,
could be 'none' | 'mean' | 'sum'. could be 'none' | 'mean' | 'sum'.
If :attr:`reduction` is ``'mean'``, the reduced mean loss is returned. If :attr:`reduction` is ``'mean'``, the reduced mean loss is returned.
...@@ -286,46 +281,27 @@ class MSELoss(fluid.dygraph.layers.Layer): ...@@ -286,46 +281,27 @@ class MSELoss(fluid.dygraph.layers.Layer):
If :attr:`reduction` is ``'none'``, the unreduced loss is returned. If :attr:`reduction` is ``'none'``, the unreduced loss is returned.
Default is ``'mean'``. Default is ``'mean'``.
Returns: Shape:
The tensor variable storing the MSE loss of input and label. input (Tensor): Input tensor, the data type is float32 or float64
label (Tensor): Label tensor, the data type is float32 or float64
Return type: output (Tensor): output tensor storing the MSE loss of input and label, the data type is same as input.
Variable.
Examples: Examples:
.. code-block:: python .. code-block:: python
import numpy as np import numpy as np
import paddle import paddle
from paddle import fluid
import paddle.fluid.dygraph as dg
mse_loss = paddle.nn.loss.MSELoss()
input = fluid.data(name="input", shape=[1])
label = fluid.data(name="label", shape=[1])
place = fluid.CPUPlace()
input_data = np.array([1.5]).astype("float32") input_data = np.array([1.5]).astype("float32")
label_data = np.array([1.7]).astype("float32") label_data = np.array([1.7]).astype("float32")
# declarative mode paddle.disable_static()
output = mse_loss(input,label) mse_loss = paddle.nn.loss.MSELoss()
exe = fluid.Executor(place) input = paddle.to_tensor(input_data)
exe.run(fluid.default_startup_program()) label = paddle.to_tensor(label_data)
output_data = exe.run( output = mse_loss(input, label)
fluid.default_main_program(), print(output.numpy())
feed={"input":input_data, "label":label_data}, # [0.04000002]
fetch_list=[output],
return_numpy=True)
print(output_data)
# [array([0.04000002], dtype=float32)]
# imperative mode
with dg.guard(place) as g:
input = dg.to_variable(input_data)
label = dg.to_variable(label_data)
output = mse_loss(input, label)
print(output.numpy())
# [0.04000002]
""" """
def __init__(self, reduction='mean'): def __init__(self, reduction='mean'):
...@@ -338,10 +314,10 @@ class MSELoss(fluid.dygraph.layers.Layer): ...@@ -338,10 +314,10 @@ class MSELoss(fluid.dygraph.layers.Layer):
def forward(self, input, label): def forward(self, input, label):
if not fluid.framework.in_dygraph_mode(): if not fluid.framework.in_dygraph_mode():
fluid.data_feeder.check_variable_and_dtype(input, 'input', fluid.data_feeder.check_variable_and_dtype(
['float32'], 'MSELoss') input, 'input', ['float32', 'float64'], 'MSELoss')
fluid.data_feeder.check_variable_and_dtype(label, 'label', fluid.data_feeder.check_variable_and_dtype(
['float32'], 'MSELoss') label, 'label', ['float32', 'float64'], 'MSELoss')
square_out = fluid.layers.square( square_out = fluid.layers.square(
fluid.layers.elementwise_sub(input, label)) fluid.layers.elementwise_sub(input, label))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册