训练中改变learning rate
废话少说!直接上干货!
此处代码可直接复制粘贴,按需修改下数字就可以了!
#定义多少个epoch后lr的改变
def schedule(epoch):
if epoch < 50:
return .001
if epoch < 300:
return .0001
if epoch < 600:
return .00001
if epoch < 900:
return .000001
else:
return .0000001
#将LearningRateScheduler类实例化
lr_scheduler = tf.keras.callbacks.LearningRateScheduler(schedule)
#将所有callback类放入,这里只有这一个类
callbacks_list = [lr_scheduler, ]
最后只需要在 model.fit()
中加入 callbacks_list
就可以了!
model.fit(train_data, train_label, epochs = 1000, callbacks = callbacks_list)
这样在训练中模型就会自动调整 lr 了!
求观众老爷点个赞吧!!