使用tensorflow进行特征选择

Feature selection using tensorflow

我正在使用 python 3.5 和 tensorflow 0.11。

我有一个包含大量特征 (>5000) 和相对较少样本 (<200) 的数据集。我正在使用包装器 skflow 函数 DNNClassifier 进行深度学习。

它似乎适用于分类任务,但我想从大量特征中找到一些重要的特征。

在内部,DNNClassifier 似乎执行特征选择(或特征 萃取)。有什么方法可以用tensorflow进行特征选择吗?

或者,有没有提取特征权重的函数? (有一个功能DNNClassifier.weights_,但似乎已被弃用)

如果Tensorflow不支持特征选择或权重信息,是否可以使用其他方法(例如单变量特征选择)进行特征选择然后尝试深度学习是否合理?

感谢您的帮助。

您可以评估权重。 例如,如果您的变量定义为

weights = tf.Variable(np.ones([100,10],dtype='float32'), name=weights)

你可以在tensorflow session上获取它的价值

value = weights.eval();