应用损失缩放的优化器。
继承自:Optimizer
用法
tf.compat.v1.mixed_precision.MixedPrecisionLossScaleOptimizer(
opt, loss_scale
)
参数
-
use_locking
布尔。如果 True 应用使用锁来防止对变量的并发更新。 -
name
一个非空字符串。用于为优化器创建的累加器的名称。
抛出
-
ValueError
如果名称格式错误。
损失缩放是将损失乘以称为损失比例的乘数的过程,并将每个梯度除以相同的乘数。这个过程的伪代码是:
loss = ...
loss *= loss_scale
grads = gradients(loss, vars)
grads /= loss_scale
在数学上,损失缩放没有影响,但是当 float16 张量用于混合精度训练时,可以帮助避免中间梯度中的数值下溢。通过乘以损失,每个中间梯度将应用相同的乘数。
损失比例可以是固定常数,由用户选择,也可以是动态确定的。动态确定损失规模很方便,因为不必明确选择损失规模。但是,它会降低性能。
该优化器包装了另一个优化器,并通过 LossScale
对其应用损失缩放。每当计算梯度时都会应用损失缩放,例如通过 minimize()
。
相关用法
- Python tf.compat.v1.mixed_precision.enable_mixed_precision_graph_rewrite用法及代码示例
- Python tf.compat.v1.map_fn用法及代码示例
- Python tf.compat.v1.make_template用法及代码示例
- Python tf.compat.v1.metrics.mean用法及代码示例
- Python tf.compat.v1.multinomial用法及代码示例
- Python tf.compat.v1.math.log_softmax用法及代码示例
- Python tf.compat.v1.math.softmax用法及代码示例
- Python tf.compat.v1.metrics.accuracy用法及代码示例
- Python tf.compat.v1.distributions.Multinomial.stddev用法及代码示例
- Python tf.compat.v1.distribute.MirroredStrategy.experimental_distribute_dataset用法及代码示例
- Python tf.compat.v1.data.TFRecordDataset.interleave用法及代码示例
- Python tf.compat.v1.distributions.Bernoulli.cross_entropy用法及代码示例
- Python tf.compat.v1.Variable.eval用法及代码示例
- Python tf.compat.v1.train.FtrlOptimizer.compute_gradients用法及代码示例
- Python tf.compat.v1.layers.conv3d用法及代码示例
- Python tf.compat.v1.strings.length用法及代码示例
- Python tf.compat.v1.data.Dataset.snapshot用法及代码示例
- Python tf.compat.v1.data.experimental.SqlDataset.reduce用法及代码示例
- Python tf.compat.v1.feature_column.categorical_column_with_vocabulary_file用法及代码示例
- Python tf.compat.v1.data.TextLineDataset.from_tensors用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.mixed_precision.MixedPrecisionLossScaleOptimizer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。