2011-07-07 22 views
5

ile benim de scikits-öğrenme Boru Hattı, ben CountVectorizer() için özel bir kelime geçmek istiyorum:Scikits-öğrenme: Kullanım özel kelime araya Boru Hattı

text_classifier = Pipeline([ 
    ('count', CountVectorizer(vocabulary=myvocab)), 
    ('tfidf', TfidfTransformer()), 
    ('clf', LinearSVC(C=1000)) 
]) 

Ancak, bildiğim kadarıyla çağırdığınızda anladığım kadarıyla

text_classifier.fit(X_train, y_train) 

Boru MyVocab göz ardı CountVectorizer(), ve fit_transform() yöntemini kullanmaktadır. Myvocab'ı kullanmak için Pipeline'ı nasıl değiştirebilirim? Teşekkürler!

cevap

9

Bu, scikit'te bir hataydı ve five minutes ago'u düzeltdiğimi öğreniyordu. Onu gördüğünüz için teşekkürler.

count = CountVectorizer(vocabulary=myvocab) 
X_vectorized = count.transform(X_train) 

text_classifier = Pipeline([ 
    ('tfidf', TfidfTransformer()), 
    ('clf', LinearSVC(C=1000)) 
]) 

text_classifier.fit(X_vectorized, y_train) 

GÜNCELLEME: senin de Github en yeni sürümüne yükseltme veya geçici bir çözüm olarak boru hattından vectorizer ayrı önermek Bu cevap yayınlanmıştır beri, bu düzeltme birkaç dahil edilmiştir scikit-öğrenme bültenleri.

+1

Düzeltme için teşekkürler! – mathias