数据挖掘——特征选择

数据挖掘——特征选择

前言

特征选择是数据挖掘人物中相当重要的一步,选择地好既能去除冗余特征减少不必要的计算,又能增加数据的表达性,增加算法的准确率。特征选择的方法很多,需要一个萝卜一个坑,所以需要找到最适合当前任务的特征选择方法。这篇集中总结特征选择能用到的一些算法,对于API不会讲其应用方法。

特征选择

1、 画图
2、pearsonr相关系数
3、Spearmanr相关系数
4、Kendall Rank(肯德尔等级)相关系数
5、方差和协方差
6、互信息和信息熵
这些具体数学原理见我的另一篇博客述
5、卡方
6、 F检验(计算各个特征的F值和P值,选择F值大的或者P值小的)
7、递归特征消除(Recursive Feature Elimination,RFE)
简单解释下:递归特征消除的主要思想是反复的构建模型(如SVM或者回归模型),然后选出最好的(或者最差的)特征(可以根据系数来选),把选出来的特征放到一边,然后在剩余的特征上重复这个过程,直到遍历所有特征。这个过程中特征被消除的次序就是特征的排序。因此这是一种寻找最优特征子集的贪心算法。Scikit-Learn提供了RFE包,可以用于特征消除,还提供了RFECV,可以通过交叉验证来对特征进行排序。
8、稳定性选择(Stability Selection)
稳定性选择是一种基于二次抽样和选择算法相结合的较新的方法,选择算法可以使回归、SVM或者其他类似的方法。他的主要思想是在不同的数据子集和特征子集上运行特征选择算法,不断重复,最终汇总特征选择结果。比如,可以统计某个特征被认为是重要特征的频率(被选为重要特征的次数除以他所在的子集被测试的次数)。在理想情况下,重要特征的得分会接近100%。稍微弱一点的特征得分会是非0的数,而最无用的特征得分将会接近于0.Sciki0Learn在随机Lasso和随机逻辑回归中有队稳定性选择的实现。

目前为止,只使用过这些方法,后期还会继续补充。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章