问题标签 [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 回答
55 浏览

java - TextWatcher 在启动后关闭我的应用程序

自从我开始使用 TextWatcher 以来,我的应用程序一直在崩溃...正如您在下面看到的,我为 3 个 EditText 字段创建了一个 TextWatcher...并且我制作了一个按钮来监听 3 个 EditText .. 如果它们为空,则按钮将被禁用. 填写字段后,按钮应启用..

这是我的日志...

0 投票
1 回答
74 浏览

python - restore_best_weights 问题 Keras EarlyStopping

我正在尝试使用 Keras,EarlyStopping但是每当我尝试使用restore_best_weights它时都会出现错误:

_init_() got an unexpected keyword argument 'restore_best_weights'

我正在使用最新的 Keras,所以我真的不确定为什么会这样。

0 投票
0 回答
28 浏览

tensorflow - 有没有一种方法可以跟踪模型何时提前停止而不实际提前停止?

我正在做一个实验,我需要跟踪模型最终何时会提前停止,但实际上并没有提前停止训练。为什么?因为我需要分析模型在开始明显过度拟合后的实际行为。

那么,有没有一种方法可以跟踪模型何时提前停止而无需实际提前停止?

当然,可以手动跟踪损失(或性能)并手动确定模型何时会过度拟合(例如,在验证数据没有改进的 5 次迭代之后,我们可以记录可能的“过度拟合”情况),但我想知道是否有回调或可以让我自动执行此操作的东西。

0 投票
1 回答
493 浏览

python - Keras LSTM - 为什么我的 Earlystopping 功能不起作用?

我是深度学习和 Keras 的新手,并尝试使我的模型分类更准确。因为只有 75 个数据,所以我将 60 个用于训练和 15 个用于验证(80/20)分开,所以很容易过拟合。我尝试添加更多层、更多单元、减少层、单元、增加和减少学习率等以获得更好的性能。

从之前的运行中,我知道我的 val_acc 在大约 100-150 个时期内下降到 0.8,所以我想在那个时候停止训练以避免下降。

使用早停之前

我目前以 5 的批大小进行训练,每次拟合由 350 个 epoch 组成。现在我想使用 Earlystopping 在最接近的训练和验证准确度时期停止,但还没有成功。

我尝试将监视器“val_acc”设置为至少达到基线值为 0.8,然后添加 min_delta = 0.01,以期仅在达到基线后应用此规则,但这没有帮助。加了早停功能后,为什么还没达到基线就这么早停了?每次我改变耐心时,训练都会停止在“那个”耐心。

添加earlystopping后 这是我的代码。

为什么这么早就停止了,没有达到基线?这有什么原因吗?我应该如何调整功能以满足我的期望?或者是否有任何好的实践可以用来获得最高的验证准确性?

谢谢!

0 投票
2 回答
495 浏览

keras - 在提前停止的情况下,神经网络中的最佳模型权重

我正在使用以下代码训练模型

这是为了在 val_loss: 参数在 3 个 epoch 后没有改善时停止训练。结果如下所示。我的问题是模型会以第 8 或第 7 轮的权重停止。因为第 8 轮的性能变差了,所以它停止了。但是该模型以一个糟糕的性能参数前进了 1 个 epoch,因为之前的一个(epoch 7)更好。我现在需要用 7 个 epoch 重新训练模型吗?

0 投票
1 回答
1965 浏览

python - 当 RMSLE 是评估指标时,lightgbm 的早期停止不起作用

我正在尝试使用rmsle作为评估指标在 Python 中训练 lightgbm ML 模型,但是当我尝试包含提前停止时遇到了问题。

这是我的代码:

如果我更改early_stopping_rounds=Falsetrain_lightgbm 方法,代码编译没有问题。

但是,如果我设置early_stopping_rounds=True它会抛出以下内容:

ValueError:对于提前停止,至少需要一个数据集和评估指标进行评估。

如果我运行一个类似的脚本,但在 sample_params 中使用 'metric': 'rmse' 而不是 'rmsle',即使early_stopping_rounds=True.

我需要为 lightgbm 添加什么来识别我的数据集和评估指标?谢谢!

0 投票
2 回答
132 浏览

keras - Keras Early 停止关注什么

我在 val_loss 中调节 earlystop,如下所示:

它在 3 个时期没有改善后正确停止,但我看不出它从哪里损失为 1.73011?任何人都可以帮忙吗?另请注意,即使在第一个 epoch 之后它也开始了,它不应该等待至少两个 epoch 进行比较然后声明“没有改进(减少)”损失吗?

训练过程时期

0 投票
1 回答
239 浏览

keras - keras 中的早期停止回调

如何通过 keras 中的回调有效地停止训练模型的拟合过程?到目前为止,我已经尝试了各种方法,包括下面的一种。

回调已执行,但self.model.stop_training = True似乎没有效果。打印成功,但模型继续训练。知道如何解决这个问题吗?我的张量流版本是:张量流==1.14.0

0 投票
0 回答
25 浏览

keras - 深度学习早期停止循环中的回调奇怪行为

我正在循环中测试顺序模型的准确性,包括提前停止回调。

我的环境是

我在 jupyter notebook 中运行我的测试。

Python 版本是 3.7.7

我的回调是

我的 create_model() 是

对于第一个模型,回调响应从 inf 开始,用于 val_loss

对于循环中的其他模型,我的回调保留了前一个模型的结果,并且不是从 inf 开始,而是使用前一个模型的最佳最小 val_loss 值。

如何解决这种行为,以便每个模型迭代都以自己的回调清除值开始?

我尝试设置model.reset_states()和/或tf.keras.backend.clear_session()在循环中没有成功。

编辑

经过进一步调查,我发现回调发送的消息具有误导性。如果我verbose=0输入回调参数和verbose=2参数**model.fit**,我可以看到回调按预期工作。

0 投票
1 回答
146 浏览

keras - Keras EarlyStopping 设置

我已经构建了一个通用的 Unet 来使用 Keras 训练我自己的数据集。我已将 EarlyStopping 选项设置如下。但是,在训练过程中,它一直提示精度值没有变化,但在下一行,它显然在变化。有没有人遇到过这个问题或知道如何解决这个问题?

在此处输入图像描述