我的情况是,我有超过 100,000 个特征,我需要选择最重要的特征以将它们提供给我的最终神经网络模型。
到目前为止,我一直在 sklearn 中使用 RandomForestClassifier,首先我使用 fit,然后我使用 feature_importances 来选择前 n 个特征。(我也使用 StandardScaler 和 transform 来规范化数据)
现在我有两个问题:
我接近这个了吗?这是删除无用功能的正确方法吗?
当有超过 100,000 个特征时,有没有更好的方法来选择例如前 200 个特征给我的最终模型?我的任务是句子分类,这些特征实际上是非英语单词的 BOW 特征,所以基本上我想学习我的语料库中可用于对句子进行分类的最重要的“单词”。
我的最终模型是一个神经网络,但由于性能问题,我无法将所有特征都赋予它并让它决定,我需要过滤一些特征,然后将它们赋予我的神经网络模型。我的最终模型也是用 pytorch 编写的,所以目前我正在使用 sklearn 选择前 n 个特征,然后使用 pytorch 训练最终模式,所以如果有更简单的方法,请告诉我。