Jak różnią się różne metody walidacji krzyżowej pod względem wariancji modelu i stronniczości?
Moje pytanie jest częściowo motywowane tym wątkiem: optymalna liczba fałdów w krzyżowej walidacji - fold: czy pominięcie CV zawsze jest najlepszym wyborem? K. Odpowiedź sugeruje, że modele wyuczone z krzyżową walidacją typu „pomijaj jeden” mają wyższą wariancję niż modele wyuczone przy regularnej walidacji krzyżowej typu , co czyni CV pomijanym jednym złym wyborem.
Jednak moja intuicja podpowiada mi, że w CV z pominięciem jednego należy zauważyć względnie mniejszą wariancję między modelami niż w CV z foldem, ponieważ przesuwamy tylko jeden punkt danych między fałdami, a zatem zestawy treningowe między fałdami znacznie się pokrywają.
Lub idąc w innym kierunku, jeśli jest niskie w krotnie CV, zestawy treningowe byłyby całkiem różne w różnych fałdach, a powstałe modele są bardziej prawdopodobne, że będą różne (stąd większa wariancja).K
Jeśli powyższy argument jest słuszny, dlaczego modele wyuczone z pominiętym CV mają większą wariancję?
źródło
Odpowiedzi:
[TL: DR] Podsumowanie ostatnich postów i debat (lipiec 2018 r.)
Temat ten był szeroko dyskutowany zarówno na tej stronie, jak i w literaturze naukowej, z sprzecznymi poglądami, intuicjami i wnioskami. Powrót w 2013 roku, gdy kwestia ta została po raz pierwszy poprosił, dominujący pogląd, że LOOCV prowadzi do większej wariancji oczekiwanego błędu generalizacji algorytmu treningowego produkującej modele z próbek o rozmiarze .n(K−1)/K
Ten pogląd wydaje się jednak nieprawidłowym uogólnieniem specjalnego przypadku i argumentowałbym, że poprawna odpowiedź brzmi: „to zależy ...”
Parafrazując Yvesa Grandvaleta, autora artykułu z 2004 roku na ten temat, podsumowałbym intuicyjny argument w następujący sposób:
Symulacje eksperymentalne przeprowadzone przeze mnie i innych na tej stronie, a także przez badaczy w poniższych linkach pokażą, że nie ma uniwersalnej prawdy na ten temat. Większość eksperymentów monotonicznie malejąca lub stała wariancji z , ale pewne szczególne przypadki pokazują zwiększenie wariancji z .K K
Pozostała część tej odpowiedzi proponuje symulację na przykładzie zabawki i nieformalny przegląd literatury.
[Aktualizacja] Znajdziesz tutaj alternatywną symulację niestabilnego modelu w obecności wartości odstających.
Symulacje z przykładu zabawki pokazujące malejącą / stałą wariancję
Rozważ następujący przykład zabawki, w którym dopasowujemy wielomian stopnia 4 do hałaśliwej krzywej sinusoidalnej. Oczekujemy, że ten model źle sobie poradzi w przypadku małych zestawów danych z powodu przeszacowania, jak pokazuje krzywa uczenia się.
Zauważ, że wykreślamy tutaj 1 - MSE, aby odtworzyć ilustrację ze strony ESLII 243
Metodologia
Kod tej symulacji można znaleźć tutaj . Podejście było następujące:
Wpływ na ukos i wariancji MSE całej zbiorów danych.iK i
Lewa strona : Kfolds na 200 punktów danych, Prawa strona : Kfolds na 40 punktów danych
Odchylenie standardowe MSE (między zestawami danych i) a Kfolds
Z tej symulacji wynika, że:
Nieformalny przegląd literatury
Poniższe trzy artykuły badają stronniczość i wariancję krzyżowej walidacji
Kohavi 1995
Ten dokument jest często wymieniany jako źródło argumentu, że LOOC ma większą wariancję. W sekcji 1:
To stwierdzenie jest źródłem wielu nieporozumień, ponieważ wydaje się, że pochodzi z Efronu w 1983 r., A nie z Kohavi. Zarówno teoretyczne argumenty Kohaviego, jak i wyniki eksperymentalne są sprzeczne z tym stwierdzeniem:
Wniosek 2 (wariancja w CV)
Eksperyment W swoim eksperymencie Kohavi porównuje dwa algorytmy: drzewo decyzyjne C4.5 i klasyfikator Naive Bayesa w wielu zestawach danych z repozytorium UC Irvine. Jego wyniki są poniżej: LHS to dokładność vs fałdy (tj. Odchylenie), a RHS to odchylenie standardowe vs fałdy
W rzeczywistości tylko drzewo decyzyjne w trzech zestawach danych ma wyraźnie większą wariancję dla zwiększenia K. Inne wyniki pokazują wariancję malejącą lub stałą.
Wreszcie, chociaż wniosek można sformułować mocniej, nie ma argumentu, że LOO ma większą wariancję, wręcz przeciwnie. Z sekcji 6. Podsumowanie
Zhang i Yang
Autorzy mają zdecydowane zdanie na ten temat i wyraźnie stwierdzają w rozdziale 7.1
Wyniki eksperymentu Podobnie, eksperymenty Zhanga wskazują kierunek malejącej wariancji z K, jak pokazano poniżej dla modelu True i niewłaściwego modelu dla Ryciny 3 i Ryciny 5.
Jedynym eksperymentem, dla którego wariancja wzrasta z są modele Lasso i SCAD. Wyjaśnia to następująco na stronie 31:K
źródło
W -krotnie krzyżowego się partycje zestawu danych do równej wielkości nienakładające się podzbiory . Dla każdego złożenia model jest trenowany na , który jest następnie oceniany na . Estymator krzyżowej walidacji, na przykład błędu prognozowania, jest definiowany jako średnia błędów prognozowania uzyskanych przy każdej krotnie.k S S i S ∖ S i S ik k S Si S∖Si Si
Chociaż nie ma nakładania się zestawów testowych, na których oceniane są modele, zachodzi nakładanie się zestawów treningowych dla wszystkich . Nakładanie się jest największe w przypadku weryfikacji krzyżowej z pominięciem jednego z nich. Oznacza to, że wyuczone modele są skorelowane, tj. Zależne, a wariancja sumy skorelowanych zmiennych rośnie wraz z wielkością kowariancji ( patrz wikipedia ):k>2
Dlatego krzyżowa walidacja z pominięciem jednego z nich ma dużą wariancję w porównaniu do CV z mniejszym .k
Należy jednak zauważyć, że chociaż dwukrotna walidacja krzyżowa nie ma problemu z nakładaniem się zestawów treningowych, często ma również dużą wariancję, ponieważ zestawy treningowe są tylko o połowę mniejsze od oryginalnej próbki. Dobrym kompromisem jest dziesięciokrotna walidacja krzyżowa.
Kilka interesujących artykułów na ten temat (spośród wielu innych):
źródło
Myślę, że twoja intuicja jest rozsądna, jeśli myślisz o prognozach wykonanych przez modele na każdej zakładce. Opierają się one na skorelowanych / bardzo podobnych danych (pełny zestaw danych minus jeden punkt danych), a zatem dokonają podobnych prognoz - tj. Niskiej zmienności.
Źródłem zamieszania jest jednak to, że kiedy ludzie mówią o LOOCV prowadzącym do dużej zmienności, nie mówią o prognozach dokonanych przez wiele modeli zbudowanych podczas tej pętli walidacji krzyżowej w zestawach wstrzymań. Zamiast tego mówią o tym, ile zmienności miałby Twój ostatecznie wybrany model (ten wybrany przez LOOCV), gdybyś trenował dokładnie ten model / parametry na nowych zestawach treningowych - zestawach treningowych, których twój model nie widział wcześniej. W tym przypadku zmienność byłaby wysoka.
Dlaczego zmienność byłaby wysoka? Uprośćmy to trochę. Wyobraź sobie, że zamiast używać LOOCV do wybierania modelu, miałeś tylko jeden zestaw treningowy, a następnie przetestowałeś model zbudowany przy użyciu tych danych treningowych, powiedzmy 100 razy na 100 pojedynczych testowych punktach danych (punkty danych nie są częścią zestawu treningowego) . Jeśli wybierzesz model i zestaw parametrów, który najlepiej sprawdza się w tych 100 testach, wybierzesz taki, który pozwoli, aby ten konkretny zestaw treningowy był naprawdę dobry w przewidywaniu danych testowych. Możesz potencjalnie wybrać model, który przechwytuje 100% powiązań między tym konkretnym zestawem danych treningowych a danymi wstrzymania. Niestety, pewna część tych powiązań między zestawem danych szkoleniowych i testowych to szumy lub fałszywe skojarzenia, ponieważ chociaż zestaw testowy zmienia się i można zidentyfikować hałas po tej stronie, zestaw danych szkoleniowych nie zawiera i nie można ustalić, która wyjaśniona wariancja wynika z hałasu. Innymi słowy, oznacza to, że przerosły twoje przewidywania do tego konkretnego zestawu danych treningowych.
Co by się stało, gdybyś wielokrotnie trenował ten model z tymi samymi parametrami na nowych zestawach treningowych? Otóż model, który jest dopasowany do określonego zestawu danych treningowych, będzie prowadzić do zmienności jego przewidywania, gdy zmieni się zestaw treningowy (tj. Nieznacznie zmieni zestaw treningowy i model znacząco zmieni swoje przewidywania).
Ponieważ wszystkie fałdy w LOOCV są wysoce skorelowane, jest podobne do powyższego przypadku (ten sam zestaw treningowy; różne punkty testowe). Innymi słowy, jeśli ten konkretny zestaw treningowy ma jakąś fałszywą korelację z tymi punktami testowymi, Twój model będzie miał trudności z określeniem, które korelacje są prawdziwe, a które fałszywe, ponieważ nawet jeśli zestaw testowy się zmienia, zestaw treningowy nie.
Natomiast mniej skorelowane fałdy treningowe oznaczają, że model będzie pasował do wielu unikalnych zestawów danych. Zatem w tej sytuacji, jeśli przekwalifikujesz model na innym nowym zestawie danych, doprowadzi to do podobnej prognozy (tj. Małej zmienności).
źródło
Chociaż to pytanie jest dość stare, chciałbym dodać dodatkową odpowiedź, ponieważ uważam, że warto to nieco wyjaśnić.
Ta odpowiedź nie sugeruje tego i nie powinna. Przejrzyjmy podaną tam odpowiedź:
Mówi o wydajności . Tutaj wydajność należy rozumieć jako wydajność estymatora błędu modelu . To, co oceniasz za pomocą k-fold lub LOOCV, to wydajność modelu, zarówno przy użyciu tych technik do wyboru modelu, jak i do zapewnienia oszacowania błędu jako takiego. To NIE jest wariancja modelu, to wariancja estymatora błędu (modelu). Zobacz poniższy przykład (*) .
Rzeczywiście, istnieje mniejsza wariancja między modelami. Są one szkolone z zestawami danych, które mają wspólne obserwacje ! Gdy wzrasta, stają się praktycznie tym samym modelem (Zakładając brak stochastyczności).n−2 n
Właśnie ta niższa wariancja i wyższa korelacja między modelami sprawiają, że estymator, o którym mówię powyżej, ma większą wariancję, ponieważ estymator jest średnią tych skorelowanych wielkości, a wariancja średniej skorelowanych danych jest wyższa niż wariancja danych nieskorelowanych . Tutaj pokazano, dlaczego: wariancja średniej skorelowanych i nieskorelowanych danych .
W rzeczy samej.
Powyższy argument jest słuszny. Pytanie jest złe. Wariancja modelu to zupełnie inny temat. Istnieje wariancja, w której występuje zmienna losowa. W uczeniu maszynowym masz do czynienia z wieloma losowymi zmiennymi, w szczególności i bez ograniczenia: każda obserwacja jest zmienną losową; próbka jest zmienną losową; model, ponieważ jest wyuczony ze zmiennej losowej, jest zmienną losową; estymator błędu, który popełni Twój model w obliczu populacji, jest zmienną losową; i na koniec, błąd modelu jest zmienną losową, ponieważ w populacji prawdopodobnie wystąpi hałas (nazywa się to błędem nieredukowalnym). Losowość może być również większa, jeśli w procesie uczenia się modelu zaangażowana jest stochastyczność. Rozróżnienie między tymi wszystkimi zmiennymi ma ogromne znaczenie.
(*) Przykład : Załóżmy, że masz model z prawdziwego błędu , gdzie należy zrozumieć jako błąd, że model wytwarza na całej populacji. Ponieważ masz próbkę pobraną z tej populacji, używasz technik krzyżowej weryfikacji dla tej próbki, aby obliczyć oszacowanie , które możemy nazwać . Jak każdy estymator, jest zmienną losową, co oznacza, że ma swoją własną wariancję, , i swoją stronniczość, . jest dokładnie tym, co jest wyższe przy stosowaniu LOOCV. Podczas gdy LOOCV jest mniej tendencyjnym estymatorem niż zerr err E err~ err~ var(err~) E(err~−err) var(err~) k−fold k<n , ma większą wariancję. Aby lepiej zrozumieć, dlaczego pożądany jest kompromis między odchyleniem a wariancją , załóżmy, że i że masz dwa estymatory: i . Pierwszy produkuje ten wynikerr=10 err~1 err~2
Ten ostatni, choć ma więcej nastawienie powinno być korzystne, ponieważ ma dużo mniejszą wariancję i akceptowalny bias, czyli kompromisowego ( bias-wariancji kompromis ). Pamiętaj, że nie chcesz bardzo niskiej wariancji, jeśli pociąga to za sobą duże odchylenie!
Dodatkowa uwaga : w tej odpowiedzi staram się wyjaśnić (moim zdaniem) nieporozumienia, które otaczają ten temat, a w szczególności próbuję odpowiedzieć punkt po punkcie i dokładnie na wątpliwości, które pytający ma. W szczególności staram się wyjaśnić, o której wariancji mówimy, o co tu właściwie pytamy. Tj. Wyjaśniam odpowiedź, która jest powiązana z PO.
Biorąc to pod uwagę, chociaż przedstawiam teoretyczne uzasadnienie roszczenia, nie znaleźliśmy jeszcze jednoznacznych dowodów empirycznych na jego poparcie. Więc proszę bardzo uważaj.
Najlepiej najpierw przeczytaj ten post, a następnie zapoznaj się z odpowiedzią Xaviera Bourreta Sicotte, która zawiera wnikliwą dyskusję na temat aspektów empirycznych.
Last but not least, należy wziąć pod uwagę coś jeszcze: nawet jeśli wariancja przy zwiększaniu pozostaje płaska (jak nie empirycznie udowodniliśmy inaczej), z wystarczająco małe pozwala na powtórzenie ( powtarzane k-krotnie ), co zdecydowanie należy zrobić, np. . To skutecznie zmniejsza wariancję i nie jest opcją podczas wykonywania LOOCV.k k−fold k 10 × 10 - f o l d10 × 10−fold
źródło
Kwestie są rzeczywiście subtelne. Ale zdecydowanie nie jest prawdą, że LOOCV ma ogólnie większą wariancję. Niedawny artykuł omawia niektóre kluczowe aspekty i rozwiązuje kilka pozornie powszechnych nieporozumień dotyczących weryfikacji krzyżowej.
Yongli Zhang i Yuhong Yang (2015). Cross-validation do wyboru procedury wyboru modelu. Journal of Econometrics, vol. 187,95–112.
Bardziej szczegółowo:
źródło
Przed omówieniem błędu i wariancji pierwsze pytanie brzmi:
W naszym 2004 JMLR papieru , możemy argumentować, że bez jakiegokolwiek dalszego założeniu, -krotnie krzyżowej walidacji szacuje oczekiwany błąd uogólnieniem algorytmu treningowego produkcji modeli z próbek o rozmiarze . Tutaj oczekuje się w odniesieniu do próbek szkoleniowych. W tym widoku zmiana oznacza zmianę szacowanej ilości: porównanie uprzedzeń i wariancji dla różnych wartości powinno być następnie traktowane z ostrożnością.n ( K - 1 ) / K K KK n(K−1)/K K K
To powiedziawszy, zapewniamy wyniki eksperymentalne, które pokazują, że wariancja może monotonicznie maleć wraz z lub że może być minimalna dla wartości pośredniej. Zakładamy, że pierwszy scenariusz powinien zostać napotkany dla algorytmów stabilnych (dla bieżącego rozkładu danych), a drugi dla algorytmów niestabilnych.K
Ta intuicja byłaby poprawna, jeśli cross-walidacja została średnio niezależne szacunki, ale mogą być silnie skorelowane, a zależność ta może wzrosnąć z . Wzrost ten odpowiada za ogólny wzrost wariancji w drugim scenariuszu wspomnianym powyżej. Intuicyjnie w takiej sytuacji pominięte CV może być ślepe na istniejące niestabilności, ale nie może zostać uruchomione przez zmianę punktu synchronizacji w danych treningowych, co czyni go wysoce zmiennym w zależności od realizacji zestawu treningowego.K
źródło
Myślę, że odpowiedź jest prostsza. Jeśli zwiększysz k, zestawy testowe będą coraz mniejsze. Ponieważ fałdy są próbkowane losowo, może się to zdarzyć w przypadku małych zestawów testowych, ale nie w przypadku większych zestawów, że nie są one reprezentatywne dla losowego losowania. Jeden zestaw testowy może zawierać wszystkie trudne do przewidzenia rekordy, a drugi wszystkie łatwe. Dlatego wariancja jest wysoka, gdy przewidujesz bardzo małe zestawy testów na krotnie.
źródło