gpt4 book ai didi

python - 当网络完全收敛时停止 Keras 训练

转载 作者:行者123 更新时间:2023-11-28 21:34:19 25 4
gpt4 key购买 nike

我将如何配置 Keras 以停止训练直到收敛或损失为 0?我故意想要过度拟合它。我不想设置时代数。我只是想让它在收敛时停止。

最佳答案

使用 EarlyStopping打回来。您可以自由选择要观察的损失/指标以及何时停止。

通常,您会查看“验证损失”( val_loss ),因为这是表明您的模型仍在学习泛化的最重要变量。

但是既然你说要过拟合,那你可以看看“训练损失”( loss )。

回调适用于“deltas”,而不是绝对值,这很好,因为损失不一定以“零”为目标。但是您可以使用 baseline用于设置绝对值的参数。

所以,通常,一个查看验证损失的回调:

from keras.callbacks import EarlyStopping
usualCallback = EarlyStopping()

这与 EarlyStopping(monitor='val_loss', min_delta=0, patience=0) 相同

一种会过拟合的:
overfitCallback = EarlyStopping(monitor='loss', min_delta=0, patience = 20)

当心 patience论点,这很重要,因为损失值并不总是在每个时期都减少。让模型在结束前继续尝试几个 epoch。

最后,只需将回调传递给 fit以及大量的时代:
model.fit(X, Y, epochs=100000000, callbacks=[overfitCallback])

关于python - 当网络完全收敛时停止 Keras 训练,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53478622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com