Heteroskedasticity-consistent standard errors

The topic of heteroskedasticity-consistent (HC) standard errors arises in statistics and econometrics in the context of linear regression and time series analysis. These are also known as heteroskedasticity-robust standard errors (or simply robust standard errors), Eicker–Huber–White standard errors (also Huber–White standard errors or White standard errors), to recognize the contributions of Friedhelm Eicker, Peter J. Huber, and Halbert White.

In regression and time-series modelling, basic forms of models make use of the assumption that the errors or disturbances ui have the same variance across all observation points. When this is not the case, the errors are said to be heteroskedastic, or to have heteroskedasticity, and this behaviour will be reflected in the residuals estimated from a fitted model. Heteroskedasticity-consistent standard errors are used to allow the fitting of a model that does contain heteroskedastic residuals. The first such approach was proposed by Huber (1967), and further improved procedures have been produced since for cross-sectional data, time-series data and GARCH estimation.

Heteroskedasticity-consistent standard errors that differ from classical standard errors may indicate model misspecification. Substituting heteroskedasticity-consistent standard errors does not resolve this misspecification, which may lead to bias in the coefficients. In most situations, the problem should be found and fixed. Other types of standard error adjustments, such as clustered standard errors or HAC standard errors, may be considered as extensions to HC standard errors.

History
Heteroskedasticity-consistent standard errors are introduced by Friedhelm Eicker, and popularized in econometrics by Halbert White.

Problem
Consider the linear regression model for the scalar $$y$$.



y = \mathbf{x}^{\top} \boldsymbol{\beta} + \varepsilon, \, $$

where $$\mathbf{x}$$ is a k x 1 column vector of explanatory variables (features), $$\boldsymbol{\beta}$$ is a k × 1 column vector of parameters to be estimated, and $$\varepsilon$$ is the residual error.

The ordinary least squares (OLS) estimator is



\widehat \boldsymbol{\beta}_\mathrm{OLS} = (\mathbf{X}^{\top} \mathbf{X})^{-1} \mathbf{X}^\top \mathbf{y}. \, $$

where $$\mathbf{y}$$ is a vector of observations $$y_i$$, and $$\mathbf{X}$$ denotes the matrix of stacked $$\mathbf{x}_i$$ values observed in the data.

If the sample errors have equal variance $$\sigma^2$$ and are uncorrelated, then the least-squares estimate of $$\boldsymbol{\beta}$$ is BLUE (best linear unbiased estimator), and its variance is estimated with


 * $$\hat{\mathbb{V}}\left[\widehat\boldsymbol\beta_\mathrm{OLS}\right] = s^2 (\mathbf{X}^{\top}\mathbf{X})^{-1}, \quad s^2 = \frac{\sum_i \widehat \varepsilon_i^2}{n-k} $$

where $$\widehat \varepsilon_i = y_i - \mathbf{x}_i^{\top} \widehat \boldsymbol{\beta}_\mathrm{OLS}$$ are the regression residuals.

When the error terms do not have constant variance (i.e., the assumption of $$ \mathbb{E}[\mathbf{u}\mathbf{u}^{\top}] = \sigma^2 \mathbf{I}_n$$ is untrue), the OLS estimator loses its desirable properties. The formula for variance now cannot be simplified:


 * $$ \mathbb{V}\left[\widehat\boldsymbol\beta_\mathrm{OLS}\right] = \mathbb{V}\big[ (\mathbf{X}^{\top}\mathbf{X})^{-1} \mathbf{X}^{\top}\mathbf{y} \big] = (\mathbf{X}^{\top}\mathbf{X})^{-1} \mathbf{X}^{\top} \mathbf{\Sigma} \mathbf{X} (\mathbf{X}^{\top}\mathbf{X})^{-1}$$

where $$ \mathbf{\Sigma} = \mathbb{V}[\mathbf{u}].$$

While the OLS point estimator remains unbiased, it is not "best" in the sense of having minimum mean square error, and the OLS variance estimator $$\hat{\mathbb{V}} \left[ \widehat \boldsymbol{\beta}_\mathrm{OLS} \right]$$ does not provide a consistent estimate of the variance of the OLS estimates.

For any non-linear model (for instance logit and probit models), however, heteroskedasticity has more severe consequences: the maximum likelihood estimates of the parameters will be biased (in an unknown direction), as well as inconsistent (unless the likelihood function is modified to correctly take into account the precise form of heteroskedasticity). As pointed out by Greene, “simply computing a robust covariance matrix for an otherwise inconsistent estimator does not give it redemption.”

Solution
If the regression errors $$\varepsilon_i$$ are independent, but have distinct variances $$\sigma^2_i$$, then $$\mathbf{\Sigma} = \operatorname{diag}(\sigma_1^2, \ldots, \sigma_n^2)$$ which can be estimated with $$\widehat\sigma_i^2 = \widehat \varepsilon_i^2$$. This provides White's (1980) estimator, often referred to as HCE (heteroskedasticity-consistent estimator):



