У меня есть разреженная матрица, созданная после передачи dataframe
с документами в каждой строке в TfidfVectorizer
, а затем в fit_transform
. Сейчас я пытаюсь использовать это в GridSearchCV в качестве оценщика. В частности:
vectorizer = TfidfVectorizer(stop_words = 'english')
vectors = vectorizer.fit_transform(df.news)
Теперь я хочу использовать vectors
в качестве оценщика.
clf = OneVsRestClassifier(SVC(kernel='linear', probability=True))
alphas = np.array([1,0.1,0.01,0.001,0.0001,0])
grid = grid_search.GridSearchCV(estimator = clf,param_grid = dict(alpha=alphas))
grid.fit(vectors, df.type)
Возвращает ошибку значения следующим образом:
---> 17 grid.fit (векторы, df.type)
ValueError: Неверный параметр alpha для оценщика CalibratedClassifierCV (base_estimator = OneVsRestClassifier (оценщик = SVC (C = 1, cache_size = 200, class_weight = None,coef0 = 0.0,
solution_function_shape = 'ovr', степень = 3, гамма = 'auto_deprecated',
kernel = 'rbf', max_iter = -1, вероятность = False, random_state = нет,
сжатие =True, tol = 0,001, verbose = False), n_jobs = None), cv = 'warn', method = 'sigmoid'). Проверьте список доступных параметров с помощью estimator.get_params().keys()
.
Чтобы дать вам представление о том, как выглядят эти переменные:
print(vectors)
(0, 52) 0.026904364115790672
(0, 106) 0.026904364115790672
(0, 135) 0.13452182057895337
(0, 161) 0.026904364115790672
(0, 180) 0.03800386016882953
(0, 241) 0.028098990259356804
df.type
0 alt.science
1 alt.science
2 alt.science
3 alt.science
4 alt.science
В чем может быть проблема и как ее решить