通常,在对数据进行线性回归模型训练后,某些变量/特征会具有较高的 P 值,这意味着它们在统计上不显着。虽然有像变量选择这样的自动化方法,比如 Step-wise、LASSO 等。我想了解手动选择变量的最佳实践。
我能想到的一件事是检查共线性,并可能丢弃或组合显示高相关性的变量。还可以使用 F 检验比较模型,或者使用领域知识。除此之外,还有哪些其他最佳实践?
我觉得简单地丢弃显示高 P 值的变量太简单了。并且不能保证在您丢弃一些变量后剩余的变量都会具有高 P 值。
通常,在对数据进行线性回归模型训练后,某些变量/特征会具有较高的 P 值,这意味着它们在统计上不显着。虽然有像变量选择这样的自动化方法,比如 Step-wise、LASSO 等。我想了解手动选择变量的最佳实践。
我能想到的一件事是检查共线性,并可能丢弃或组合显示高相关性的变量。还可以使用 F 检验比较模型,或者使用领域知识。除此之外,还有哪些其他最佳实践?
我觉得简单地丢弃显示高 P 值的变量太简单了。并且不能保证在您丢弃一些变量后剩余的变量都会具有高 P 值。
一般来说,没有明确而简单的方法来决定模型中包含哪些特征。
话虽如此,您可以使用不同的策略来有效地处理特征:
确定重要特征时最重要的方面之一是与数据集相关的特定领域的知识。这可能意味着阅读过去探索过类似主题的研究论文,或者要求主要利益相关者确定他们认为最重要的因素是预测目标变量。
因此,这些方法取决于您在该领域的知识。
这些方法使用不同的特征组合来确定最优的特征子集来训练模型,然后计算性能。每个子集都用于训练模型,然后在测试集上进行评估。Sp,这些方法最终可能会非常计算密集,尽管它们在确定最佳子集方面非常有效。不建议将这些方法用于大型特征集,因为它们的计算量很大。
对于这种情况,您可以使用递归特征消除 (RFE)
在这些方法中,特征选择方法在运行模型之前作为预处理步骤执行。
它们通过观察特征如何相互关联的特征来工作。可以使用不同的指标来确定哪些特征将被淘汰,哪些特征将保留。它们还返回一个特征排名,告诉您自变量如何相对于彼此排序。他们将删除被认为是多余的变量。
这种方法的一个例子是 sklearn 的“VarianceThreshold”
这些方法包含在机器学习算法的实际公式中。最常见的嵌入式方法类型是正则化,例如套索。