用法:
mxnet.ndarray.op.MakeLoss(data=None, grad_scale=_Null, valid_thresh=_Null, normalization=_Null, out=None, name=None, **kwargs)
- data:(
NDArray
) - 输入数组。 - grad_scale:(
float
,
optional
,
default=1
) - 梯度尺度作为一元和二元运算符的补充 - valid_thresh:(
float
,
optional
,
default=0
) - 当数组中的每个元素小于时,将其裁剪为 0valid_thresh
.这用于normalization
被设定为'valid'
. - normalization:(
{'batch'
,
'null'
,
'valid'}
,
optional
,
default='null'
) - 如果设置为 null,则输出梯度将不会被归一化。如果将其设置为批处理,则输出梯度将除以批处理大小。如果设置为有效,则输出梯度将除以有效输入元素的数量。 - out:(
NDArray
,
optional
) - 输出 NDArray 来保存结果。
- data:(
out:- 此函数的输出。
NDArray 或 NDArray 列表
参数:
返回:
返回类型:
在网络构建中制作自己的损失函数。
该运算符接受自定义损失函数符号作为终端损失,并且该符号应该是没有后向依赖的运算符。该函数的输出是相对于输入数据的损失梯度。
例如,如果您正在制作交叉熵损失函数。假设
out
是预测输出,label
是真实标签,那么交叉熵可以定义为:cross_entropy = label * log(out) + (1 - label) * log(1 - out) loss = MakeLoss(cross_entropy)
当我们创建自己的损失函数或想要组合多个损失函数时,我们将需要使用
MakeLoss
。此外,我们可能希望阻止某些变量的梯度进行反向传播。在BlockGrad
或stop_gradient
中查看更多详细信息。此外,我们可以通过设置
grad_scale
来给损失一个比例,这样损失的梯度会在反向传播中重新调整。注意:
此运算符应用作符号而不是 NDArray。
相关用法
- Python mxnet.ndarray.op.uniform用法及代码示例
- Python mxnet.ndarray.op.sample_negative_binomial用法及代码示例
- Python mxnet.ndarray.op.khatri_rao用法及代码示例
- Python mxnet.ndarray.op.unravel_index用法及代码示例
- Python mxnet.ndarray.op.slice_like用法及代码示例
- Python mxnet.ndarray.op.L2Normalization用法及代码示例
- Python mxnet.ndarray.op.softmax_cross_entropy用法及代码示例
- Python mxnet.ndarray.op.round用法及代码示例
- Python mxnet.ndarray.op.diag用法及代码示例
- Python mxnet.ndarray.op.linalg_det用法及代码示例
- Python mxnet.ndarray.op.sample_uniform用法及代码示例
- Python mxnet.ndarray.op.sort用法及代码示例
- Python mxnet.ndarray.op.linalg_potrf用法及代码示例
- Python mxnet.ndarray.op.linalg_potri用法及代码示例
- Python mxnet.ndarray.op.broadcast_minus用法及代码示例
- Python mxnet.ndarray.op.take用法及代码示例
- Python mxnet.ndarray.op.pad用法及代码示例
- Python mxnet.ndarray.op.erfinv用法及代码示例
- Python mxnet.ndarray.op.UpSampling用法及代码示例
- Python mxnet.ndarray.op.Reshape用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.ndarray.op.MakeLoss。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。