所有 TF1 损失量表的基类。
用法
tf.mixed_precision.experimental.LossScale()
警告:此类已弃用,并且在 TensorFlow 的未来版本中不会从 TF 2 命名空间中公开。一旦发生这种情况,这个类将只能作为 tf.compat.v1.mixed_precision.LossScale
访问。此类中的所有函数都已合并到 tf.keras.mixed_precision.LossScaleOptimizer
中,因此不再需要此类。
这是一个抽象基类,所以不能直接实例化它。相反,使用它的具体子类之一:
损失缩放是将损失乘以称为损失比例的乘数的过程,并将每个梯度除以相同的乘数。这个过程的伪代码是:
loss = ...
loss *= loss_scale
grads = gradients(loss, vars)
grads /= loss_scale
在数学上,损失缩放没有影响,但是当 float16 张量用于混合精度训练时,可以帮助避免中间梯度中的数值下溢。通过乘以损失,每个中间梯度将应用相同的乘数。
此类的实例表示损失量表。调用此类的实例将损失比例返回为标量 float32 张量,而方法 update()
根据梯度的值更新损失比例。优化器使用此类的实例来缩放损失和梯度。
在大多数接受 LossScale 的函数中,您还可以传递一个 int(例如
8) 创建FixedLossScale
或字符串"dynamic"
以创建动态损失比例。
相关用法
- Python tf.math.special.fresnel_cos用法及代码示例
- Python tf.math.polyval用法及代码示例
- Python tf.math.is_finite用法及代码示例
- Python tf.math.special.bessel_k0e用法及代码示例
- Python tf.math.acosh用法及代码示例
- Python tf.math.invert_permutation用法及代码示例
- Python tf.math.segment_prod用法及代码示例
- Python tf.math.bincount用法及代码示例
- Python tf.math.bessel_i0e用法及代码示例
- Python tf.math.unsorted_segment_min用法及代码示例
- Python tf.math.conj用法及代码示例
- Python tf.math.scalar_mul用法及代码示例
- Python tf.math.zero_fraction用法及代码示例
- Python tf.math.reduce_max用法及代码示例
- Python tf.math.special.fresnel_sin用法及代码示例
- Python tf.math.segment_mean用法及代码示例
- Python tf.math.xlog1py用法及代码示例
- Python tf.math.less_equal用法及代码示例
- Python tf.mlir.experimental.convert_function用法及代码示例
- Python tf.math.reduce_min用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.mixed_precision.experimental.LossScale。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。