方差阈值与随机森林特征选择



谁能解释一下阈值参数到底意味着什么?

from sklearn.feature_selection import VarianceThreshold
thresholder = VarianceThreshold(threshold=.8)

阈值=.8 或阈值=.5 有什么区别?

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

我还建议您阅读DataQuest的此讨论线程。

阈值参数用于将来选择:

阈值 : 浮点数, 可选:

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

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

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]])  

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

最新更新