使用分段常数衰减时间表的 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。