Jaka jest różnica między ładowaniem początkowym a weryfikacją krzyżową?

21

Kiedyś stosowałem walidację krzyżową K-fold do solidnej oceny moich modeli uczenia maszynowego. Ale jestem świadomy istnienia metody ładowania również w tym celu. Nie widzę jednak głównej różnicy między nimi pod względem oceny wydajności.

Z tego, co widzę, ładowanie początkowe generuje również pewną liczbę losowych podzbiorów treningu + testowania (choć w inny sposób), więc o co chodzi, przewaga przy użyciu tej metody w porównaniu z CV? Jedyne, co mogłem wymyślić, że w przypadku bootstrapowania można sztucznie wytworzyć praktycznie dowolną liczbę takich podzbiorów, podczas gdy dla CV liczba instancji jest swego rodzaju ograniczeniem. Ale ten aspekt wydaje się bardzo uciążliwy.

Fredrik
źródło

Odpowiedzi:

18

Zarówno walidacja krzyżowa, jak i ładowanie początkowe są metodami ponownego próbkowania .

  • bootstrap ponownie zamienia próbki z zamiennikiem (i zwykle tworzy nowe zestawy danych „zastępczych” z taką samą liczbą przypadków jak oryginalny zestaw danych). Ze względu na rysunek z zamiennikiem zestaw danych ładowania początkowego może zawierać wiele wystąpień tych samych oryginalnych przypadków i może całkowicie pomijać inne oryginalne przypadki.
  • krzyżowe sprawdzanie poprawności bez zastępowania, a tym samym tworzenie zastępczych zestawów danych, które są mniejsze niż oryginał. Te zestawy danych są tworzone w sposób systematyczny, dzięki czemu po z góry określonej liczbie zestawów danych zastępczych każdy oryginalnych przypadków został pominięty dokładnie raz. Nazywa się to k-krotnym sprawdzaniem poprawności krzyżowej lub sprawdzaniem poprawności krzyżowej pozostawionym x- out za pomocą , np. Sprawdzanie poprawności krzyżowej jednoznacznym pomija 1 przypadek dla każdego zestawu zastępczego, tj. .knx=nkk=n

  • Jak sugeruje nazwa cross validation , jej głównym celem jest pomiar (uogólnienie) wydajności modelu. Natomiast ładowanie początkowe stosuje się przede wszystkim w celu ustanowienia funkcji rozkładu empirycznego dla szerokiego zakresu statystyk (powszechne, jak w zakresie od, powiedzmy, od zmiany średniej do odmiany modeli w modelach zespolonych).

  • Pomijany analog procedury bootstrag nazywa się jackknifing (i faktycznie jest starszy niż bootstrapping).

  • Analogia bootstrapu do szacowania krzyżowego błędu generalizacji nazywana jest szacunkiem poza bootstrapem (ponieważ przypadki testowe to te, które zostały pominięte w zestawie szkoleniowym próbkowania bootstrapu).

[cross validaton vs. out-of-bootstrap] Nie widzę jednak głównej różnicy między nimi pod względem oceny wydajności.

Ta intuicja jest prawidłowa: w praktyce często nie ma dużej różnicy między iterowaną weryfikacją krzyżową fold i gotowym do uruchomienia systemem. Przy podobnej całkowitej liczbie ocenianych modeli zastępczych stwierdzono, że całkowity błąd [pomiaru błędu prognozy modelu] jest podobny, chociaż Oob zazwyczaj ma więcej stronniczości i mniej wariancji niż odpowiednie oszacowania CV.k

Istnieje wiele prób zmniejszenia uprzedzeń OOB (.632-bootstrap, .632 + -bootstrap), ale to, czy faktycznie poprawią sytuację, zależy od sytuacji.

Literatura:


Jedyne, co mogłem wymyślić, że w przypadku bootstrapowania można sztucznie wytworzyć praktycznie dowolną liczbę takich podzbiorów, podczas gdy dla CV liczba instancji jest swego rodzaju ograniczeniem.

