【发布时间】:2021-01-18 20:21:48
【问题描述】:
我使用 MLPClassifier 已经有一段时间了,我认为我一直对函数的作用有错误的解释,我想我现在明白了,但我不确定。所以我会总结一下我的理解,如果你能在正确的理解上加上你的想法,那就太好了。
因此,我们正在使用 MLPClassifier 构建基于训练数据集的神经网络。设置early_stopping = True 可以在训练过程中使用验证数据集,以检查网络是否也在处理新数据集。如果early_stopping = False,则不会在他的过程中进行验证。完成构建后,如果我们愿意,我们可以使用拟合模型来预测第三个数据集。
我之前的想法是,在整个训练过程中,一个验证数据集被搁置一边,在每个 epoch 之后进行验证。
我不确定我的问题是否可以理解,但如果你能帮助我理清思路就好了。
【问题讨论】:
-
我重新提出了这个问题。我认为您要了解的是
early_stopping参数如何精确地使用验证集。如果设置了参数,则算法 90/10 在整个过程开始时将训练数据集拆分为训练和验证数据集(因此不是每个训练步骤)。在每一步之后,中间模型都会在验证集上进行评估,如果改进低于tol,则该过程会提前停止。使用的指标始终是“准确度”,这对于可能的多类分类器来说是非常糟糕的(受限于)。
标签: scikit-learn training-data test-data mlp