当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python mxnet.symbol.stop_gradient用法及代码示例


用法:

mxnet.symbol.stop_gradient(data=None, name=None, attr=None, out=None, **kwargs)

参数

  • data(Symbol) - 输入数组。
  • name(string, optional.) - 结果符号的名称。

返回

结果符号。

返回类型

Symbol

停止梯度计算。

阻止输入的累积梯度反向流过此运算符。换句话说,这个算子阻止了计算梯度时考虑其输入的贡献。

例子:

v1 = [1, 2]
v2 = [0, 1]
a = Variable('a')
b = Variable('b')
b_stop_grad = stop_gradient(3 * b)
loss = MakeLoss(b_stop_grad + a)

executor = loss.simple_bind(ctx=cpu(), a=(1,2), b=(1,2))
executor.forward(is_train=True, a=v1, b=v2)
executor.outputs
[ 1.  5.]

executor.backward()
executor.grad_arrays
[ 0.  0.]
[ 1.  1.]

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 mxnet.symbol.stop_gradient。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。