【问题标题】:Obtaining the most informative features after dimensionality reduction降维后获得信息量最大的特征
【发布时间】:2016-09-30 09:33:52
【问题描述】:

我基本上有一个 python 脚本,它尝试结合各种分类器的各种降维技术。 我试图为每个分类器收集信息最丰富的特征:

if 'forest' in type(classifier).__name__.lower():
            importances = classifier.feature_importances_
            coefs_with_fns = numpy.argsort(importances)[::-1]
        else:
            coefs_with_fns = sorted(zip(classifier.coef_, reduced_training.columns))

虽然这原则上有效,但输出只是一系列整数,(我假设)对应于分类器之前特征数组中的列号。这给我带来了问题:这个数组是一维降维方法的直接结果,它丢弃了所有以前附加的列标签。

所以我的问题是:有没有办法将降维的结果追溯到原始数据集中的实际列/标签?

【问题讨论】:

    标签: python machine-learning scikit-learn


    【解决方案1】:

    你不能。

    当您进行降维(如 PCA)时,您得到的是一些新向量,而不是原始特征集的子集。在此过程中,您会丢失信息。您将原始特征集的特征从高维空间投影到新的(较低的)空间。你不能回去。

    请注意,Dimensionality ReductionFeature ExtractionFeature Selection 不同。在Feature Selection 中,您选择原始特征集的一个子集。

    编辑:如果您决定使用特征选择技术,请查看 this answer 以执行您想要的操作。

    【讨论】:

      猜你喜欢
      • 2016-05-07
      • 2015-07-04
      • 2012-06-22
      • 2015-07-13
      • 2011-04-21
      • 2016-12-29
      • 2014-04-05
      • 1970-01-01
      相关资源
      最近更新 更多