Vad är Hat matrix och hävstång vid klassisk multipel regression? Vilka är deras roller? Och varför använder jag dem?
Förklara dem eller ge tillfredsställande referenser till bok / artikel för att förstå dem.
Kommentarer
- Det finns många inlägg på denna webbplats som nämner hävstång. Du kan börja med att bläddra bland några av dem: stats.stackexchange.com/search?q=leverage+
Svar
Hatmatrisen, $ \ bf H $ , är projektionsmatrisen som uttrycker värdena för observationerna i den oberoende variabeln $ \ bf y $ , i termer av de linjära kombinationerna av kolumnvektorerna i modellmatrisen, $ \ bf X $ , som innehåller observationerna för var och en av de flera variablerna du återgår till.
Naturligtvis $ \ bf y $ ligger vanligtvis inte i kolumnutrymmet för $ \ bf X $ och det kommer att finnas en skillnad mellan denna projektion, $ \ bf \ hat Y $ , och de faktiska värdena för $ \ bf Y $ . Denna skillnad är den återstående eller $ \ bf \ varepsilon = YX \ beta $ :
De beräknade koefficienterna, $ \ bf \ hat \ beta_i $ förstås geometriskt som den linjära kombinationen av kolumnvektorerna (observationer på variabler $ \ bf x_i $ ) som är nödvändiga för att producera den projicerade vektorn $ \ bf \ hat Y $ . Vi har den $ \ bf H \, Y = \ hat Y $ ; därav mnemonic, " H sätter hatten på y. "
Hatmatrisen beräknas som : $ \ bf H = X (X ^ TX) ^ {- 1} X ^ T $ .
Och den uppskattade $ \ bf \ hat \ beta_i $ koefficienter beräknas naturligtvis som $ \ bf (X ^ TX) ^ {- 1} X ^ T $ .
Varje punkt i datamängden försöker dra OLS-linjen mot sig själv. Emellertid kommer poängen längre bort vid regressorns yttersta värden att ha mer hävstång. Här är ett exempel på en extremt asymptotisk punkt (i rött) som verkligen drar regressionslinjen bort från vad som skulle vara mer logiskt:
Så var är kopplingen mellan dessa två begrepp: hävstångspoängen för en viss rad eller observation i datasetet hittar du i motsvarande post i diagonalen i hattmatrisen. Så för observation $ i $ kommer hävstångsresultatet att finnas i $ \ bf H_ {ii} $ . Den här posten i hattmatrisen kommer att ha ett direkt inflytande över hur posten $ y_i $ kommer att resultera i $ \ hat y_i $ (hög hävstångseffekt för $ i \ text {-th} $ observation $ y_i $ vid bestämning av eget prediktionsvärde $ \ hat y_i $ ):
Eftersom hattmatrisen är en projektionsmatris är dess egenvärden $ 0 $ och $ 1 $ . Därefter följer att spåret (summan av diagonala element – i detta fall summan av $ 1 $ ”s) kommer att vara kolumnutrymmets rang, medan det kommer att finnas lika många nollor som dimensionen på nollutrymmet. Därför kommer värdena i diagonalen för hatmatrisen att vara mindre än en (spår = summan egenvärden) och en post kommer att anses ha hög hävstång om $ > 2 \ sum_ {i = 1} ^ {n} h_ {ii} / n $ med $ n $ som antal rader.
Hävstångseffekten för en avvikande datapunkt i modellmatrisen kan också beräknas manuellt som en minus förhållandet mellan återstoden för avvikaren när den faktiska avvikaren ingår i OLS-modellen över rest för samma punkt när den anpassade kurvan beräknas utan att inkludera raden som motsvarar avvikaren: $$ Hävstång = 1- \ frac {\ text {kvarvarande OLS med outlier}} {\ text {kvarvarande OLS utan avvikare}} $$ I R returnerar funktionen hatvalues()
dessa värden för varje punkt.
Med den första datapunkten i datamängden {mtcars}
i 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