應用損失縮放的優化器。
繼承自: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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。