3

这里的对象检测 API相当新,使用 tf-gpu==1.15 进行训练,使用 2.2.0 进行评估以及 python 3.7。

我能够利用数据增强以及调整 ssd_mobilenet_v1.config 文件中学习率的衰减,但如果我确信损失不会,我不确定如何实现模型停止训练的方法无论它训练多少步,都低于某个值。

我如何或在哪里配置/实施提前停止标准?

4

1 回答 1

-1

您可以使用EarlyStopping来自 tensorflow 的回调。请参阅此处的tensorflow 文档。

使用 - 创建回调 -

from tensorflow.keras.callbacks import EarlyStopping

es = EarlyStopping(
    monitor='val_loss', min_delta=0, patience=3, verbose=0, mode='auto',
    baseline=None, restore_best_weights=False
)
  • monitor-如果您没有验证数据并且如果训练损失在连续 3 个时期停止减少,则将monitor参数更改为要停止训练。loss此外,accuracy如果您希望根据准确性而不是loss.
  • patience- 如果损失没有减少或准确性没有提高,则在停止训练之前要等待的 epoch 数

fit然后在训练时将其传递给函数-

history = model.fit(X, y, epochs=10, callbacks=[es])

网上有很多例子,你可以看看!

于 2020-07-16T15:28:19.657 回答