\begin{align} \hat{\mathbb{V}}_\text{HCE} \big[ \widehat \boldsymbol{\beta}_\text{OLS} \big] &= \frac{1}{n} \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \bigg)^{-1} \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^\top \widehat{\varepsilon}_i^2 \bigg) \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \bigg)^{-1} \\ &= ( \mathbf{X}^{\top} \mathbf{X} )^{-1} ( \mathbf{X}^{\top} \operatorname{diag}(\widehat \varepsilon_1^2, \ldots, \widehat \varepsilon_n^2) \mathbf{X} ) ( \mathbf{X}^{\top} \mathbf{X})^{-1}, \end{align} $$

where as above $$\mathbf{X}$$ denotes the matrix of stacked $$\mathbf{x}_i^{\top}$$ values from the data. The estimator can be derived in terms of the generalized method of moments (GMM).

Also often discussed in the literature (including White's paper) is the covariance matrix $$\widehat\mathbf{\Omega}_n$$ of the $$\sqrt{n}$$-consistent limiting distribution:



\sqrt{n}(\widehat \boldsymbol{\beta}_n - \boldsymbol{\beta}) \, \xrightarrow{d} \, \mathcal{N}(\mathbf{0}, \mathbf{\Omega}), $$

where



\mathbf{\Omega} = \mathbb{E}[\mathbf{X} \mathbf{X}^{\top}]^{-1} \mathbb{V}[\mathbf{X} \boldsymbol{\varepsilon}]\operatorname \mathbb{E}[\mathbf{X} \mathbf{X}^{\top}]^{-1}, $$

and



\begin{align} \widehat\mathbf{\Omega}_n &= \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \bigg)^{-1} \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \widehat \varepsilon_i^2 \bigg) \bigg(\frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \bigg)^{-1} \\ &= n ( \mathbf{X}^{\top} \mathbf{X} )^{-1} ( \mathbf{X}^{\top} \operatorname{diag}(\widehat \varepsilon_1^2, \ldots, \widehat \varepsilon_n^2) \mathbf{X} ) ( \mathbf{X}^{\top} \mathbf{X})^{-1} \end{align} $$

Thus,



\widehat \mathbf{\Omega}_n = n \cdot \hat{\mathbb{V}}_\text{HCE}[\widehat \boldsymbol{\beta}_\text{OLS}] $$

and



\widehat \mathbb{V}[\mathbf{X} \boldsymbol{\varepsilon}] = \frac{1}{n} \sum_i \mathbf{x}_i \mathbf{x}_i^{\top} \widehat \varepsilon_i^2 = \frac{1}{n} \mathbf{X}^{\top} \operatorname{diag}(\widehat \varepsilon_1^2, \ldots, \widehat \varepsilon_n^2) \mathbf{X}. $$

Precisely which covariance matrix is of concern is a matter of context.

Alternative estimators have been proposed in MacKinnon & White (1985) that correct for unequal variances of regression residuals due to different leverage. Unlike the asymptotic White's estimator, their estimators are unbiased when the data are homoscedastic.

Of the four widely available different options, often denoted as HC0-HC3, the HC3 specification appears to work best, with tests relying on the HC3 estimator featuring better power and closer proximity to the targeted size, especially in small samples. The larger the sample, the smaller the difference between the different estimators.

An alternative to explicitly modelling the heteroskedasticity is using a resampling method such as the wild bootstrap. Given that the studentized bootstrap, which standardizes the resampled statistic by its standard error, yields an asymptotic refinement, heteroskedasticity-robust standard errors remain nevertheless useful.

Instead of accounting for the heteroskedastic errors, most linear models can be transformed to feature homoskedastic error terms (unless the error term is heteroskedastic by construction, e.g. in a linear probability model). One way to do this is using weighted least squares, which also features improved efficiency properties.

Software

 * EViews: EViews version 8 offers three different methods for robust least squares: M-estimation (Huber, 1973), S-estimation (Rousseeuw and Yohai, 1984), and MM-estimation (Yohai 1987).
 * Julia: the  package offers several methods for heteroskedastic robust variance covariance matrices.
 * MATLAB: See the  function in the Econometrics toolbox.
 * Python: The Statsmodel package offers various robust standard error estimates, see statsmodels.regression.linear_model.RegressionResults for further descriptions
 * R: the  command from the sandwich package.
 * RATS: robusterrors option is available in many of the regression and optimization commands (linreg, nlls, etc.).
 * Stata:  option applicable in many pseudo-likelihood based procedures.
 * Gretl: the option  to several estimation commands (such as  ) in the context of a cross-sectional dataset produces robust standard errors.