mindspore.ops.SmoothL1Loss
- class mindspore.ops.SmoothL1Loss(beta=1.0, reduction='none')[源代码]
计算平滑L1损失,该L1损失函数有稳健性。
更多参考详见
mindspore.ops.smooth_l1_loss()
。- 参数:
beta (float,可选) - 控制损失函数在L1Loss和L2Loss间变换的阈值,该值应大于零。默认值:1.0。
reduction (str,可选) - 对输出应用特定的规约方法:可选’none’、’mean’、’sum’。默认值:’mean’。
- 输入:
logits (Tensor) - shape: \((N, *)\) ,其中 \(*\) 表示任意数量的附加维度。数据类型支持float16或float32。
labels (Tensor) - shape: \((N, *)\) ,与 logits 的shape和数据类型相同。
- 输出:
Tensor,损失值,与 logits 的shape和数据类型相同。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> loss = ops.SmoothL1Loss() >>> logits = Tensor(np.array([1, 2, 3]), mindspore.float32) >>> labels = Tensor(np.array([1, 2, 2]), mindspore.float32) >>> output = loss(logits, labels) >>> print(output) [0. 0. 0.5]