2017-03-03 7 views
1

scikit-learnには他の複数の推定値を使用する推定値があり、自動的に最良の性能を持つ推定値が選択されますか?scikit-learnでいくつかの推定値の中から最良のものを自動的に選択

私は推定器インタフェースに準拠したクラスで、pipelineに組み合わせることができるように、このようなものがなければならないと思いますか?

+0

私はあなたがアンサンブル法http://scikit-learn.org/stable/modulesを意味だと思います/ en semble.html?しかし、私はあなたの質問で混乱しています。 Cross_validationは集約の例で導出されるため、cross_validationエラーに基づいて最適なものを選択することは、最終的に1つの最良の分類子を選択する場合には、前処理とテストで行うことになります。それはあなたの後ろではない場合は、質問を明確にすることはできますか? – gbtimmon

+0

通常は、相互検証を使用して異なる見積もりの​​パフォーマンスをテストします。それから私は手動で最終的な予測のために最高のパフォーマンスを選択します。今私はsklearnパイプラインを使用してワークフロー全体を実装したいので、この最終ステップはエスティメータインターフェイスを実装する1つのクラスで実行する必要があります。私は、アンサンブル手法が正しい答えであるとは考えていません。予測は組み合わされるべきではありません。 – clstaudt

+1

IMO、scikitはあなたが望むものを含んでいません。しかし、あなたはここからヒントを取ることができます:http://scikit-learn.org/stable/auto_examples/classification/plot_classifier_comparison.html#sphx-glr-auto-examples-classification-plot-classifier-comparison-py –

答えて

4

scikit-learn自体は現在あなたが探しているものがありません。しかし、TPOTautoml-learnのようなライブラリがsklearnのようなインタフェースを備えており、最良の推定量を自動的に選択したり、パイプライン全体を構築することさえできます。

あなたは、GridSearchCVを使用することができる最高の推定量を選択するだけでなく、チューニングするためにそのハイパーは、例えば、私は最高のテキスト分類器を見つけるためにこれを使用してい
+0

ご清聴ありがとうございます。 Sklearnにはそれがないのは驚くべきことです。これは、MLワークフローで非常に頻繁に実行される簡単なステップだと思います。 – clstaudt

1

:公式ドキュメントから

pipeline = Pipeline([ 
    ('vect', CountVectorizer(ngram_range=(2,2))), 
    ('tfidf', TfidfTransformer(use_idf=True)), 
    ('clf', SVC()) 
]) 

parameters = {'clf': [ 
    SVC(), 
    MultinomialNB(), 
    BernoulliNB(), 
    MLPClassifier(max_iter=1000), 
    KNeighborsClassifier(), 
    SGDClassifier(max_iter=1000), 
    RandomForestClassifier() 
]} 

gs_clf = GridSearchCV(pipeline, parameters, n_jobs=-1) 
gs_clf = gs_clf.fit(X, y) 

print("Best score", gs_clf.best_score_) 

for param_name in sorted(parameters.keys()): 
    print("%s: %r" % (param_name, gs_clf.best_params_[param_name])) 

例:http://scikit-learn.org/stable/auto_examples/plot_compare_reduction.html#sphx-glr-auto-examples-plot-compare-reduction-py

あなたも「ベスト」はあなたに何を意味するかを定義するために、独自のスコアリング関数を定義することができます。 http://scikit-learn.org/stable/modules/model_evaluation.html#scoring-parameter

関連する問題