【发布时间】:2020-10-19 05:47:20
【问题描述】:
我正在使用逻辑回归进行建模。但是当我应用求解器 =“多项式”时尝试多个求解器时,我得到了这个
import sklearn as skl
skl.__version__
'0.21.2'
X_train, X_test, y_train, y_test = train_test_split(multiclass_logistic_data, labels, test_size = 0.2, random_state = 1)
cv_reg = linear_model.LogisticRegressionCV(solver='multinomial', max_iter=1000)
cv_reg.fit(X_train, y_train)
ValueError Traceback (most recent call last)
<ipython-input-54-6d16d00d0653> in <module>
----> 1 cv_reg.fit(X_train, y_train)
E:\Anaconda_Install\lib\site-packages\sklearn\linear_model\logistic.py in fit(self, X, y, sample_weight)
1970 self : object
1971 """
-> 1972 solver = _check_solver(self.solver, self.penalty, self.dual)
1973
1974 if not isinstance(self.max_iter, numbers.Number) or self.max_iter < 0:
E:\Anaconda_Install\lib\site-packages\sklearn\linear_model\logistic.py in _check_solver(solver, penalty, dual)
435 if solver not in all_solvers:
436 raise ValueError("Logistic Regression supports only solvers in %s, got"
--> 437 " %s." % (all_solvers, solver))
438
439 all_penalties = ['l1', 'l2', 'elasticnet', 'none']
ValueError: Logistic Regression supports only solvers in ['liblinear', 'newton-cg', 'lbfgs', 'sag', 'saga'], got multinomial.
【问题讨论】:
-
您为什么认为有“多项式”求解器可供选择?查看docs:对于多类问题,只有“newton-cg”、“sag”、“saga”和“lbfgs”处理多项损失; “liblinear”仅限于一对一方案。
-
我在教育公司的过程中阅读了求解器的参考
标签: python machine-learning scikit-learn logistic-regression