使用分段常數衰減時間表的 LearningRateSchedule。
用法
tf.keras.optimizers.schedules.PiecewiseConstantDecay(
boundaries, values, name=None
)
返回
-
一個 1-arg 可調用學習率計劃,采用當前優化器步驟並輸出衰減的學習率,一個標量
Tensor
與邊界張量的類型相同。接受
step
的 1-arg 函數的輸出是values[0]
當step <= boundaries[0]
,values[1]
當step > boundaries[0]
和step <= boundaries[1]
,...,以及 values[-1] 當step > boundaries[-1]
。
參數
-
boundaries
Tensor
s 或int
s 或float
s 的列表具有嚴格增加的條目,並且所有元素具有與優化器步驟相同的類型。 -
values
Tensor
或float
或int
的列表,指定由boundaries
定義的間隔的值。它應該比boundaries
多一個元素,並且所有元素都應該具有相同的類型。 -
name
一個字符串。操作的可選名稱。默認為'PiecewiseConstant'。
拋出
-
ValueError
如果列表中的元素數量不匹配。
當通過當前優化器步驟時,該函數返回一個 1-arg 可調用來計算分段常數。這對於在優化器函數的不同調用中更改學習率值很有用。
示例:前 100001 步使用 1.0,接下來 10000 步使用 0.5,任何其他步驟使用 0.1 的學習率。
step = tf.Variable(0, trainable=False)
boundaries = [100000, 110000]
values = [1.0, 0.5, 0.1]
learning_rate_fn = keras.optimizers.schedules.PiecewiseConstantDecay(
boundaries, values)
# Later, whenever we perform an optimization step, we pass in the step.
learning_rate = learning_rate_fn(step)
您可以將此計劃直接傳遞到 tf.keras.optimizers.Optimizer
作為學習率。學習率計劃也可以使用 tf.keras.optimizers.schedules.serialize
和 tf.keras.optimizers.schedules.deserialize
進行序列化和反序列化。
相關用法
- Python tf.keras.optimizers.schedules.PolynomialDecay用法及代碼示例
- Python tf.keras.optimizers.schedules.serialize用法及代碼示例
- Python tf.keras.optimizers.schedules.ExponentialDecay用法及代碼示例
- Python tf.keras.optimizers.schedules.deserialize用法及代碼示例
- Python tf.keras.optimizers.schedules.CosineDecay用法及代碼示例
- Python tf.keras.optimizers.schedules.CosineDecayRestarts用法及代碼示例
- Python tf.keras.optimizers.schedules.InverseTimeDecay用法及代碼示例
- Python tf.keras.optimizers.serialize用法及代碼示例
- Python tf.keras.optimizers.Optimizer.set_weights用法及代碼示例
- Python tf.keras.optimizers.Adam用法及代碼示例
- Python tf.keras.optimizers.Adamax用法及代碼示例
- Python tf.keras.optimizers.SGD用法及代碼示例
- Python tf.keras.optimizers.Optimizer用法及代碼示例
- Python tf.keras.optimizers.Nadam用法及代碼示例
- Python tf.keras.optimizers.RMSprop用法及代碼示例
- Python tf.keras.optimizers.Optimizer.apply_gradients用法及代碼示例
- Python tf.keras.optimizers.Ftrl用法及代碼示例
- Python tf.keras.optimizers.Optimizer.get_weights用法及代碼示例
- Python tf.keras.applications.inception_resnet_v2.preprocess_input用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.optimizers.schedules.PiecewiseConstantDecay。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。