数据较少,稀疏和不平衡时的特征选择

时间:2017-02-01 04:50:32

标签: machine-learning scikit-learn analytics feature-selection

当我拥有较少,稀疏和不平衡的数据时,有没有办法选择功能。

大约90%的样本是序数的,10%是数值的。

功能数量:200 样本数量:约1000

1 个答案:

答案 0 :(得分:0)

是,可以为稀疏数据进行特征选择。可能的方法是:

  • 基于chi-2的特征选择
  • RandomForestClassifier / RandomForestRegressor
  • xgboost

尝试使用过采样技术(例如SMOTE)或欠采样在原始数据集和平衡数据集中进行特征选择。 SMOTE代表Synthetic Minority Over-sampling。有一个专用的包用于平衡Python中的不平衡数据集。您可以使用此包https://pypi.python.org/pypi/imbalanced-learn

某些领域知识在特征选择中是首选,如this高度引用的特征选择论文所述。比较平衡的特征重要性和原始数据,以进行最终的特征选择。

参考文献:

http://blog.kaggle.com/2016/07/21/approaching-almost-any-machine-learning-problem-abhishek-thakur/

http://ogrisel.github.io/scikit-learn.org/sklearn-tutorial/modules/generated/sklearn.feature_selection.chi2.html#sklearn.feature_selection.chi2

http://ogrisel.github.io/scikit-learn.org/sklearn-tutorial/modules/feature_selection.html

https://www.cs.cmu.edu/afs/cs/project/jair/pub/volume16/chawla02a-html/node6.html