@@ -5,36 +5,36 @@ SmoothL1Loss
55
66.. py :class :: paddle.nn.SmoothL1Loss(reduction = ' mean' , delta = 1.0 , name = None )
77
8- 该 OP 计算输入 input 和标签 label 间的 SmoothL1 损失,如果逐个元素的绝对误差低于 1,则创建使用平方项的条件
9- ,否则为 L1 损失。在某些情况下,它可以防止爆炸梯度,也称为 Huber 损失,该损失函数的数学计算公式如下:
8+ 计算输入 :attr: `input ` 和标签 :attr: `label ` 间的 SmoothL1 损失,如果逐个元素的绝对误差低于 1,则创建使用平方项的条件,否则为 L1 损失。在某些情况下,它可以防止爆炸梯度,也称为 Huber 损失,该损失函数的数学计算公式如下:
109
11- .. math ::
12- loss(x,y) = \frac {1 }{n}\sum _{i}z_i
10+ .. math ::
11+ loss(x, y) = \frac {1 }{n}\sum _{i}z_i
1312
14- `z_i`的计算公式如下:
13+ :math: `z_i` 的计算公式如下:
1514
16- .. math ::
15+ .. math ::
1716
18- \mathop {z_i} = \left \{\begin {array}{rcl}
19- 0.5 (x_i - y_i)^2 & & {if |x_i - y_i| < delta} \\
20- delta * |x_i - y_i| - 0.5 * delta^2 & & {otherwise}
17+ \mathop {z_i} = \left \{\begin {array}{rcl}
18+ 0.5 (x_i - y_i)^2 & & {if |x_i - y_i| < \ delta } \\
19+ \ delta * |x_i - y_i| - 0.5 * \ delta ^2 & & {otherwise}
2120 \end {array} \right .
2221
2322 参数
2423::::::::::
25- - **reduction ** (string,可选): - 指定应用于输出结果的计算方式,数据类型为 string,可选值有:`none `, `mean `, `sum `。默认为 `mean `,计算 `mini-batch ` loss 均值。设置为 `sum ` 时,计算 `mini-batch ` loss 的总和。设置为 `none ` 时,则返回 loss Tensor。
26- - **delta ** (string,可选): SmoothL1Loss 损失的阈值参数,用于控制 Huber 损失对线性误差或平方误差的侧重。数据类型为 float32。默认值= 1.0。
24+
25+ - **reduction ** (str,可选) - 指定应用于输出结果的计算方式,可选值有 ``none ``、``mean `` 和 ``sum ``。默认为 ``mean ``,计算 ``mini-batch `` loss 均值。设置为 `sum ` 时,计算 `mini-batch ` loss 的总和。设置为 ``none `` 时,则返回 loss Tensor。
26+ - **delta ** (str,可选) - SmoothL1Loss 损失的阈值参数 :math: `\delta `,用于控制 Huber 损失对线性误差或平方误差的侧重。数据类型为 float32。默认值为 :math: `1.0 `。
2727 - **name ** (str,可选) - 具体用法请参见 :ref: `api_guide_Name `,一般无需设置,默认值为 None。
2828
2929输入
3030::::::::::
31- - **input ** (Tensor):输入 `Tensor `,数据类型为 float32。其形状为 :math: `[N, C]`,其中 `C ` 为类别数。对于多维度的情形下,它的形状为 :math: `[N, C, d_1 , d_2 , ..., d_k]`,k >= 1。
32- - **label ** (Tensor):输入 input 对应的标签值,数据类型为 float32。数据类型和 input 相同。
33-
3431
32+ - **input ** (Tensor):输入 `Tensor `,数据类型为 float32。其形状为 :math: `[N, C]`,其中 :math: `C` 为类别数。对于多维度的情形下,它的形状为 :math: `[N, C, d_1 , d_2 , ..., d_k]`,:math: `k \geqslant 1 `。
33+ - **label ** (Tensor):输入 :attr: `input ` 对应的标签值,数据类型和 :attr: `input ` 相同。
3534
3635返回
3736:::::::::
37+
3838Tensor,计算 `SmoothL1Loss ` 后的损失值。
3939
4040
0 commit comments