CNN培训提前停止

时间:2017-12-29 04:27:06

标签: python validation tensorflow training-data

我正在使用CNN进行信号分类。(两类:患者和对照)。 使用提前停止,我想停止训练,直到验证错误停止改进。我无法编写python代码来实现它。 我尝试了这个但是无法继续下去。

validation = cross_entropy.eval(feed_dict= {x:valid_x,y_:valid_y,keep_prob:1})
validation = np.append(validation,cross_entropy.eval(feed_dict= {x:valid_x,y_:valid_y,keep_prob:1}))

任何人都可以帮我解决这些问题吗?

1 个答案:

答案 0 :(得分:1)

您可以使用keras.EarlyStopping

from keras.callbacks import EarlyStopping
early_stopping = EarlyStopping(monitor='val_loss', patience=2)
model.fit(x, y, validation_split=0.2, callbacks=[early_stopping])

理想情况下,最好在val_loss增加时停止培训,而不是在val_acc停滞时停止培训。由于Kears在val_acc改进时保存了模型,我建议你让它保持运行并仅在需要时停止。