首页 > python scikit-learn pipeline

python scikit-learn pipeline

我看到的pipeline的常用用法是

pipeline = Pipeline([  
('vect',CountVectorizer()),  
('tfidf',TfidfTransformer()),  
('clf',SGDClassifier()),  
]);  
  
parameters = {  
    'vect__max_df': (0.5, 0.75),  
    'vect__max_features': (None, 5000, 10000),  
    'tfidf__use_idf': (True, False),  
#    'tfidf__norm': ('l1', 'l2'),  
    'clf__alpha': (0.00001, 0.000001),  
#    'clf__penalty': ('l2', 'elasticnet'),  
    'clf__n_iter': (10, 50),  
}  

grid_search = GridSearchCV(pipeline,parameters,n_jobs = 1,verbose=1)

我现在主要是为了一个模型调参,比如SVR的RBF核,想利用pipeline来调参可以吗,还是说pipeline只能用于不同种模型寻找最优,调参的话只能用GridSearchCV

我现在的代码如下

C_range = np.logspace(-2, 10, 13)
gamma_range = np.logspace(-9, 3, 13)
param_grid = dict(gamma=gamma_range, C=C_range)
grid = GridSearchCV(SVR(kernel='rbf'), param_grid=param_grid, cv=5)

可以利用pipeline来调C_range和gamma_range这两个参数吗?

【热门文章】
【热门文章】