ReduceLROnPlateau
classkeras.callbacks.ReduceLROnPlateau(
monitor="val_loss",
factor=0.1,
patience=10,
verbose=0,
mode="auto",
min_delta=0.0001,
cooldown=0,
min_lr=0.0,
**kwargs
)
当指标停止改善时降低学习率.
模型通常会在学习停滞时通过将学习率减少2-10倍而受益.此回调监控一个量,如果在一定数量的"耐心”周期内没有看到改善,则降低学习率.
示例:
reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.2,
patience=5, min_lr=0.001)
model.fit(x_train, y_train, callbacks=[reduce_lr])
参数:
monitor: 字符串.要监控的量.
factor: 浮点数.学习率将减少的因子.new_lr = lr * factor
.
patience: 整数.在减少学习率之前,没有改善的周期数.
verbose: 整数.0: 安静,1: 更新消息.
mode: 字符串.{'auto', 'min', 'max'}
之一.在'min'
模式下,当监控的量停止减少时,学习率将减少;在'max'
模式下,当监控的量停止增加时,学习率将减少;在'auto'
模式下,方向会根据监控量的名称自动推断.
min_delta: 浮点数.测量新最优值的阈值,仅关注显著变化.
cooldown: 整数.学习率降低后等待恢复正常操作的周期数.
min_lr: 浮点数.学习率的下限.