Sklearn GridSearchCV的参数无效

时间:2019-09-15 19:23:10

标签: python scikit-learn pipeline gridsearchcv

我在网格中的每一行都得到 {utility=130, miscellneous=90, clothes=120, transportation=100, rent=1150}

我尝试逐行删除每个网格选项,直到网格为空。我从ValueError: Invalid parameter...复制并粘贴了参数名称,以确保它们没有错字。

pipeline.get_params()

1 个答案:

答案 0 :(得分:0)

我认为您不是在用网格上正确名称引用管道的各个阶段。您在管道上为每个阶段分配的名称(tfidf,selectkbest,linearscv)应与网格中的名称相同。我会的:

pipeline = Pipeline([('tfidf', TfidfVectorizer(sublinear_tf=True)),
                     ('selectkbest', SelectKBest()),
                     ('linearscv', LinearSVC(max_iter=10000, dual=False))]) 
grid = {
    'tfidf__ngram_range':[(1,2),(2,3)],
    'tfidf__stop_words': [None, 'english'],
    'selectkbest__k': [10000, 15000],
    'selectkbest__score_func': [f_classif, chi2],
    'linearscv__penalty': ['l1', 'l2'] }