当网络的评价指标不在提升的时候,可以通过降低网络的学习率来提高网络性能。所使用的类
class torch.optim.lr_scheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.1, patience=10, verbose=False, threshold=0.0001, threshold_mode='rel', cooldown=0, min_lr=0, eps=1e-08)
使用的时候需要选择网络的度量指标,使用如下类的step方法实现,例子如下:
例子:
optimizer = torch.optim.SGD(model.parameters(), lr=0.01) scheduler = ReduceLROnPlateau(optimizer, 'min',factor=0.5, patience=4, verbose=True) ..... scheduler.step(train_loss) # scheduler.step(val_loss)
转载:https://blog.csdn.net/weixin_40100431/article/details/84311430