我看过各种帖子/指南以及 Udemy 课程,建议通过GridSearchCV优化用于训练 Keras 模型的 epoch 数是一个好主意。
- 当你训练一个模型 400 个 epoch 时,你也训练了 200 个。
- 当你训练一个模型 400 个 epoch 时,最好的 epoch 可以是 400 个中的任何一个。
也就是说,如果您使用 GridSearchCV 训练模型,该方法不会考虑到这一点,它仅在比较不同模型时考虑最后一个时期。当你为 200 和 400 个 epoch 执行 GridSearchCV 时,它会为 200 个 epoch 训练一个模型,然后从头开始训练 400 个 epoch。
因此,正如我所见,使用 GridSearchCV 来优化您的时代数:
- 训练“重复”、“无用”的时期。
- 尽管信息可用,但实际上并未找到最佳时期数。
我的问题是:
- 意识到正在运行的时代的方法不是更有意义吗?有什么理由为什么有人会在实践中使用所描述的方法?
- 如果所描述的方法是一种不好的方法,并且我想以更优化的方式进行这种搜索,那么是否有任何“标准”方法呢?也许提前停止?如果我们要优化多个超参数怎么办?提前停止 + GridSearchCV?
谢谢你。