2012-10-04 4 views
14

Ich verwende sklearn.pipeline.Pipeline, um Feature-Extraktoren und einen Klassifikator zu verketten. Gibt es eine Möglichkeit, mehrere Feature-Auswahlklassen (zum Beispiel die aus sklearn.feature_selection.text) parallel zu kombinieren und ihre Ausgabe zu verbinden?Kombinieren von Feature-Extraktionsklassen in scikit-learn

jetzt Mein Code sieht wie folgt aus:

pipeline = Pipeline([ 
    ('vect', CountVectorizer()), 
    ('tfidf', TfidfTransformer()), 
    ('clf', SGDClassifier())]) 

Es ergibt sich folgende:

vect -> tfidf -> clf 

Ich will eine Pipeline angeben können, die wie folgt aussieht:

vect1 -> tfidf1 \ 
       -> clf 
vect2 -> tfidf2/

Antwort

16

Dies wurde kürzlich im Masterzweig von scikit-learn unter dem Namenimplementiert:

http://scikit-learn.org/dev/modules/pipeline.html#feature-union

+2

Yup, sah ich es an http://blog.kaggle.com/2012/09/26/impermium-andreas-blog/, nachdem ich die Frage –

+0

Kühle gefragt, einen ersten Benutzer:) Lass es mich wissen, wenn du es nützlich findest! –

+1

'sklearn.pipeline.FeatureUnion' ist in Version 0.13.1 – smci