私はこれをsklearn Webページから取得しました:
a)パイプライン:最終的な見積もりを伴う変換のパイプライン
b)Make_pipeline:指定された推定量からパイプラインを構築します。これは、Pipelineコンストラクターの省略形です。
しかし、それぞれをいつ使用しなければならないかはまだわかりません。誰かが私に例を挙げることができますか?
唯一の違いは、make_pipeline
ステップの名前が自動的に生成されることです。
たとえば、モデル選択ユーティリティ(GridSearchCVなど)でパイプラインを使用する場合は、ステップ名が必要です。グリッド検索では、パイプラインのさまざまなステップのパラメーターを指定する必要があります。
pipe = Pipeline([('vec', CountVectorizer()), ('clf', LogisticRegression()])
param_grid = [{'clf__C': [1, 10, 100, 1000]}
gs = GridSearchCV(pipe, param_grid)
gs.fit(X, y)
make_pipelineと比較してください:
pipe = make_pipeline(CountVectorizer(), LogisticRegression())
param_grid = [{'logisticregression__C': [1, 10, 100, 1000]}
gs = GridSearchCV(pipe, param_grid)
gs.fit(X, y)
だから、とPipeline
:
clf__C
。make_pipeline
:
それらをいつ使用するかはあなた次第です:)迅速な実験にはmake_pipelineを、より安定したコードにはPipelineを好みます。経験則:IPython Notebook-> make_pipeline; 大きなプロジェクトのPythonモジュール->パイプライン。ただし、モジュールでmake_pipelineを使用したり、短いスクリプトやノートブックでPipelineを使用したりすることは、決して大したことではありません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加