块引用
我是机器学习的学生和初学者。我想做特色 选择列。我的数据集是50000 X 370,它是二进制文件 分类问题。 首先我删除了std.deviation = 0的列,然后我删除了重复的列,之后我检查了具有最高ROC曲线区域的前20个特征。做PCA的下一步应该是什么?任何人都可以为特征选择提供一系列步骤吗?
答案 0 :(得分:0)
您已经在进行大量预处理。我建议的唯一额外步骤是在PCA之后标准化值。然后,您的数据应准备好输入您的学习算法。
或者你想避免PCA?如果您的功能之间的相关性不是太强,那么这可能没问题。然后跳过PCA并将值标准化。
答案 1 :(得分:0)
尝试L1正则化。这是删除不太相关的功能的标准方法。
答案 2 :(得分:0)
您可以尝试以下技巧/算法:
L1正则化:这将生成稀疏特征矩阵;大多数要素权重为零。但是,如果您拥有高维数据集,这种技术非常有用,在您的情况下似乎也是如此。有些算法不支持正则化。
顺序功能选择:对于那些不支持正则化的算法非常有用。这些算法自动选择与问题更相关的特征子集。你可以在这里找到更多相关信息:(1)Comparative Study of Techniques for Large Scale Feature Selection,F。Ferri,P。Pudil,M。Hatef和J. Kittler。大规模特征选择技术的比较研究。实践IV中的模式识别,第403-413页,1994。(2)Feature selection in scikit-learn。
降低维度:如果您的问题是线性的,即您的数据可线性分离,则PCA(主成分分析)和LDA(线性判别分析)将很有效。如果数据不是线性可分的,那么您可以尝试内核主成分分析。
随机森林的特征重要性:这是一种集合技术,可以为您提供要素重要性(数值)。您可以丢弃具有低重要性的功能。