Mam zestaw danych, który został wcześniej podzielony na 3 zestawy: pociąg, sprawdzanie poprawności i test. Zestawy te muszą być używane w celu porównania wydajności różnych algorytmów.Przy użyciu explict (predefiniowane) zestaw sprawdzania poprawności do wyszukiwania siatki ze sklearn
Chciałbym teraz zoptymalizować parametry mojego SVM przy użyciu zestawu sprawdzania poprawności. Jednak nie mogę znaleźć sposobu wprowadzenia zestawu walidacji jawnie do sklearn.grid_search.GridSearchCV()
. Poniżej znajduje się kod, który wcześniej używałam do rutowania krzyżowego na zestawie treningowym. Jednak w przypadku tego problemu muszę użyć zestawu sprawdzania poprawności, jak podano. Jak mogę to zrobić?
from sklearn import svm, cross_validation
from sklearn.grid_search import GridSearchCV
# (some code left out to simplify things)
skf = cross_validation.StratifiedKFold(y_train, n_folds=5, shuffle = True)
clf = GridSearchCV(svm.SVC(tol=0.005, cache_size=6000,
class_weight=penalty_weights),
param_grid=tuned_parameters,
n_jobs=2,
pre_dispatch="n_jobs",
cv=skf,
scoring=scorer)
clf.fit(X_train, y_train)
Miałem ten sam problem. Dzięki za zgłoszenie! – Riyaz