0
我使用sklearn中的Pipeline
來分類文本。如何在sklearn的管道中醃製各個步驟?
在這個例子中Pipeline
,我有包裹着FeatureUnion
一個TfidfVectorizer
和一些自定義的功能和分類爲Pipeline
步驟,那麼我適合訓練數據做預測:
from sklearn.pipeline import FeatureUnion, Pipeline
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.svm import LinearSVC
X = ['I am a sentence', 'an example']
Y = [1, 2]
X_dev = ['another sentence']
# classifier
LinearSVC1 = LinearSVC(tol=1e-4, C = 0.10000000000000001)
pipeline = Pipeline([
('features', FeatureUnion([
('tfidf', TfidfVectorizer(ngram_range=(1, 3), max_features= 4000)),
('custom_features', CustomFeatures())])),
('clf', LinearSVC1),
])
pipeline.fit(X, Y)
y_pred = pipeline.predict(X_dev)
# etc.
在這裏,我需要醃製TfidfVectorizer
一步,並留下custom_features
unickled,因爲我仍然在做他們的實驗。這個想法是通過酸洗tfidf步驟來加快管道。
我知道我可以醃製整個Pipeline
與joblib.dump
,但我如何醃各個步驟?
如何從管道內加載它? –
我試着回答。 – joeln
這種有用的功能不存在幾乎令人難以置信。 –