Dowód formuły LOOCV


18

Z An Introduction to Statistical Learning przez James i wsp., Przerwa, jeden z krzyżowego (LOOCV) oszacowanie jest określone przez

CV(n)=1n∑i=1nMSEi
gdzieMSEi=(yi−y^i)2.

Bez dowodu równanie (5.2) stwierdza, że ​​dla regresji metodą najmniejszych kwadratów lub wielomianu (to, czy dotyczy to regresji tylko jednej zmiennej, jest dla mnie nieznane),

CV(n)=1n∑i=1n(yi−y^i1−hi)2
, gdzie "yItojath wyposażona wartość od oryginału najmniejszych kwadratów pasuje (nie wiem co to znaczy, tak przy okazji, to znaczy z użyciemwszystkich? Z punktów w zbiorze danych) orazhijest dźwignią ”, która jest zdefiniowana przezhi=1y^iihi
hi=1n+(xi−x¯)2∑j=1n(xj−x¯)2.

Jak można to udowodnić?

Moja próba: można zacząć od zauważając, że Y i = β 0 + k Σ i = 1 β k X k + , ale poza tym (i jeśli przypomnieć, że wzór na godzinę i ma jedynie prawda w przypadku prostej regresji liniowej ...), nie jestem pewien, jak to zrobić.

y^i=β0+∑i=1kβkXk+some polynomial terms of degree ≥2
hi

Albo twoje równania wydają się używać do więcej niż jednej rzeczy lub jestem bardzo zdezorientowany. Tak czy inaczej dodatkowa jasność byłaby dobra. i
— Glen_b

@Glen_b Właśnie dowiedziałem się wczoraj o LOOCV, więc może nie rozumiem niektórych rzeczy poprawnie. Z tego, co rozumiem, masz zestaw punktów danych, powiedz . W przypadku LOOCV masz dla każdej stałej (dodatniej liczby całkowitej) k pewien zestaw walidacyjny V k = { ( x k , y k ) } i zestaw testowy T k = X ∖ VX={(xi,yi):i∈Z+}kVk={(xk,yk)} użyty do wygenerowania dopasowanego modelu dla każdegoTk=X∖Vk . Powiedzmy na przykład, że dopasowujemy nasz model za pomocą prostej regresji liniowej z trzema punktami danych, X = { ( 0 , 1 ) , ( 1 , 2 ) , ( 2 , 3 ) } . Bylibyśmy (kontynuacja)kX={(0,1),(1,2),(2,3)}
— klarnecista

@Glen_b i T 1 = { ( 1 , 2 ) , ( 2 , 3 ) } . Korzystanie z punktów w T 1 , możemy stwierdzić, że za pomocą prostego regresji liniowej, otrzymujemy model y i = X + 1 . Następnie obliczamy MSE przy użyciu V 1 jako zestawu sprawdzania poprawności i otrzymujemy y 1V1={(0,1)}T1={(1,2),(2,3)}T1y^i=X+1MSEV1y1=1(tylko za pomocą punktu danych) i Y , co daje MSE 1 = 0 . Okej, może użycie indeksu górnego nie było najlepszym pomysłem - zmienię to w oryginalnym poście. y^1(1)=0+1=1MSE1=0
— Klarnecista

oto kilka notatek z wykładów na stronach
— Xavier Bourret Sicotte

Odpowiedzi:


17

Pokażę wynik dla dowolnej wielokrotnej regresji liniowej, niezależnie od tego, czy regresory są wielomianami czy nie. W rzeczywistości pokazuje nieco więcej niż to, o co prosiłeś, ponieważ pokazuje, że każda reszta LOOCV jest identyczna z odpowiednią resztą ważoną dźwignią z pełnej regresji, nie tylko że możesz uzyskać błąd LOOCV jak w (5.2) (tam mogą być inne sposoby, w jakie średnie się zgadzają, nawet jeśli nie każdy termin w średniej jest taki sam).Xt

Pozwól mi skorzystać z lekko dostosowanej notacji.

My najpierw pokazać, że p w którym β jest oszacowanie przy użyciu wszystkich danych i p (t)estymaty wychodząc zX(t), obserwacjit. NiechXtbyć zdefiniowana jako szereg wektora, tak że Y T=Xt β . U Tsą reszty.

β^−β^(t)=(u^t1−ht)(X′X)−1Xt′,(A)
β^β^(t)X(t)tXty^t=Xtβ^u^t

Dowód wykorzystuje następujący wynik algebraiczny macierzy.

Niech będzie macierzą niesingularną, b wektorem, a λ skalarem. Gdyby Abλ Następnie (A+λbb′)-1

λ≠−1b′A−1b
(A+λbb′)−1=A−1−(λ1+λb′A−1b)A−1bb′A−1(B) 

{A−1−(λ1+λb′A−1b)A−1bb′A−1}(A+λbb′)=I.

The following result is helpful to prove (A)

(X(t)′X(t))−1Xt′=(11−ht)(X′X)−1Xt′. (C)

Proof of (C): By (B) we have, using ∑t=1TXt′Xt=X′X,

(X(t)′X(t))−1=(X′X−Xt′Xt)−1=(X′X)−1+(X′X)−1Xt′Xt(X′X)−11−Xt(X′X)−1Xt′.
So we find
(X(t)′X(t))−1Xt′=(X′X)−1Xt′+(X′X)−1Xt′(Xt(X′X)−1Xt′1−Xt(X′X)−1Xt′)=(11−ht)(X′X)−1Xt′.

The proof of (A) now follows from (C): As

X′Xβ^=X′y,
we have
(X(t)′X(t)+Xt′Xt)β^=X(t)′y(t)+Xt′yt,
or
{Ik+(X(t)′X(t))−1Xt′Xt}β^=β^(t)+(X(t)′X(t))−1Xt′(Xtβ^+u^t).
So,
β^=β^(t)+(X(t)′X(t))−1Xt′u^t=β^(t)+(X′X)−1Xt′u^t1−ht,
where the last equality follows from (C).

Now, note ht=Xt(X′X)−1Xt′. Multiply through in (A) by Xt, add yt on both sides and rearrange to get, with u^(t) the residuals resulting from using β^(t) (yt−Xtβ^(t)),

u^(t)=u^t+(u^t1−ht)ht
or
u^(t)=u^t(1−ht)+u^tht1−ht=u^t1−ht

The definition for X(t) is missing in your answer. I assume this is a matrix X with row Xt removed.
— mpiktas

Also mentioning the fact that X′X=∑t=1TXt′Xt would be helpful too.
— mpiktas

@mpiktas, yes, thanks for the pointers. I edited to take the first comment into account. Where exactly would the second help? Or just leave it in your comment?
— Christoph Hanck

3
When you start the proof of (C) you write (X(t)′X(t))−1=(X′X−Xt′Xt)−1. That is a nice trick, but I doubt that casual reader is aware of it.
— mpiktas

1
Two years later... I appreciate this answer even more, now that I've gone through a graduate-level linear models sequence. I'm re-learning this material with this new perspective. Do you have any suggested references (textbooks?) which go through derivations like what you have in this answer in detail?
— Clarinetist
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.