何时删除相关变量

数据挖掘 机器学习 特征选择 数据科学模型
2021-09-14 03:11:45

有人可以建议在特征工程之前或特征工程之后删除相关变量的正确阶段是什么?

4个回答

您不想删除所有相关变量。只有当相关性如此之强以至于它们不会传达额外的信息时。毕竟,这既是相关强度的函数,也取决于您拥有多少数据以及相关变量之间的任何微小差异是否会告诉您有关结果的一些信息。

前两个你可以在做任何模型之前告诉你,最后一个不是。因此,基于前两个考虑因素的组合删除变量可能是非常合理的(即即使额外的变量原则上可能包含一些有用的信息,但鉴于相关性的强度和数据量,您将无法判断你有)在你做任何建模/特征工程之前。最后一点真的只能在做一些建模之后才能评估。

奇怪的是没有其他人提到可解释性

如果您只关心性能,那么删除两个相关变量是没有意义的,除非相关性 = 1 或 -1,在这种情况下,其中一个变量是多余的。

但是,如果担心可解释性,那么删除其中一个变量可能是有意义的,即使相关性是温和的。对于线性模型尤其如此。线性回归的假设之一是预测变量中缺乏完美的多重共线性。

如果 A 与 B 相关,那么您无法解释 A 和 B 的系数。要了解原因,请想象 A=B(完全相关)时的极端情况。那么,模型 y=100*A+50*B 与模型 y=5*A+10*B 或 y=-2000*A+4000*B 相同。最小二乘最小化问题的可能解决方案中有多个平衡点,因此您也不能“信任”。

其他模型也可能发生类似的事情。例如,如果 A 与 B 非常相关,那么如果决策树选择 A 是 B 的两倍,那么您不能说 A 比 B 更重要。如果您重新训练模型,则可能会发生相反的情况。

您应该考虑检查VIF(方差膨胀因子)。尝试删除具有更高 VIF 的功能。通常,VIF 最好低于 10。

没关系。但是为了提高特征工程之前的效率。