1
我正在使用scikit学习库的Pipeline和GridSearchCV。Scikit学习管道中是否存在“Or”功能
我知道,例如功能选择方法可以合并FeatureUnion。在这种情况下,结果是连接的。我所寻找的是一种或一种功能,例如网格搜索可以并行执行并且不会在最后结合。
在下面的SelectKBest()+ SVC()和VarianceThreshold()+ SVC()应该执行的例子中。
pipeline = Pipeline([
[('kbest', SelectKBest()),
('variance', VarianceThreshold())],
('svm', SVC())
])
parameters = {
'kbest__k': [3, 5],
'variance__threshold': [0.1, 0.2],
'svm__C': [1],
'svm__gamma': [0.1, 0.01]
}
grid_search = GridSearchCV(pipeline, parameters)
grid_search.fit(X, y)
如果是,是否可以使用相同的功能有多个估计器?
我不知道答案一个解决办法是用管道,管道'的列表来解决,但= [['kbest',SelectKBest()),('variance',VarianceThreshold())]]中的清洁程序的[Pipeline([cleaner,('svm',SVC())]]''。 – Mephy
@Mephy谢谢你的建议。在这种情况下的缺点是你必须在每次迭代中定义一组独立的参数。 –
看看我对这个问题的回答:http://stackoverflow.com/questions/23045318/scikit-grid-search-over-multiple-classifiers-python/34003326#34003326 – Stergios