我在使用验证精度实施早期停止时有疑问。
假设我想在50个时期后的验证精度没有提高时停止训练。但是,我可以在第二个EPCOCH中随机获得良好的验证精度。例如:
准确性培训:0.76精度验证:0.80
也许我没有得到更好的验证准确性,而准确性培训正在改善。因此,当我达到99%的训练准确性时,可能会发生训练停止,因为第二个时期的验证精度的80%太高(时期= 52)。
我想插入一个偏移。例如,使用验证精度提早停止,但以时期开始= 100。
在Keras中可能吗?
预先感谢
keras回调非常灵活,因此您可以简单地修改内置的EarlyStopping
回调:
from keras.callbacks import EarlyStopping
class DelayedEarlyStopping(EarlyStopping):
def on_epoch_end(self, epoch, logs=None):
if epoch >= 100:
super().on_epoch_end(epoch, logs=logs)