Wykorzystanie dekompozycji wartości pojedynczej do obliczenia macierzy kowariancji wariancji z modelu regresji liniowej

9

Mam macierz projektową regresorów p, n obserwacji i próbuję obliczyć przykładową macierz wariancji-kowariancji parametrów. Próbuję bezpośrednio obliczyć to za pomocą svd.

Używam R, gdy biorę svd macierzy projektowej, otrzymuję trzy składniki: macierz która jest , macierz która jest (przypuszczalnie wartości własne), i macierz która jest . Przekątnąłem , dzięki czemu jest to macierz z zerami w pozagątnych.Un×pD1×3V3×3D3×3

Podobno formuła kowariancji jest następująca: , jednak macierz nie pasuje, ani nie jest nawet zbliżona do wbudowanej funkcji R . , . Czy ktoś ma jakieś porady / referencje? Przyznaję, że jestem trochę niewykwalifikowany w tej dziedzinie.VD2Vvcov

Będzie
źródło

Odpowiedzi:

15

Po pierwsze, przypomnijmy, że przy założeniach wielowymiarowej normalności modelu regresji liniowej mamy

β^N(β,σ2(XTX)1).

Teraz, jeśli , gdzie po prawej stronie jest SVD X, wówczas otrzymujemy, że . Stąd X=UDVTXTX=VDUTUDV=VD2VT

(XTX)1=VD2VT.

Nadal brakuje oszacowania wariancji, czyli

σ^2=1np(yTyβ^TXTy).

Choć nie zostały sprawdzone, mam nadzieję vcov Zwraca .σ^2VD2VT

Uwaga: Napisałeś , czyli , ale potrzebujemy odwrotności dla macierzy wariancji-kowariancji. Zauważ również, że w , aby wykonać to obliczenie, musisz zrobićVD2VTXTXR

vcov.matrix <- var.est * (v %*% d^(-2) %*% t(v))

zauważając, że do mnożenia macierzy używamy %*%zamiast po prostu *. var.estpowyżej jest oszacowanie wariancji hałasu.

(Przyjąłem również założenie, że ma pełną rangę, a . Jeśli tak nie jest, będziesz musiał wprowadzić drobne modyfikacje do powyższego.)Xnp

kardynał
źródło
@ Will, dobrze. Cieszę się, że to zadziałało. Wtedy możesz rozważyć przyjęcie odpowiedzi. Pozdrowienia.
kardynał
Próbowałem równania, ale to nie do końca działa. stats.stackexchange.com/questions/195379/…
HelloWorld,