Założenia klasycznej metody najmniejszych kwadratów (KMNK)
Pełny wykład założeń KMNK: pięć założeń klasycznego modelu liniowego, dowód że nieobciążoność wymaga tylko liniowości i egzogeniczności, twierdzenie Gaussa-Markowa (BLUE) z warunkiem braku sferyczności, inflacja wariancji przy współliniowości (VIF) z wyprowadzeniem, mapa naruszeń, diagnoza i leczenie — z wykresami reszt w skali szarości (2D i 3D), przykładami liczbowymi, kodem R i Python, wkładem polskiej szkoły i bibliografią z DOI.
Metoda najmniejszych kwadratów zawsze wyznaczy jakąś prostą, lecz to, czy można jej ufać — czy oszacowania są nieobciążone, a testy ważne — zależy od pięciu założeń klasycznego modelu liniowego. Wyłożymy je formalnie, udowodnimy, które własności estymatora zależą od których założeń, i pokażemy, jak naruszenia ujawniają się na wykresie reszt.
Pięć założeń klasycznego modelu
Dla modelu $\mathbf{y}=\mathbf{X}\boldsymbol\beta+\boldsymbol\varepsilon$:
- A1. Liniowość względem parametrów: $\mathbf{y}=\mathbf{X}\boldsymbol\beta+\boldsymbol\varepsilon$.
- A2. Pełny rząd: $\operatorname{rank}(\mathbf{X})=k$ — brak współliniowości doskonałej, $\mathbf{X}^\top\mathbf{X}$ odwracalna.
- A3. Egzogeniczność: $\mathbb{E}[\boldsymbol\varepsilon\mid\mathbf{X}]=\mathbf{0}$.
- A4. Sferyczność: $\mathrm{Var}(\boldsymbol\varepsilon\mid\mathbf{X})=\sigma^2\mathbf{I}$ — homoskedastyczność i brak autokorelacji.
- A5. Normalność (opcjonalna, do wnioskowania w małej próbie): $\boldsymbol\varepsilon\mid\mathbf{X}\sim\mathcal{N}(\mathbf{0},\sigma^2\mathbf{I})$.
Większość naruszeń ujawnia się na wykresie reszt względem wartości dopasowanych — najważniejszym przyrządzie diagnostycznym.
Co zależy od którego założenia
Kluczowe jest rozróżnienie, które własności estymatora wymagają których założeń. Nieobciążoność jest „tania" — wymaga tylko A1–A3; efektywność (BLUE) dokłada A4; dokładne wnioskowanie w małej próbie dokłada A5.
- Wzór estymatora. Z A2 macierz $\mathbf{X}^\top\mathbf{X}$ jest odwracalna, więc $\hat{\boldsymbol\beta}=(\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top\mathbf{y}$.
- Podstawienie modelu (A1). $\hat{\boldsymbol\beta}=(\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top(\mathbf{X}\boldsymbol\beta+\boldsymbol\varepsilon)=\boldsymbol\beta+(\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top\boldsymbol\varepsilon$.
- Wartość oczekiwana (A3). $\mathbb{E}[\hat{\boldsymbol\beta}\mid\mathbf{X}]=\boldsymbol\beta+(\mathbf{X}^\top\mathbf{X})^{-1}\mathbf{X}^\top\mathbb{E}[\boldsymbol\varepsilon\mid\mathbf{X}]=\boldsymbol\beta$, bo $\mathbb{E}[\boldsymbol\varepsilon\mid\mathbf{X}]=\mathbf{0}$.
- Wniosek. W dowodzie użyto wyłącznie A1, A2 i A3. Stąd heteroskedastyczność czy autokorelacja (naruszenia A4) **nie** obciążają MNK — psują jedynie efektywność i błędy standardowe. Obciążenie powoduje natomiast złamanie A3 (egzogeniczności).
Normalność (A5) nie jest potrzebna ani do nieobciążoności, ani do optymalności — służy wyłącznie do dokładnych rozkładów statystyk $t$ i $F$ w małej próbie. W wielkiej próbie zastępuje ją centralne twierdzenie graniczne.
Mapa naruszeń
| Złamane założenie | Skutek | Diagnoza | Lekarstwo |
|---|---|---|---|
| A1 liniowość | obciążenie | krzywizna reszt | człony kwadratowe, logarytmy |
| A2 pełny rząd | brak/niestabilność oszacowań | VIF | usunięcie/połączenie zmiennych, regularyzacja |
| A3 egzogeniczność | obciążenie i niezgodność | argument merytoryczny | zmienne instrumentalne, panel |
| A4 homoskedastyczność | błędne SE | Breusch-Pagan | odporne SE, WLS |
| A4 brak autokorelacji | błędne SE | Breusch-Godfrey | błędy HAC |
| A5 normalność | testy w małej próbie | Q-Q, Shapiro | większa próba (CTG), bootstrap |
Hierarchia ważności.
Założenia nie są równorzędne. Egzogeniczność (A3) ma rangę nadrzędną — jej złamanie obciąża oszacowania i niszczy wnioski przyczynowe, czego nie naprawi większa próba. Heteroskedastyczność i autokorelacja (A4) są łagodniejsze: psują jedynie błędy standardowe, co koryguje się odpornymi SE. Dlatego we współczesnej ekonometrii niemal zawsze raportuje się odporne błędy standardowe, a najwięcej uwagi poświęca egzogeniczności.
Współliniowość i inflacja wariancji
Złamanie A2 w postaci doskonałej współliniowości czyni $\mathbf{X}^\top\mathbf{X}$ nieodwracalną — MNK nie ma rozwiązania. Groźniejsza w praktyce jest współliniowość prawie doskonała: estymator istnieje, lecz jego wariancja gwałtownie rośnie.
Wariancję $j$-tego współczynnika można zapisać jako
$$ \mathrm{Var}(\hat\beta_j)=\frac{\sigma^2}{(1-R_j^2)\sum_i(x_{ij}-\bar x_j)^2}, $$gdzie $R_j^2$ to współczynnik determinacji z regresji $x_j$ na pozostałe regresory. Czynnik $\mathrm{VIF}_j=\dfrac{1}{1-R_j^2}$ mnoży wariancję; $\mathrm{VIF}>10$ ($R_j^2>0{,}9$) sygnalizuje poważną współliniowość.
- Twierdzenie FWL. Z [twierdzenia Frischa-Waugha-Lovella](/ekonometria/mnk-wyprowadzenie/) współczynnik $\hat\beta_j$ równa się współczynnikowi regresji $y$ na **reszty** $\tilde{\mathbf{x}}_j$ z regresji $x_j$ na pozostałe regresory.
- Wariancja przez reszty. Dla regresji jednowymiarowej na $\tilde{\mathbf{x}}_j$: $\mathrm{Var}(\hat\beta_j)=\dfrac{\sigma^2}{\sum_i\tilde x_{ij}^2}$, gdzie $\sum_i\tilde x_{ij}^2$ to resztowa suma kwadratów regresji pomocniczej $x_j$ na pozostałe.
- Rozkład sumy kwadratów. Z definicji $R_j^2$ tej regresji pomocniczej: $\sum_i\tilde x_{ij}^2=(1-R_j^2)\sum_i(x_{ij}-\bar x_j)^2$ (część resztowa to $1-R_j^2$ całkowitej).
- Wniosek. Podstawiając, $\mathrm{Var}(\hat\beta_j)=\dfrac{\sigma^2}{(1-R_j^2)\sum_i(x_{ij}-\bar x_j)^2}$. Gdy $R_j^2\to1$ (silna współliniowość), mianownik dąży do zera, a wariancja eksploduje — stąd czynnik $\mathrm{VIF}_j=1/(1-R_j^2)$.
Czynnik $\mathrm{VIF}=1/(1-r^2)$ dla korelacji $r$ między dwoma regresorami:
| $r$ | $0{,}5$ | $0{,}9$ | $0{,}95$ | $0{,}99$ |
|---|---|---|---|---|
| $\mathrm{VIF}$ | $1{,}33$ | $5{,}26$ | $10{,}26$ | $50{,}25$ |
| błąd standardowy $\times$ | $1{,}15$ | $2{,}29$ | $3{,}20$ | $7{,}09$ |
Przy $r=0{,}99$ błąd standardowy współczynnika jest ponad siedmiokrotnie większy niż przy regresorach nieskorelowanych — współczynniki stają się niestabilne, mimo że MNK pozostaje nieobciążone.
Wkład polskiej szkoły
Kanonicznym polskim wykładem klasycznego modelu i jego założeń jest Ekonometria. Metody i ich zastosowanie Aleksandra Welfego (Uniwersytet Łódzki), gdzie polska terminologia — KMNK (Klasyczna Metoda Najmniejszych Kwadratów), twierdzenie Gaussa-Markowa, diagnostyka reszt — jest precyzyjnie ugruntowana. Łódzka szkoła ekonometryczna (Władysław Welfe, Aleksander Welfe) rozwinęła także empiryczne modele makroekonomiczne polskiej gospodarki, w których staranna weryfikacja założeń KMNK jest standardem warsztatu.
Podsumowanie
- A1 liniowość w parametrach — krzywizna reszt = naruszenie.
- A2 pełny rząd — brak współliniowości doskonałej; prawie-doskonała puchnie wariancję ($\mathrm{VIF}$).
- A3 egzogeniczność $\mathbb{E}[\varepsilon\mid\mathbf{X}]=0$ — najważniejsze; złamanie obciąża MNK.
- A4 sferyczność — homoskedastyczność i brak autokorelacji; złamanie psuje SE, nie obciąża.
- A5 normalność — tylko do dokładnego wnioskowania w małej próbie.
- A1–A3 → nieobciążoność; A1–A4 → BLUE (Gauss-Markow); +A5 → dokładne testy $t$, $F$.
Bibliografia
- Welfe, A. Ekonometria. Metody i ich zastosowanie. Polskie Wydawnictwo Ekonomiczne.
- Greene, W. H. (2018). Econometric Analysis (8th ed.). Pearson.
- Wooldridge, J. M. (2020). Introductory Econometrics: A Modern Approach (7th ed.). Cengage.
Dalej: Wyprowadzenie MNK · Heteroskedastyczność · Autokorelacja · Zmienne instrumentalne
- Podręcznik: A. Welfe, Ekonometria. Metody i ich zastosowanie, PWE (kanoniczny polski wykład KMNK)
- Podręcznik: W. H. Greene, Econometric Analysis, rozdz. 4 (klasyczny model liniowy)
- Podręcznik: J. M. Wooldridge, Introductory Econometrics: A Modern Approach, rozdz. 3–5
- Pakiety: R
lmtest,sandwich,car; Pythonstatsmodels
R:
model <- lm(y ~ x1 + x2, data = dane)
par(mfrow = c(2,2)); plot(model) # wykresy diagnostyczne
library(lmtest); bptest(model) # A3: heteroskedastycznosc
bgtest(model, order = 2) # A4: autokorelacja
library(car); vif(model) # A5: wspolliniowosc (VIF>10)
library(sandwich)
coeftest(model, vcov = vcovHC(model, type = "HC3")) # odporne SE
Python:
import statsmodels.api as sm
import statsmodels.stats.diagnostic as d
from statsmodels.stats.outliers_influence import variance_inflation_factor as vif
m = sm.OLS(y, sm.add_constant(X)).fit()
print(d.het_breuschpagan(m.resid, m.model.exog)[:2]) # BP
print(d.acorr_breusch_godfrey(m, nlags=2)[:2]) # BG
print([vif(m.model.exog, i) for i in range(X.shape[1]+1)])
print(sm.OLS(y, sm.add_constant(X)).fit(cov_type='HC3').bse)