Python 属性错误:';GridSearchCV';对象没有属性';cv_结果';
我尝试应用以下代码:Python 属性错误:';GridSearchCV';对象没有属性';cv_结果';,python,machine-learning,scikit-learn,text-mining,Python,Machine Learning,Scikit Learn,Text Mining,我尝试应用以下代码: pipe = make_pipeline(TfidfVectorizer(min_df=5), LogisticRegression()) param_grid = {'logisticregression__C': [ 0.001, 0.01, 0.1, 1, 10, 100], "tfidfvectorizer__ngram_range": [(1, 1),(1, 2),(1, 3)]} grid = GridSearchCV(pipe,
pipe = make_pipeline(TfidfVectorizer(min_df=5), LogisticRegression())
param_grid = {'logisticregression__C': [ 0.001, 0.01, 0.1, 1, 10, 100],
"tfidfvectorizer__ngram_range": [(1, 1),(1, 2),(1, 3)]}
grid = GridSearchCV(pipe, param_grid, cv=5)
grid.fit(text_train, Y_train)
scores = grid.cv_results_['mean_test_score'].reshape(-1, 3).T
# visualize heat map
heatmap = mglearn.tools.heatmap(
scores, xlabel="C", ylabel="ngram_range", cmap="viridis", fmt="%.3f",
xticklabels=param_grid['logisticregression__C'],
yticklabels=param_grid['tfidfvectorizer__ngram_range'])
plt.colorbar(heatmap)
但我有一个错误:
AttributeError: 'GridSearchCV' object has no attribute 'cv_results_'
更新您的scikit学习,
cv\u结果
已在0.18.1中引入,之前它被称为grid\u分数
,结构略有不同已解决!
在0.18.1中卸载并安装conda scikit learn
导入GridSearch时:
from sklearn.model_selection import GridSearchCV
首先,您应该使用以下方法更新您的scklearn:
pip install -U scikit-learn
之后,检查是否包含错误的模块:
from sklearn.grid_search import GridSearchCV
更改为新路径:
from sklearn.model_selection import GridSearchCV
(这是正确的方法)从sklearn.model\u选择导入GridSearchCV
使用此
clf.cv\u结果
您使用的是什么版本的python/sklearn?python的版本3.5.2,但当我选中sklearn版本:0.0时。Sklearn在我更新scikit learn时自动更新?我不明白。。当我在Pycharm中检查我的版本时,我的版本是0.18.1。我尝试更新它:1)conda update conda和2)conda install scikit learn=0.18.1,但我有相同的错误显然这不是IDE使用的python,但这不是python相关的问题,而是您的配置。缺少此字段只能由旧版本的sklearn造成。