2016-04-06 11 views
1

私は、分類子を訓練するためにGridSearchCVオブジェクトを使用しています。私は5倍のバリデーションパラメータ検索を設定し、fit()を呼び出した後、各折りたたみのバリデーションセットのメトリック、つまり精度とf1スコアを確認する必要があります。これどうやってするの?GridSearchCVの各折りたたみから精度とf1得点を得るには?

clf = GridSearchCV(pipeline, 
         param_grid=param_grid, 
         n_jobs=1, 
         cv=5, 
         compute_training_score=True) 

注:

  • は、私はちょうど予測の結果を取り、標準メトリクス機能でそれを行うことはできませんので、使用する別のテストが設定されていません。
  • clf.best_scores_を使用しても、私が望む情報は得られません。mean_validation_scoreとその標準偏差だけです。

答えて

1

スコアはcv_validation_scoresで、特に、grid_scores_に配置されています。

grid_scores_:名前のタプルのリスト

はparam_grid内のすべてのパラメータ の組み合わせのスコアが含まれています。各エントリは、1つのパラメータ の設定に対応します。

  • パラメータ、 パラメータ設定の辞書
  • mean_validation_score、相互検証が
  • cv_validation_scores、 のスコアのリスト各折り目
  • を折る にわたる平均スコア:各名前のタプルは属性があります

ただし、2つの指標は得られません。このようなオプティマイザの全体的なポイントは、単一のメトリック/スコアラ関数を最大化することです。したがって、このオブジェクトのみがオブジェクトの内部に格納されます。そのようにするには、毎回異なるスコア機能を使って2度実行する必要があります。

+0

それぞれのvalidation_scoreは何ですか、デフォルトスコアは何か特別なものとして定義されていますか? –

+0

デフォルトでは精度は – lejlot

+0

です。@Lejlotに感謝します。平均的な精度など何かをどうやって変えることができますか? –

関連する問題