相关疑难解决方法(0)

如何告诉Keras根据损失值停止训练?

目前我使用以下代码:

callbacks = [
    EarlyStopping(monitor='val_loss', patience=2, verbose=0),
    ModelCheckpoint(kfold_weights_path, monitor='val_loss', save_best_only=True, verbose=0),
]
model.fit(X_train.astype('float32'), Y_train, batch_size=batch_size, nb_epoch=nb_epoch,
      shuffle=True, verbose=1, validation_data=(X_valid, Y_valid),
      callbacks=callbacks)
Run Code Online (Sandbox Code Playgroud)

它告诉Keras在2个时期的损失没有改善时停止训练.但是我希望在损失变得小于某些常数"THR"之后停止训练:

if val_loss < THR:
    break
Run Code Online (Sandbox Code Playgroud)

我在文档中看到有可能进行自己的回调:http: //keras.io/callbacks/ 但是没有找到如何停止训练过程.我需要一个建议.

python machine-learning neural-network conv-neural-network keras

70
推荐指数
4
解决办法
4万
查看次数