用法:
mxnet.symbol.MakeLoss(data=None, grad_scale=_Null, valid_thresh=_Null, normalization=_Null, name=None, attr=None, out=None, **kwargs)
- data:(
Symbol
) - 输入数组。 - grad_scale:(
float
,
optional
,
default=1
) - 梯度尺度作为一元和二元运算符的补充 - valid_thresh:(
float
,
optional
,
default=0
) - 当数组中的每个元素小于时,将其裁剪为 0valid_thresh
.这用于normalization
被设定为'valid'
. - normalization:(
{'batch'
,
'null'
,
'valid'}
,
optional
,
default='null'
) - 如果设置为 null,则输出梯度将不会被归一化。如果将其设置为批处理,则输出梯度将除以批处理大小。如果设置为有效,则输出梯度将除以有效输入元素的数量。 - name:(
string
,
optional.
) - 结果符号的名称。
- data:(
结果符号。
参数:
返回:
返回类型:
在网络构建中制作自己的损失函数。
该运算符接受自定义损失函数符号作为终端损失,并且该符号应该是没有后向依赖的运算符。该函数的输出是相对于输入数据的损失梯度。
例如,如果您正在制作交叉熵损失函数。假设
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.symbol.op.broadcast_logical_xor用法及代码示例
- Python mxnet.symbol.op.log_softmax用法及代码示例
- Python mxnet.symbol.space_to_depth用法及代码示例
- Python mxnet.symbol.random_pdf_poisson用法及代码示例
- Python mxnet.symbol.argmin用法及代码示例
- Python mxnet.symbol.linalg_potrf用法及代码示例
- Python mxnet.symbol.contrib.dgl_graph_compact用法及代码示例
- Python mxnet.symbol.op.SliceChannel用法及代码示例
- Python mxnet.symbol.op.linalg_trmm用法及代码示例
- Python mxnet.symbol.sparse.exp用法及代码示例
- Python mxnet.symbol.sparse.zeros_like用法及代码示例
- Python mxnet.symbol.Symbol.get_children用法及代码示例
- Python mxnet.symbol.op.broadcast_plus用法及代码示例
- Python mxnet.symbol.linalg.makediag用法及代码示例
- Python mxnet.symbol.op.broadcast_mul用法及代码示例
- Python mxnet.symbol.fix用法及代码示例
- Python mxnet.symbol.broadcast_hypot用法及代码示例
- Python mxnet.symbol.linalg_gelqf用法及代码示例
- Python mxnet.symbol.op.reciprocal用法及代码示例
- Python mxnet.symbol.choose_element_0index用法及代码示例
注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.symbol.MakeLoss。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。