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)=1ni=1nMSEi
gdzieMSEi=(yiy^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)=1ni=1n(yiy^i1hi)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+(xix¯)2j=1n(xjx¯)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
Klarnecista
źródło
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 = XVX={(xi,yi):iZ+}kVk={(xk,yk)} użyty do wygenerowania dopasowanego modelu dla każdegoTk=XVk . 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^t1ht)(XX)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

λ1bA1b
(A+λbb)1=A1(λ1+λbA1b)A1bbA1(B) 

{A1(λ1+λbA1b)A1bbA1}(A+λbb)=I.

The following result is helpful to prove (A)

(X(t)X(t))1Xt=(11ht)(XX)1Xt. (C)

Proof of (C): By (B) we have, using t=1TXtXt=XX,

(X(t)X(t))1=(XXXtXt)1=(XX)1+(XX)1XtXt(XX)11Xt(XX)1Xt.
So we find
(X(t)X(t))1Xt=(XX)1Xt+(XX)1Xt(Xt(XX)1Xt1Xt(XX)1Xt)=(11ht)(XX)1Xt.

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

XXβ^=Xy,
we have
(X(t)X(t)+XtXt)β^=X(t)y(t)+Xtyt,
or
{Ik+(X(t)X(t))1XtXt}β^=β^(t)+(X(t)X(t))1Xt(Xtβ^+u^t).
So,
β^=β^(t)+(X(t)X(t))1Xtu^t=β^(t)+(XX)1Xtu^t1ht,
where the last equality follows from (C).

Now, note ht=Xt(XX)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) (ytXtβ^(t)),

u^(t)=u^t+(u^t1ht)ht
or
u^(t)=u^t(1ht)+u^tht1ht=u^t1ht
Christoph Hanck
źródło
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 XX=t=1TXtXt 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=(XXXtXt)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