Python early_stopping设置为False,但迭代在Sklearn MLPClassizer中的max_iter之前停止
我在sklearn MLPC分类器上工作,用于制作神经网络模型Python early_stopping设置为False,但迭代在Sklearn MLPClassizer中的max_iter之前停止,python,scikit-learn,neural-network,Python,Scikit Learn,Neural Network,我在sklearn MLPC分类器上工作,用于制作神经网络模型 from sklearn.neural_network import MLPClassifier from sklearn.metrics import accuracy_score clf = MLPClassifier(activation='logistic', learning_rate_init=0.5, early_stopping=False, max_iter=500, random_state=42, hidden
from sklearn.neural_network import MLPClassifier
from sklearn.metrics import accuracy_score
clf = MLPClassifier(activation='logistic', learning_rate_init=0.5, early_stopping=False, max_iter=500, random_state=42, hidden_layer_sizes=(10,1)).fit(X_train, y_train)
我将early_stopping设置为False,并将max_iter设置为500。它在第41次迭代时停止,并得到损耗=0.0989939。为什么没有达到最大迭代?请参见参数
tol
和n\u iter\u no\u change
的说明:如果权重充分收敛,则学习将提前停止
这不同于使用提前停止
,当验证分数停止改善时(通常由于过度拟合而恶化),这会缩短学习时间。在您的例子中,模型的权重移动不足以证明进一步计算的合理性。如果您确实希望达到500次迭代,可以设置tol=0
或n\u iter\u no\u change=500