基于模型的特征选择使用一个监督机器学习模型来判断每个特征的重要性,并且仅保留最重要的特征。用于特征选择的监督模型不需要与用于最终监督建模的模型相同。特征选择模型需要为每个特征提供某种重要性度量,以便用这个度量对特征进行排序。
可以利用L1正则化的稀疏功能,以及树类算法可以计算特征重要性的功能。
L1正则化
相比L2正则化,L1正则化更趋近于使参数为0,而L2则会是参数趋向于零;所以L1具有稀疏参数的功能。
树类算法
通常采用RM,GBDT算法,利用每一层的特征对结果损失下降的总和排序,决出特征重要性排名。
sklearn.feature_selection.SelectFromModel
采用该函数可以直接帮我们实现特征筛选的功能
SelectFromModel(estimator, *, threshold=None, prefit=False