我想使用python scikit-learn执行装袋。
我想结合使用RFE()和递归特征选择算法。
步骤如下。
我尝试使用如下所示的BaggingClassifier方法,但是这花费了很多时间,而且似乎不起作用。仅使用RFE即可正常工作(rfe.fit())。
cf1 = LinearSVC()
rfe = RFE(estimator=cf1)
bagging = BaggingClassifier(rfe, n_estimators=30)
bagging.fit(trainx, trainy)
同样,第4步可能很难找到顶部特征,因为Bagging分类器没有在RFE()中提供诸如rank_的属性。
还有其他一些好的方法可以实现这四个步骤吗?
最佳答案
如果没有套袋,则可以通过以下行访问RFE给出的排名:
rfe.ranking_
此顺序可用于对要素名称进行排序,然后采用五个优先要素。有关此参数的示例,请参见the documentation for sklearn RFE。
使用装袋法时,您需要访问30个估算器中的每个估算器。基于documentation for sklearn BaggingClassifier,您可以使用以下命令访问它们:
bagging.estimators_
因此:对于bagging.estimators_中的每个bagging,获取排名,基于该排名对要素进行排序,并采用前五个元素!
希望这可以帮助。
关于python - 使用python scikit-learn进行RFE的装袋(bootstrap),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34370443/