问题标签 [early-stopping]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
471 浏览

keras - 使用提前停止 - gridsearchcv - kerasregressor

这是我的问题:如何在我的代码中使用提前停止?我应该把它放在哪个部分?

我的代码:

我把回调放在'grid.fit'和'param_grid'中,但我出错了!!!

0 投票
1 回答
179 浏览

machine-learning - 使用提早停止时对助推轮数施加限制?

在提升树算法(如 xgboost 或 lightgbm)的超参数优化期间,是否可以在使用提前停止时直接控制提升轮数(估计器/树)的最小(而不仅仅是最大)数量?这种需求的动机是观察到在太少轮次后停止训练的模型始终欠拟合(其指标明显低于往往具有更多增强轮次的最先进模型)。

我知道的唯一解决方案是间接解决方案:调整链接的超参数 - 学习率(降低其在搜索空间中的上限)。当设置得太高时,学习率会导致模型拟合不足,从而导致训练停止得太快,即提升轮数太少。

0 投票
1 回答
233 浏览

keras - 在指定的纪元数后提前停止 Keras

是否可以在 Keras 中指定数量的 epoch 后应用 Early Stopping。例如,我想将我的 NN 训练 45 个 epoch,然后开始使用 EarlyStopping。

到目前为止,我是这样做的:

early_stop = EarlyStopping(monitor='val_loss', mode='min', verbose=1, baseline = 0.1, patience = 3)

但是这样做只会产生几个步骤图用于训练

在此处输入图像描述

有没有办法可以一起写这些?非常感谢任何帮助!

0 投票
1 回答
982 浏览

python-3.x - 如何实现早期停止标准 - Tensorflow 对象检测 API

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

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

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

0 投票
2 回答
2124 浏览

tensorflow - 基于 AUC 的提前停止

我对 ML 相当陌生,目前正在使用 tensorflow 和 keras 在 python 中实现一个简单的 3D CNN。我想根据 AUC 进行优化,并且还想在 AUC 分数方面使用提前停止/保存最佳网络。我一直在使用 tensorflow 的 AUC 函数,如下所示,它在训练中效果很好。但是,未保存 hdf5 文件(尽管检查点 save_best_only=True),因此我无法获得评估的最佳权重。

以下是相关的代码行:

有趣的是,如果我只在早期停止和检查点更改 monitor='val_loss'(而不是 model.compile 中的 'metrics'),hdf5 文件会被保存,但显然在验证损失方面给出了最好的结果。我也尝试过使用 mode='max' 但问题是一样的。我非常感谢您的建议,或任何其他建设性的想法如何解决这个问题。

0 投票
1 回答
266 浏览

python - 使用预训练模型和配置文件时如何根据损失停止训练?

我正在使用更快的 RCNN 模型来训练对象检测器,使用管道配置文件。我知道可以通过直接取消(ctrl+c)来停止训练。我希望训练根据损失值自动停止。如何才能做到这一点?我知道在监控时代时可以使用 keras 回调。使用配置文件和预训练模型(监控步骤)时是否有任何此类选项。谢谢。

0 投票
0 回答
318 浏览

python - 通过 SVR 和网格搜索使用提前停止

我正在尝试对我的 SVR 模型使用网格搜索,并且由于需要太多时间来适应我想知道是否可以使用提前停止,但我不知道该怎么做。相反,我使用了 max_iter,但仍然不确定我的最佳参数。有什么建议吗?谢谢!

0 投票
0 回答
65 浏览

python - 使用 python mutliprocessing 进行并行 Keras 模型训练

我正在一个 64 核 CPU 工作站上同时训练多个 Keras MLP 模型。因此,我使用 Python 多处理池为每个 CPU 分配一个正在训练的模型。对于正在训练的模型,我正在使用以这种方式定义的 Early Stopping 和模型检查点回调:

使用单个模型进行训练,没有任何问题。然而,当我开始使用多处理池时,我最终遇到了回调问题。出现 hdf5 模型保存问题:

这个错误或多或少偶尔出现,通过异常我可以捕获它以重复模型训练。但是有没有办法通过设置标志或使用不同的回调文件格式来解决这个问题?

张量流版本:2.1.0

Keras 版本:2.3.1

图书馆包括:

0 投票
1 回答
1060 浏览

classification - Light GBM Value Error: ValueError: 对于提前停止,至少需要一个数据集和评估指标进行评估

这是我的代码。这是一个二元分类问题,评估标准是AUC分数。我在 Stack Overflow 上查看了一个解决方案并实施了它,但没有奏效,仍然给我一个错误。

错误发生在best_model.fit(X_train, y_train)

0 投票
2 回答
239 浏览

tensorflow - 张量流 2.3 中的回调

我正在编写自己的回调以根据某些自定义条件停止训练。一旦满足条件,EarlyStopping 就会停止训练:

例如来自https://www.tensorflow.org/guide/keras/custom_callback

class EarlyStoppingAtMinLoss(keras.callbacks.Callback): """当损失达到最小值时停止训练,即损失停止减少。

参数: 耐心:达到 min 后等待的 epoch 数。在这个数量没有改善之后,训练就停止了。"""

问题是,它不适用于 tensorflow 2.2 和 2.3。任何解决方法的想法?还有什么办法可以停止在 tf 2.3 中训练模型?