我应该如何解释回归中的 p 值(即 t 检验),我可以将它们用于特征选择吗?

机器算法验证 t检验 特征选择 p 值 最小二乘
2022-03-24 12:24:57

我正在尝试使用几个自变量进行 OLS 回归,并希望更好地了解如何通过对回归中的自变量进行 t 检验来解释 p 值。例如,这是我的结果:

                            OLS Regression Results                            
==============================================================================
Dep. Variable:                      y   R-squared:                       0.612
Model:                            OLS   Adj. R-squared:                  0.497
Method:                 Least Squares   F-statistic:                     5.353
Date:                Fri, 11 Jan 2013   Prob (F-statistic):            0.00390
Time:                        16:12:03   Log-Likelihood:                -239.61
No. Observations:                  23   AIC:                             491.2
Df Residuals:                      17   BIC:                             498.0
Df Model:                           5                                         
==============================================================================
                 coef    std err          t      P>|t|      [95.0% Conf. Int.]
------------------------------------------------------------------------------
const       4.268e+05   1.85e+04     23.092      0.000      3.88e+05  4.66e+05
x1           -70.4536   2230.755     -0.032      0.975     -4776.936  4636.028
x2         -2.384e+04   1.25e+04     -1.905      0.074     -5.02e+04  2565.514
x3         -3821.8439   3848.891     -0.993      0.335     -1.19e+04  4298.607
x4          4030.8183   2295.228      1.756      0.097      -811.689  8873.325
x5         -3.955e+04   1.73e+04     -2.282      0.036     -7.61e+04 -2977.451
==============================================================================
Omnibus:                        2.870   Durbin-Watson:                   1.674
Prob(Omnibus):                  0.238   Jarque-Bera (JB):                1.326
Skew:                          -0.227   Prob(JB):                        0.515
Kurtosis:                       4.085   Cond. No.                         21.8
==============================================================================

据我了解,如果给定变量的 p 值高于某个阈值(例如 p 值 > 0.05),就像变量 x1 的 pvalue=0.975 的情况一样,那么可以说这种特定的回归不会获得有这个变量的任何附加信息。如果我误解或概括太多,请告诉我。

让我感到困惑的是同一个变量 x1,当我只使用 x1 和 x5 运行回归时,x1 的 p 值 = 0.05。我猜我把这解释为,x1 有一些有用的信息,但与 x2、x2 和 x4 一起携带的信息相比,x1 没有用处。

关于特征选择,尝试 x1 到 x5 的所有各种子集是否正确,丢弃那些包含 p 值 > 0.05 的自变量的子集,然后使用剩余的组合进行交叉验证以找到最佳模型参数?

我的最终目标是从大量变量中进行特征选择,也许 p 值不是最好的选择。无论哪种情况,我都想更好地理解这些 p 值,如果您有最喜欢的特征选择方法,我也很想听听。谢谢

3个回答

你写

据我了解,如果给定变量的 p 值高于某个阈值(例如 p 值 > 0.05),就像变量 x1 的 pvalue=0.975 的情况一样,那么可以说这个特定的回归不会获得有这个变量的任何附加信息。

这是不正确的。每个变量都会添加一些信息,除非它只是随机噪声。

p 值具有非常特定的含义:

如果在随机抽取这个样本的总体中,与这个 p 值相关的效应大小为 0,那么在这个大小的样本中,我们得到一个远离 0 的检验统计量的概率是多少?更远?

你还写:

让我感到困惑的是同一个变量 x1,当我只使用 x1 和 x5 运行回归时,x1 的 p 值 = 0.05。我猜我把这解释为,x1 有一些有用的信息,但与 x2、x2 和 x4 一起携带的信息相比,x1 没有用处。

我不会看 p 值,而是看效应大小和它们的变化。

此外,“当比较时”这个短语是不正确的。当您有多个独立变量时,每个效果都在控制其他变量之后;也就是说,将其他变量保持在回归常数中,这个变量的影响是什么?

我刚刚注意到的另一件事:您只有 23 个观察值!

您一次最多应该查看 2 个变量。您提出的模型(有 5 个变量)几乎肯定是过拟合的。

我会谨慎解释这些 t 统计数据。回归模型中的贝塔系数是通过考虑所有变量来计算的,而 t 统计量是基于所有变量的,因此单独解释它们可能会产生误导。每个变量的估计值都受到其他变量的影响,并且可以被其他变量掩盖。例如,两个变量可能不显着(在完整模型中查看时),但任何一个变量都可能对模型很重要且很重要。

最好尝试一个搜索和测试回归变量的最佳子集的函数——比如 R 中的 regsubsets。实际上,发生的情况是一个测试各种模型并使用某些标准(比如或 AIC)。您的变量搜寻功能/程序的文档应说明正在使用的程序。R2

关于特征选择:我个人认为不要基于关于特征选择的 p 值。使用反向消除;首先用所有感兴趣的变量拟合模型并计算您的“最喜欢的”信息标准(例如 AIC),然后依次排除您的一个特征并重新计算相关的 AIC。警告:AIC 在嵌套模型中具有可比性。

鉴于当前情况下您的数据集相当小,我什至可能会考虑 BIC(比 AIC 更严格)。此外,您可能需要考虑引导您的样本并重新计算此过程。

关于 p 值,引用Mackay(第 37 章):

p值是在给定数据概率分布的零假设的情况下,结果将与观察到的结果一样极端或更极端的概率。

这实际上是对彼得弗洛姆答案的(相当抽象的)重述。如果您说“足够的信息”而不是“任何其他信息”,我猜您的初始陈述将是有效的。添加特征确实会降低模型的自由度。