mindspore.amp.StaticLossScaler
- class mindspore.amp.StaticLossScaler(scale_value)[源代码]
Static Loss scale类。用固定的常数来scales和unscale损失或梯度。
Note
这是一个实验性接口,后续可能删除或修改。
- 参数:
scale_value (Union(float, int)) - 缩放系数。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> loss_scaler = amp.StaticLossScaler(scale_value=2**10) >>> loss_value = Tensor([1.], mindspore.float32) >>> scaled_loss_value = loss_scaler.scale(loss_value) >>> print(scaled_loss_value) [1024.] >>> grads = (Tensor(np.array([1.5, 1.0]), mindspore.float16), ... Tensor(np.array([1.2]), mindspore.float16)) >>> unscaled_grads = loss_scaler.unscale(grads) >>> print(unscaled_grads) (Tensor(shape=[2], dtype=Float16, value= [ 1.4648e-03, 9.7656e-04]), Tensor(shape=[1], dtype=Float16, value= [ 1.1721e-03]))
- adjust(grads_finite)[源代码]
scale_value 值固定。
- 参数:
grads_finite (Tensor) - bool类型的标量Tensor,表示梯度是否为有效值(无溢出)。