GridSearchCV scoring und grid_scores_

Ich versuche zu verstehen, wie sich die Werte der Torschütze für die GridSearchCV. Der Beispielcode stellt eine kleine pipeline auf text-Daten.

Dann setzt es eine grid-search über verschiedene ngrams.

Die Wertung erfolgt über die f1-Maß:

#setup the pipeline
tfidf_vec = TfidfVectorizer(analyzer='word', min_df=0.05, max_df=0.95)
linearsvc = LinearSVC()
clf = Pipeline([('tfidf_vec', tfidf_vec), ('linearsvc', linearsvc)])

# setup the grid search
parameters = {'tfidf_vec__ngram_range': [(1, 1), (1, 2)]}
gs_clf = GridSearchCV(clf, parameters, n_jobs=-1, scoring='f1')
gs_clf = gs_clf.fit(docs_train, y_train)

Nun kann ich drucken Sie das erreicht souverän mit:

drucken gs_clf.grid_scores_

[mean: 0.81548, std: 0.01324, params: {'tfidf_vec__ngram_range': (1, 1)},
 mean: 0.82143, std: 0.00538, params: {'tfidf_vec__ngram_range': (1, 2)}]

drucken gs_clf.grid_scores_[0].cv_validation_scores

array([ 0.83234714,  0.8       ,  0.81409002])

Es ist mir nicht klar aus der Dokumentation:

  1. Ist gs_clf.grid_scores_[0].cv_validation_scores ein array mit den Punkten definiert durch die scoring-parameter, pro Fach (in diesem Fall die f1-Maßnahmen pro Fach) ? Wenn nicht, was ist es dann?

  2. Wenn ich stattdessen wählen Sie ein anderes Metrik, wie scoring='f1_micro', wobei jedes array in gs_clf.grid_scores_[i].cv_validation_scores enthält die f1_micro Metrik für die Falten für ein bestimmtes grid-search-parameter Auswahl?

  • Ja, Sie verstehen richtig
InformationsquelleAutor tkja | 2016-05-03
Schreibe einen Kommentar