有没有办法在scikit-learn中用非线性模型进行递归特征选择?
我正在尝试在一个回归问题上使用SVR(支持向量回归)和rbf核。我的数据集大概有300个特征。我想选择一些更相关的特征,并使用类似于matlab中的sequentialfs函数,这个函数会尝试每种组合(或者说从少量变量开始,逐步添加变量,或者反过来,从多到少,像scikit中的RFE或RFECV那样)。
现在,正如我所说的,Python中有RFE,但我不能用它来处理非线性估计器。我是不是遗漏了什么,可以让我用RFE和非线性估计器一起使用?我想写一个这样的算法应该不难,但如果已经有现成的工具可以做到这一点,那肯定会更好。
谢谢你们,像往常一样;)
1 个回答
1
RFE(递归特征消除)需要有办法来判断特征的重要性,而RBF核的支持向量机(SVM)并没有提供这个功能。从我快速浏览的原始算法来看,似乎要在核SVM中实现这个功能,需要把它整合进SVM的学习算法里。
逐步特征选择(无论是向前选择还是向后选择)其实很容易实现,但在scikit-learn中并没有现成的工具可以直接使用。