【发布时间】:2020-07-02 00:27:35
【问题描述】:
下面是我要执行的代码
# Train a logistic regression model, report the coefficients and model performance
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import GridSearchCV
from sklearn.model_selection import cross_val_score
from sklearn import metrics
clf = LogisticRegression().fit(X_train, y_train)
params = {'penalty':['l1','l2'],'dual':[True,False],'C':[0.001, 0.01, 0.1, 1, 10, 100, 1000], 'fit_intercept':[True,False],
'solver':['saga']}
gridlog = GridSearchCV(clf, params, cv=5, n_jobs=2, scoring='roc_auc')
cv_scores = cross_val_score(gridlog, X_train, y_train)
#find best parameters
print('Logistic Regression parameters: ',gridlog.best_params_) # throws error
上面的最后一行代码是引发错误的地方。我已经使用这个完全相同的代码来运行其他模型。知道为什么我可能会遇到这个问题吗?
【问题讨论】:
-
与错误本身无关(请参阅下面的答案),我们不将
cross_val_score用于 GridSearchCV 对象;相反,我们在拟合对象后使用best_score_属性
标签: python machine-learning scikit-learn logistic-regression gridsearchcv