在统计学中,布魯薛-培根檢定(,Breusch-Pagan檢定,常簡稱BP检验)是1979年由和提出的方法,用来检验线性回归模型中是否存在异方差的问题。另外,和韦斯伯格在1983年独立地提出了类似的方法。异方差的存在意味着模型的方差与自变量是相关的。
设回归模型为
:
y = \beta_0 + \beta_1 x + u, \,
对其进行回归可以得到一组残差\widehat{u}。普通最小二乘法要求方差与自变量无关,这时方差可以由残差平方和的平均值估计得到。但如果这个前提不成立,例如方差与自变量线性相关,就可以通过下列辅助回归,即残差平方对自变量进行回归检验出来:
:
\widehat{u}^2 = \gamma_0 + \gamma_1 x + v.\,
这就是BP检验的一个情形。它实质上是卡方检验,检验统计量渐进于n\chi^2,自由度与除常数项外的解释变量数相等。如果得到的p值小于一定阈值(如0.05)就可以拒绝零假设并认为异方差存在。
如果BP检验表明存在异方差存在,可以视情况使用(适用于异方差的分布已知时)或方法。
流程
根据高斯-马尔可夫定理,在同方差的前提下,普通最小二乘估计是最佳的线性无偏估计,意即其方差相较其他任何估计量都更小。如果异方差存在,估计结果仍是无偏的,但其方差并不是最小的。在决定使用哪种估计方法之前,可以先进行BP测试来判断是否存在异方差。BP检验的前提是方差\sigma_i^2 = h(x_i^T\gamma)与各个自变量有关,其中x_i = (1, x_{2i}, \ldots, x_{pi})是自变量,这里除去常数项以外共有p-1个解释变量。零假设亦即异方差不存在等价于(p - 1)个约束:
:
\gamma_2 = \cdots = \gamma_p = 0.
BP测试分为以下三个步骤:
- 第一步:对原始模型进行普通最小二乘估计
::
y = X\beta+\varepsilon
并对每个观测都计算出残差e_i。
- 第二步:进行下列辅助回归
::
e_i^2=\gamma_1+\gamma_2x_{2i}+\cdots+\gamma_px_{pi}+\eta_i
- 第三步:检验统计量LM等于第二步中辅助回归的决定系数乘以样本大小n:
::
\text{LM}=nR^2\, .
如果同方差的零假设成立,LM统计量是渐进于\chi^2_{p - 1}分布的。
软件实现
在R语言中,能够完成BP检验的函数包括car包中的ncvTest函数、lmtest包中的bptest函数以及plm包中的plmtest函数等。
而Stata中计算回归后使用estat hettest命令,参数填写所有独立变量,即可进行BP检验。
在Python中,statsmodels.stats.diagnostic(statsmodels包)中的函数het_breuschpagan可进行BP检验。
参见
*
参考文献
拓展阅读
*
*
*
*
评论 (0)