Jaka jest procedura „walidacji bootstrap” (inaczej „ponownej próbkowania cross-validation”)?

15

„Walidacja bootstrap” / „ponowna próbkowanie cross-validation” jest dla mnie nowa, ale została omówiona w odpowiedzi na to pytanie . Rozumiem, że dotyczy to 2 rodzajów danych: danych rzeczywistych i danych symulowanych, w których dany zestaw danych symulowanych jest generowany z danych rzeczywistych przez ponowne próbkowanie z wymianą, aż dane symulowane będą miały taki sam rozmiar jak dane rzeczywiste. Mogę wymyślić dwa podejścia do korzystania z takich typów danych: (1) raz dopasuj model, oceń go wiele razy na wielu symulowanych zestawach danych; (2) dopasuj model wiele razy, używając każdego z wielu symulowanych zestawów danych, za każdym razem oceniaj go względem rzeczywistych danych. Który (jeśli którykolwiek) jest najlepszy?

Mike Lawrence
źródło

Odpowiedzi:

20

Krótka odpowiedź: obie techniki walidacji obejmują szkolenie i testowanie szeregu modeli.

Długa odpowiedź na temat tego, jak to zrobić najlepiej: to oczywiście zależy. Ale oto kilka przemyśleń, które wykorzystuję przy podejmowaniu decyzji dotyczących walidacji ponownego próbkowania. Jestem chemometrem, więc te strategie, a także terminy są mniej więcej ściśle związane z problemami analityczno-chemicznymi.

Aby trochę wyjaśnić moje myśli, myślę o walidacji jako o pomiarze jakości modelu, a o szkoleniu jako o pomiarze parametrów modelu - prowadzi to do dość silnej analogii do każdego innego rodzaju pomiaru.

W odniesieniu do walidacji istnieją dwa różne punkty widzenia:

  1. tradycyjny punkt widzenia do sprawdzania poprawności ponownego próbkowania jest taki: zestaw danych ponownie próbkowany (czasami nazywany zastępczym zestawem danych lub podzbiorem) jest praktycznie taki sam jak oryginalny (rzeczywisty) zestaw danych.
    Dlatego „model zastępczy” dopasowany do zastępczego zestawu danych jest praktycznie taki sam, jak model dopasowany do całego rzeczywistego zestawu danych. Ale niektóre próbki są pominięte w zestawie danych zastępczych, model jest od nich niezależny. W związku z tym biorę te próbki, które zostały pominięte lub nie zostały załadowane, jako niezależny zestaw walidacyjny dla modelu zastępczego i wykorzystuję wynik jako przybliżenie całego modelu danych.
    Jednak model zastępczy często nie jest tak naprawdę równoważny z modelem z całymi danymi: do treningu użyto mniej próbek (nawet w przypadku bootstrapu liczba różnych próbek jest mniejsza). Dopóki krzywa uczenia się rośnie, model zastępczy jest średnio nieco gorszy niż model z całymi danymi. Jest to dobrze znany pesymistyczny błąd weryfikacji poprawności próbkowania (jeśli skończysz z optymistycznym nastawieniem, jest to zwykle wskaźnik, że zestaw testowy pominięty / nie był niezależny od modelu).

  2. Drugi punkt widzenia jest taki, że zestaw danych po ponownym próbkowaniu jest zaburzoną wersją całego zestawu danych. Zbadanie, w jaki sposób modele zastępcze (lub ich przewidywania dla próbek pominiętych / nieobjętych próbą) różnią się od modelu z całymi danymi, następnie mówi coś o stabilności modelu w odniesieniu do danych treningowych.
    Z tej perspektywy modele zastępcze są czymś w rodzaju powtarzanych pomiarów. Powiedz, że Twoim zadaniem jest pomiar zawartości niektórych minerałów w całym szeregu rudy. Ruda nie jest jednorodna. Więc pobierasz próbki fizyczne z różnych lokalizacji, a następnie patrzysz na ogólną zawartość i jej różnorodność w całym pociągu. Podobnie, jeśli uważasz, że Twój model może nie być stabilny, możesz spojrzeć na ogólną wydajność i różnorodność modeli zastępczych.

n
Zazwyczaj próbuję ponownie przypadki, np. Jeden przypadek = wszystkie pomiary jednego pacjenta. Następnie wszyscy pacjenci po wyjęciu z torby nie mają żadnych pomiarów w danych treningowych. Jest to przydatne, jeśli wiesz, że pomiary jednego przypadku są bardziej podobne do siebie niż pomiary innych przypadków (lub przynajmniej nie można wykluczyć tej możliwości).

Walidacja ponownego próbkowania nie pozwala jednak zmierzyć wydajności nieznanych próbek. Jeśli dodatkowo chcesz zmierzyć wydajność nieznanych przyszłych próbek (dryf instrumentalny!), Potrzebujesz zestawu testowego, który jest mierzony „w przyszłości”, tj. Pewien czas po zmierzeniu wszystkich próbek treningowych. W chemii analitycznej jest to potrzebne, np. Jeśli chcesz dowiedzieć się, jak często trzeba powtarzać kalibrację przyrządu (dla każdego oznaczenia, codziennie, co tydzień, co miesiąc, ...)

