Tutaj @gung odnosi się do reguły .632+. Szybkie wyszukiwanie w Google nie daje łatwej do zrozumienia odpowiedzi na pytanie, co oznacza ta reguła i do jakiego celu jest używana. Czy ktoś mógłby wyjaśnić zasadę .632+?
Tutaj @gung odnosi się do reguły .632+. Szybkie wyszukiwanie w Google nie daje łatwej do zrozumienia odpowiedzi na pytanie, co oznacza ta reguła i do jakiego celu jest używana. Czy ktoś mógłby wyjaśnić zasadę .632+?
Odpowiedzi:
Przejdę do estymatora 0.632, ale będzie to nieco długi rozwój:
Załóżmy, że chcemy przewidzieć z za pomocą funkcji , gdzie może zależeć od niektórych parametrów, które są szacowane przy użyciu danych , np.X f f ( Y , X )
Naiwnym oszacowaniem błędu prognozowania jest gdzie jest pewną funkcją straty, np. Kwadratową utratą błędu. Jest to często nazywane błędem treningowym. Efron i in. nazywa to pozornym poziomem błędu lub wskaźnikiem ponownego podstawienia. Nie jest to zbyt dobre, ponieważ wykorzystujemy nasze dane do dopasowania . Powoduje to, że jest tendencyjny w dół. Chcesz wiedzieć, jak dobrze twój model radzi sobie z przewidywaniem nowych wartości.
Często używamy walidacji krzyżowej jako prostego sposobu oszacowania oczekiwanego błędu prognozowania poza próbą (jak dobrze nasz model radzi sobie z danymi, których nie ma w naszym zestawie szkoleniowym?).
Popularnym sposobem na to jest przeprowadzanie krzyżowej weryfikacji -fold. Podziel swoje dane na grup (np. 10). Dla każdej grupy dopasuj swój model do pozostałych grup i przetestuj go na tej grupie. Nasz zweryfikowany krzyżowo błąd prognozy dla dodatkowych próbek to tylko średnia gdzie jest jakąś funkcją indeksu, która wskazuje partycję, do której przydzielona jest obserwacja a to przewidywana wartość przy użyciu danych spoza zestawu .
Estymator około obiektywne dla prawdziwego błąd przewidywania, gdy i ma większą zmienność i jest bardziej kosztowne obliczeniowo na większej . Zatem po raz kolejny widzimy kompromis między odchyleniem a wariancją.
Zamiast weryfikacji krzyżowej moglibyśmy użyć ładowania początkowego, aby oszacować błąd przewidywania dodatkowej próby. Ponowne próbkowanie Bootstrap można wykorzystać do oszacowania rozkładu próbkowania dowolnej statystyki. Jeśli nasze dane treningowe to , możemy pomyśleć o pobraniu próbek bootstrap (z wymianą) z tego zestawu gdzie każdy jest zbiorem próbek. Teraz możemy użyć naszych próbek ładowania początkowego, aby oszacować błąd przewidywania dodatkowej próby: gdzie to przewidywana wartość w z modelu dopasowanego do
Jeśli jednak mamy wysoce przewidywaną funkcję przewidywania (tj. Overline ), to nawet estymator .632 będzie tendencyjny w dół. Estymator .632+ został zaprojektowany tak, aby był mniej tendencyjnym kompromisem między i . with gdzie to poziom błędu braku informacji, oszacowany na podstawie oceny modelu prognozowania dla wszystkich możliwych kombinacji kieruje na i predyktory .
Tutaj mierzy względną częstość przeładowania. Jeśli nie ma przeregulowania (R = 0, gdy ) jest to równe estymatorze .632.
Więcej informacji znajdziesz w części 3 tego 1 artykułu. Podsumowując, jeśli nazywasz próbą liczb z losowanych i zastępowanych, zawiera średnio około unikalne elementy.
Rozumowanie jest następujące. Wypełniamy próbkując razy (losowo i zamiennie) z . Rozważ konkretny indeks .
Następnie:
i
i to prawda (intuicyjnie, ponieważ próbujemy z zamianą, prawdopodobieństwo nie zależy od )
a zatem
Możesz również przeprowadzić tę małą symulację, aby sprawdzić empirycznie jakość aproksymacji (która zależy od ):
n <- 100
fx01 <- function(ll,n){
a1 <- sample(1:n, n, replace=TRUE)
length(unique(a1))/n
}
b1 <- c(lapply(1:1000,fx01,n=100), recursive=TRUE)
mean(b1)
1. Bradley Efron i Robert Tibshirani (1997). Ulepszenia walidacji krzyżowej: metoda Bootstrap .632+ . Journal of the American Statistics Association , t. 92, nr 438, s. 548--560.
Z mojego doświadczenia, opartego głównie na symulacjach, warianty bootstrapu 0,632 i 0,632+ były potrzebne tylko z powodu poważnych problemów spowodowanych użyciem niewłaściwej reguły punktacji dokładności, a mianowicie odsetka „sklasyfikowanego” poprawnie. Gdy używasz prawidłowych (np. Wynik oparty na dewiacji lub wynik Briera) lub półprawidłowych (np. -index = AUROC) reguł, standardowy bootstrap optymizmu Efron-Gong działa dobrze.
Te odpowiedzi są bardzo przydatne. Nie mogłem znaleźć sposobu na zademonstrowanie tego za pomocą matematyki, więc napisałem trochę kodu w języku Python, który działa całkiem dobrze:
from numpy import mean
from numpy.random import choice
N = 3000
variables = range(N)
num_loop = 1000
# Proportion of remaining variables
p_var = []
for i in range(num_loop):
set_var = set(choice(variables, N))
p=len(set_var)/float(N)
if i%50==0:
print "value for ", i, " iteration ", "p = ",p
p_var.append(p)
print "Estimator of the proportion of remaining variables, ", mean(p_var)