Ce este matricea Hat și pârghiile în regresia multiplă clasică? Care sunt rolurile lor? Și de ce le folosești?
Vă rugăm să le explicați sau să furnizați referințe satisfăcătoare de carte / articol pentru a le înțelege.
Comentarii
- Există o mulțime de postări pe acest site care menționează efectul de levier. Puteți începe prin a naviga pe unele dintre ele: stats.stackexchange.com/search?q=leverage+
Răspuns
Matricea pălăriei, $ \ bf H $ , este matricea de proiecție care exprimă valorile observațiile din variabila independentă, $ \ bf y $ , în ceea ce privește combinațiile liniare ale vectorilor de coloană ale matricei modelului, $ \ bf X $ , care conține observațiile pentru fiecare dintre variabilele multiple pe care regresezi.
Firește, $ \ bf y $ de obicei nu va sta în spațiul coloanelor $ \ bf X $ și va exista o diferență între această proiecție, $ \ bf \ hat Y $ și valorile reale ale $ \ bf Y $ . Această diferență este reziduală sau $ \ bf \ varepsilon = YX \ beta $ :
Coeficienții estimate, $ \ bf \ hat \ beta_i $ sunt înțelese geometric ca combinația liniară a vectorilor de coloană (observații asupra variabilelor $ \ bf x_i $ ) necesare pentru a produce vectorul proiectat $ \ bf \ hat Y $ . Avem $ \ bf H \, Y = \ hat Y $ ; prin urmare, mnemonic, " H pune pălăria pe y. "
Matricea pălăriei este calculată ca : $ \ bf H = X (X ^ TX) ^ {- 1} X ^ T $ .
Și $ \ bf \ hat \ beta_i $ coeficienții vor fi calculați în mod natural ca $ \ bf (X ^ TX) ^ {- 1} X ^ T $ .
Fiecare punct al setului de date încearcă să tragă linia obișnuită a celor mai mici pătrate (OLS) către sine. Cu toate acestea, punctele mai îndepărtate, la extremele valorilor regresorului, vor avea mai mult pârghie. Iată un exemplu de punct extrem de asimptotic (în roșu) care trage într-adevăr linia de regresie de ceea ce ar fi o potrivire mai logică:
Deci, unde este legătura dintre aceste două concepte: scorul de pârghie al unui anumit rând sau observația din setul de date se va găsi în intrarea corespunzătoare din diagonala matricei pălăriei. Deci, pentru observare $ i $ scorul de pârghie va fi găsit în $ \ bf H_ {ii} $ . Această intrare din matricea pălăriei va avea o influență directă asupra modului în care intrarea $ y_i $ va avea ca rezultat $ \ hat y_i $ (pârghie ridicată a $ i \ text {-th} $ observație $ y_i $ în determinarea propriei valori de predicție $ \ hat y_i $ ):
Deoarece matricea pălăriei este o matrice de proiecție, valorile sale proprii sunt $ 0 $ și $ 1 $ . Rezultă atunci că urmele (suma elementelor diagonale – în acest caz suma $ 1 $ „s) vor fi rangul spațiului coloanei, în timp ce va fi la fel de multe zerouri ca dimensiunea spațiului nul. Prin urmare, valorile din diagonala matricei pălăriei vor fi mai mici de una (urmele = sumele proprii), iar o intrare va fi considerată a avea un pârghie mare dacă $ > 2 \ sum_ {i = 1} ^ {n} h_ {ii} / n $ cu $ n $ numărul de rânduri.
Pârghia unui punct de date outlier din matricea modelului poate fi calculată manual ca un minus raportul rezidual pentru outlier atunci când outlierul real este inclus în modelul OLS peste rezidual pentru același punct când curba potrivită este calculată fără a include rândul corespunzător valorii anterioare: $$ Leverage = 1- \ frac {\ text {OLS rezidual cu outlier}} {\ text {OLS rezidual fără outlier}} $$ În R funcția hatvalues()
returnează aceste valori pentru fiecare punct.
Folosind primul punct de date din setul de date {mtcars}
din R:
fit = lm(mpg ~ wt, mtcars) # OLS including all points X = model.matrix(fit) # X model matrix hat_matrix = X%*%(solve(t(X)%*%X)%*%t(X)) # Hat matrix diag(hat_matrix)[1] # First diagonal point in Hat matrix fitwithout1 = lm(mpg ~ wt, mtcars[-1,]) # OLS excluding first data point. new = data.frame(wt=mtcars[1,"wt"]) # Predicting y hat in this OLS w/o first point. y_hat_without = predict(fitwithout1, newdata=new) # ... here it is. residuals(fit)[1] # The residual when OLS includes data point. lev = 1 - (residuals(fit)[1]/(mtcars[1,"mpg"] - y_hat_without)) # Leverage all.equal(diag(hat_matrix)[1],lev) #TRUE