Tak, jest mniej możliwych kombinacji dla CV niż dla ładowania początkowego. Ale limit CV jest prawdopodobnie wyższy niż jesteś świadomy. Dla zestawu danych z przypadkami i krotną weryfikacją krzyżową masznk

  • CV bez zamiany (dla k <n, które są znacznie większe niż możliwości, które są zwykle oceniane) vs.(nk)k
  • kombinacje bootstrap / z wymianą (które są znacznie więcej niż, powiedzmy, 100 lub 1000 modeli zastępczych, które są zwykle oceniane)(2n1n)
cbeleites niezadowoleni z SX
źródło
3

Bootstrapping to dowolny test lub metryka, która polega na losowym próbkowaniu z zamiennikiem. Jest to metoda, która pomaga w wielu sytuacjach, takich jak walidacja wydajności modelu predykcyjnego, metody zespołu, oszacowanie odchylenia i wariancji parametru modelu itp. Działa poprzez wykonywanie próbkowania z zastępowaniem z oryginalnego zestawu danych, przy jednoczesnym założeniu, że punkty danych, które nie zostały wybrane, są zestawem danych testowych. Możemy powtórzyć tę procedurę kilka razy i obliczyć średni wynik jako oszacowanie wydajności naszego modelu. Ponadto, Bootstrapping jest powiązany z metodami szkolenia zestawu, ponieważ możemy zbudować model przy użyciu każdego zestawu danych bootstrap i „spakować” te modele do zestawu, używając większości głosów (do klasyfikacji) lub obliczając średnią (dla prognoz numerycznych) dla wszystkich te modele jako nasz końcowy wynik.

Krzyżowa weryfikacja to procedura sprawdzania poprawności działania modelu, która odbywa się poprzez podzielenie danych treningowych na k części. Zakładamy, że części k-1 są zestawem szkoleniowym, a drugą częścią jest nasz zestaw testowy. Możemy powtórzyć k razy inaczej, za każdym razem trzymając inną część danych. Na koniec bierzemy średnią z wyników k jako naszą ocenę wydajności. Weryfikacja krzyżowa może być obarczona błędem lub wariancją. Zwiększając liczbę podziałów, wariancja również wzrośnie, a odchylenie zmniejszy się. Z drugiej strony, jeśli zmniejszymy liczbę podziałów, odchylenie wzrośnie, a wariancja zmniejszy się.

Podsumowując, weryfikacja krzyżowa dzieli dostępny zestaw danych w celu utworzenia wielu zestawów danych, a metoda Bootstrapping używa oryginalnego zestawu danych do utworzenia wielu zestawów danych po ponownym próbkowaniu z zastąpieniem. Ładowanie początkowe nie jest tak silne, jak w przypadku sprawdzania poprawności krzyżowej, gdy jest używane do sprawdzania poprawności modelu. Bootstrapping polega bardziej na budowaniu modeli zespołów lub po prostu szacowaniu parametrów.

Christos Karatsalos
źródło
2

Walidacja krzyżowa to technika, która ma na celu sprawdzenie, jak dobrze twój model uogólnia dane, które nie zostały przeszkolone. Nie wpływa na wyniki algorytmu, po prostu je ocenia .

Bootstrapping to metoda Ensemble, która agreguje dane wyjściowe z kilku modeli, takich jak Drzewa decyzyjne, w celu uzyskania uśrednionego wyniku . Technicznie rzecz biorąc, zmniejsza wariancję algorytmu klasyfikacji opartego na jednym modelu, ponieważ uśrednia on wynik na podstawie wyników kilku wariantów tej samej struktury modelu (z różnymi parametrami). Dlatego zmienia działanie algorytmu klasyfikacji, nie ocenia go.

Innymi słowy : Walidacja krzyżowa ocenia stopień uogólnienia algorytmu, podczas gdy ładowanie początkowe faktycznie pomaga algorytmowi uogólnić się lepiej.

W rzeczywistości można użyć weryfikacji krzyżowej na modelu ładowanym, aby sprawdzić, jak dobrze się uogólnia.

pcko1
źródło
3
To nie jest ładowanie, prawda?
elemolotiv
0
  • Weryfikacja krzyżowa: podaj oszacowania błędu testu.
  • Bootstrap: zapewnia standardowy błąd szacunków.
Hangyu Tian
źródło