【问题标题】:Variance Threshold vs Random Forest feature selection方差阈值与随机森林特征选择
【发布时间】:2021-04-10 13:41:22
【问题描述】:

谁能解释一下阈值参数的确切含义?

from sklearn.feature_selection import VarianceThreshold

thresholder = VarianceThreshold(threshold=.8)

threshold=.8 或 threshold=.5 有什么区别?

【问题讨论】:

  • oyu 可以添加更多信息吗?你期待什么?
  • 我想了解阈值 = 0.8 和阈值 = 0.5 是什么意思?

标签: machine-learning feature-selection


【解决方案1】:

我从您的问题中猜测您并不真正了解方差是什么。较低的方差意味着数据中没有太大的可变性。例如,包含太多相似或相同值的分布将具有非常低的方差。相比之下,像[1,4,56,32,8,9] 这样的分布会有更高的方差,因为它们的值彼此相差很大。显然,较低的方差分布不是很有用,因此您通常会选择一个阈值来丢弃此类分布。

我还建议您阅读 DataQuest 的 this 讨论帖。

【讨论】:

    【解决方案2】:

    阈值参数供以后选择:

    阈值:浮动,可选:

    训练集方差低于此阈值的特征将被删除。默认是保留所有具有非零方差的特征,即删除所有样本中具有相同值的特征

    例子

    以下数据集具有整数特征,其中两个在每个样本中都是相同的。这些将使用阈值的默认设置删除:

    X = [[0, 2, 0, 3], [0, 1, 4, 3], [0, 1, 1, 3]]
    selector = VarianceThreshold(threshold=0.0)
    selector.fit_transform(X)
    array([[2, 0],
           [1, 4],
           [1, 1]])  
    

    尝试在此示例中更改此阈值,看看会发生什么

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-17
      • 2016-02-25
      • 2020-05-16
      • 2012-07-08
      • 2015-09-28
      • 2021-05-09
      • 2017-12-04
      • 2015-07-13
      相关资源
      最近更新 更多