Statistics Quest

Multicollinearity and the variance inflation factor

When predictors are strongly correlated with each other their coefficients become unstable, and the VIF measures how much each coefficient's variance is inflated.

VIFj=11−Rj2\text{VIF}_j = \frac{1}{1 - R_j^2}
Variance inflation factor
Rj2R_j^2
R² from regressing predictor j on all other predictors (with an intercept)
VIFj\text{VIF}_j
factor by which Var(bⱼ) is larger than with uncorrelated predictors

When to use

In multiple regression, when coefficients have surprising signs, large standard errors, or change a lot as predictors are added or removed.

How to interpret

  • VIF = 1: predictor j is uncorrelated with the others. VIF\sqrt{\text{VIF}} is the factor by which its SE is inflated.
  • Common rules of thumb: VIF above 5 (or 10) signals serious collinearity.
  • Collinearity hurts the individual coefficients, not the predictions or the overall fit within the data range.
  • The engine reports one VIF per model column (each dummy separately) and only for models with an intercept.

Common mistakes

  • Dropping a predictor that matters for the question just to lower a VIF; this can introduce confounding bias.
  • Interpreting a non-significant coefficient as "no effect" when it is collinear with another predictor.
  • Worrying about high VIFs for polynomial or interaction terms built from the same variable (centring helps).

Example

In the eight-flat model of price on size and age, size and age correlate at r = −0.92, so Rj2=0.849R_j^2 = 0.849 for each and VIF = 1/(1 − 0.849) = 6.6. Their standard errors are about 6.6=2.6\sqrt{6.6} = 2.6 times what they would be with uncorrelated predictors.