在 python 中设置 Logistic 回归的确切迭代次数

Setting exact number of iterations for Logistic regression in python

我正在创建一个模型,使用 Python 对数据集执行逻辑回归。这是我的代码:

from sklearn import linear_model
my_classifier2=linear_model.LogisticRegression(solver='lbfgs',max_iter=10000)

现在,根据 Sklearn doc page,max_iter 是求解器收敛所需的最大迭代次数。我如何具体说明我需要 'N' 次迭代?

如有任何帮助,我们将不胜感激。

我不确定,但是,您想知道模型的最佳迭代次数吗?如果是这样,您最好使用 GridSearchCV 来扫描调整超参数,例如 max_iter。 简而言之,

  1. 将您的数据分成两组:train/test 具有 train_test_splitKFold 的数据可以从 sklean
  2. 导入
  3. 设置参数,例如para=[{‘max_iter’:[1,10,100,100]}]
  4. 实例,例如clf=GridSearchCV(LogisticRegression, param_grid=para, cv=5, scoring=‘r2’)
  5. 像这样使用训练数据实现:clf.fit(x_train, y_train)

您还可以使用 RandomizedSearchCVBayesianOptimization 获取最佳迭代次数。