Terminologia bootstrap vs. cross-validation :

  • ponowne próbkowanie z wymianą jest często nazywane bootstrap,
  • ponowne próbkowanie bez zastępczej walidacji krzyżowej.

Oba mogą mieć pewnego rodzaju rozwarstwienie. Historycznie podział na walidację krzyżową (przynajmniej w chemometrii) był często wykonywany w sposób nieprzypadkowy, np. 3-krotna walidacja krzyżowa postaci abcabc..abc (zestaw danych posortowany względem wyniku) do kalibracji / regresję, jeśli masz bardzo niewiele przypadków (próbki fizyczne) i chcesz się upewnić, że cały zakres danych jest objęty.

Obie techniki są zwykle powtarzane / powtarzane kilka razy. Ponownie, z powodów historycznych i przynajmniej w chemometrii, k-krotna walidacja krzyżowa często oznacza trening i testowanie modeli k (każdy testowany z 1/1 danych, które nie były zaangażowane w szkolenie). Jeśli taki losowy podział się powtarza, ludzie nazywają to iteracją lub powtarzaną weryfikacją krzyżową.

kknnn

  • Zauważ, że bootstrap nie jest odpowiedni dla niektórych technik dopasowania modelu, które najpierw usuwają duplikaty pomiarów.
  • Istnieją niektóre warianty bootstrap, np. .632-bootstrap i .632 + -bootstrap

kk

cbeleites obsługuje Monikę
źródło
Długa odpowiedź jest miła.
Momo
(+1) świetna perspektywa. Jestem pewien, że termin surogat będzie się trzymał.
steffen
@steffen, dzięki. W żadnym wypadku nie jestem wynalazcą tego terminu. Myślę, że pierwszy raz spotkałem się w artykule U. Bragi-Neto (być może w tym: ncbi.nlm.nih.gov/pubmed/14960464 ), ale od razu przekonałem się o tym terminie ...
cbeleites popiera Monikę
Odnośnie uwagi w pytaniu dotyczącym danych symulowanych. Bootstrap sam w sobie nie obejmuje danych symulowanych. Symulowane dane zostaną wykorzystane jako sposób oceny, czy metoda ładowania początkowego działa na danym problemie. Ale sam bootstrap to tylko ponowne wykorzystanie danych na podstawie próbki bootstrap. Próbki wybrane losowo z zastąpieniem z oryginalnego zestawu danych. Zwykle wymaga to pobrania n próbek, gdzie n jest rozmiarem oryginalnej próbki. Monte Carlo wchodzi jako sposób na przybliżenie dystrybucji bootstrap poprzez faktyczne generowanie próbek bootstrap na komputerze.
Michael R. Chernick
3

Nie wiem o „najlepszym” (co prawdopodobnie zależy od tego, do czego go używasz), ale używam sprawdzania poprawności bootstrap, aby oszacować błąd na nowych danych w następujący sposób (trzeci sposób, jeśli chcesz):

  1. Narysuj zestaw treningowy N obserwacji z oryginalnych danych (o rozmiarze N) z zamiennikiem.
  2. Dopasuj model do danych treningowych.
  3. Oceń model na próbkach wyjętych z torby

To, co wychodzi z torby, nie zawsze jest jasno określone. Często są to wszystkie obserwacje, które nie były częścią zestawu treningowego. Bardziej rygorystyczne byłoby (używam tego w ten sposób), aby obserwacje tylko w próbce jaja miały realizację całego wektora predykcyjnego, który nie jest częścią zestawu treningowego (co jest szczególnie przydatne, jeśli masz wiele czynników). Jeszcze surowsze jest użycie próbki jaja, która zawiera tylko te obserwacje, które mają inną realizację zmiennej predykcyjnej w predyktorach wybranych w modelu (szczególnie przydatne, jeśli model zostanie znaleziony z pewną procedurą selekcji zmiennych, np. Drzewa).

Następnie zwykle powtarzam to kilka razy i łączę wyniki z k-fałdami (średnia lub mediana lub dowolna przydatna statystyka). Wybrany w ten sposób model można następnie dopasować do ogólnego zestawu danych (jak w opcji 2), aby dodatkowo ocenić, czy nadal występuje tendencja do przerzucania się (miara wydajności nie powinna być zbyt daleko od próbek bootstrap).

Jeśli mam więcej modeli lub siatkę parametrów lub podobną, dopasowuję je wszystkie do każdego zestawu treningowego i oceniam je wszystkie na każdej próbce OOB. Możliwe jest również, aby nie używać zestawu treningowego dwa razy, ale dla każdego modelu lub kombinacji parametrów strojenia, aby narysować nową parę treningu / treningu.

Patrz np . Projektowanie i analiza eksperymentów porównawczych .

Momo
źródło