GridSearchCV возвращает другое значение - PullRequest
0 голосов
/ 16 ноября 2018

Я разбил свой набор данных на две части: тренировочный набор и тестовый набор.А пока просто забудьте тестовый набор и используйте обучающий набор с функцией GridSearchCV пакета sklearn.model_selection, чтобы найти лучшие параметры для SVM:

Cs = [0.001, 0.01, 0.1, 1, 10, 100, 1000]
gammas = [0.001, 0.01, 0.1, 1]

# Set the parameters by cross-validation
param_grid = [{'kernel': ['rbf'], 'gamma': gammas, 'C': Cs}]

clf = GridSearchCV(svm.SVC(), param_grid = param_grid, cv=nfolds, verbose=1.)
clf.fit(x_train, labels)

после того, как найдены мои лучшие параметры C и гамма, ясоздайте SVM, и я подгоняю его к обучающему набору (использовавшемуся ранее для поиска наилучшего C и гаммы):

model = svm.SVC(kernel='rbf', C = clf.best_params_['C'], gamma = clf.best_params_['gamma'])        
model.fit(x_train, y_train)

В этот момент я попробовал одну вещь, я использовал функцию предсказания () GridSearchCVобъект и один из объекта svm.SVC:

predicted_label1 = model.predict(x_test)
predicted_label2 = clf.predict(x_test)

, а затем я использовалification_report (y_test, предсказанный_лабел), чтобы оценить мои два вектора предиката.По моему мнению, я должен получить те же значения, но этого не происходит ... Вот мой вывод:

             precision    recall  f1-score   support

        0.0       0.24      0.97      0.39       357
        1.0       0.00      0.00      0.00       358
        2.0       0.00      0.00      0.00       357
        3.0       0.00      0.00      0.00       357

avg / total       0.06      0.24      0.10      1429

fine parametri
training set and test set saved
Create SVM classifier
             precision    recall  f1-score   support

        0.0       0.70      0.63      0.66       357
        1.0       0.89      0.90      0.90       358
        2.0       0.89      0.94      0.91       357
        3.0       0.85      0.88      0.86       357

avg / total       0.83      0.84      0.83      1429

Первый из GridSearchCV, а второй из SVM ... Это нормально?Что возвращает GridSearchCV?Подходит ли оно для пройденного тренировочного набора?

...