Czy ktoś mógłby mi szczegółowo wyjaśnić szacunek maksymalnego prawdopodobieństwa (MLE) w kategoriach laika? Chciałbym poznać podstawową koncepcję, zanim przejdę do matematycznego wyprowadzenia lub równania.
Czy ktoś mógłby mi szczegółowo wyjaśnić szacunek maksymalnego prawdopodobieństwa (MLE) w kategoriach laika? Chciałbym poznać podstawową koncepcję, zanim przejdę do matematycznego wyprowadzenia lub równania.
Odpowiedzi:
Powiedz, że masz jakieś dane. Załóżmy, że chcesz założyć, że dane pochodzą z jakiejś dystrybucji - być może Gaussa. Istnieje nieskończona liczba różnych Gaussów, z których dane mogły pochodzić (co odpowiada kombinacji nieskończonej liczby średnich i wariancji, które może mieć rozkład Gaussa). MLE wybierze gaussowski (tj. Średnią i wariancję), który jest „najbardziej zgodny” z twoimi danymi (dokładne znaczenie spójności wyjaśniono poniżej).
Powiedzmy, że masz zestaw danych . Najbardziej spójny gaussowski, na podstawie którego te dane mogły pochodzić, ma średnią 3 i wariancję 16. Mógł zostać pobrany z innego Gaussa. Ale jedna ze średnią 3 i wariancją 16 jest najbardziej zgodna z danymi w następującym znaczeniu: prawdopodobieństwo otrzymania określonych wartości , które zaobserwowałeś, jest większe przy tym wyborze średniej i wariancji, niż w przypadku jakiegokolwiek innego wyboru.
Przejście do regresji: zamiast średniej jest stałą, średnia jest funkcją liniową danych, określoną przez równanie regresji. Powiedzmy, że masz dane takie jak wraz z wcześniej. Średnia tego Gaussa to teraz dopasowany model regresji , gdzie
Przejście do GLM: zastąp Gaussa innym rozkładem (z rodziny wykładniczej). Średnia jest teraz funkcją liniową danych, określoną przez równanie regresji, przekształconą przez funkcję link. Jest to , gdzie dla logit (z danymi dwumianowymi).
Szacowanie maksymalnego prawdopodobieństwa (MLE) to technika znajdowania najbardziej prawdopodobnej funkcji, która wyjaśnia obserwowane dane. Myślę, że matematyka jest konieczna, ale nie pozwól, aby cię przestraszyła!
Powiedzmy, że mamy zestaw punktów na płaszczyźnie i chcemy poznać parametry funkcji i które najprawdopodobniej pasują do danych (w tym przypadku znamy funkcję, ponieważ określiłem ją, aby ją utworzyć przykład, ale proszę o wyrozumiałość).
data <- data.frame(x = runif(200, 1, 10))
data$y <- 0 + beta*data$x + rnorm(200, 0, sigma)
plot(data$x, data$y)
Aby wykonać MLE, musimy przyjąć założenia dotyczące formy funkcji. W modelu liniowym zakładamy, że punkty mają rozkład normalny (Gaussa) prawdopodobieństwa, ze średnią i wariancją : . Równanie tej funkcji gęstości prawdopodobieństwa jest następujące:
Chcemy znaleźć parametry i które maksymalizują to prawdopodobieństwo dla wszystkich punktów . To jest funkcja „prawdopodobieństwa”,
log(L)=n∑i=1-n
Możemy to zakodować jako funkcję w R za pomocą .
linear.lik <- function(theta, y, X){
n <- nrow(X)
k <- ncol(X)
beta <- theta[1:k]
sigma2 <- theta[k+1]^2
e <- y - X%*%beta
logl <- -.5*n*log(2*pi)-.5*n*log(sigma2) - ( (t(e) %*% e)/ (2*sigma2) )
return(-logl)
}
Ta funkcja, przy różnych wartościach i , tworzy powierzchnię.σ
surface <- list()
k <- 0
for(beta in seq(0, 5, 0.1)){
for(sigma in seq(0.1, 5, 0.1)){
k <- k + 1
logL <- linear.lik(theta = c(0, beta, sigma), y = data$y, X = cbind(1, data$x))
surface[[k]] <- data.frame(beta = beta, sigma = sigma, logL = -logL)
}
}
surface <- do.call(rbind, surface)
library(lattice)
wireframe(logL ~ beta*sigma, surface, shade = TRUE)
Jak widać, gdzieś na tej powierzchni jest punkt maksymalny. Możemy znaleźć parametry określające ten punkt za pomocą wbudowanych poleceń optymalizacyjnych R. Jest to dość zbliżone do odkrycia prawdziwych parametrów
linear.MLE <- optim(fn=linear.lik, par=c(1,1,1), lower = c(-Inf, -Inf, 1e-8),
upper = c(Inf, Inf, Inf), hessian=TRUE,
y=data$y, X=cbind(1, data$x), method = "L-BFGS-B")
linear.MLE$par
## [1] -0.1303868 2.7286616 1.3446534
Zwykłe najmniejsze kwadraty to maksymalne prawdopodobieństwo dla modelu liniowego, więc ma sens, lm
że dałoby nam te same odpowiedzi. (Zauważ, że służy do określania standardowych błędów).
summary(lm(y ~ x, data))
##
## Call:
## lm(formula = y ~ x, data = data)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.3616 -0.9898 0.1345 0.9967 3.8364
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.13038 0.21298 -0.612 0.541
## x 2.72866 0.03621 75.363 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.351 on 198 degrees of freedom
## Multiple R-squared: 0.9663, Adjusted R-squared: 0.9661
## F-statistic: 5680 on 1 and 198 DF, p-value: < 2.2e-16
data$y <- 0 + beta*data$x + rnorm(200, 0, sigma2)
? I jest 0 +
przydatny?
beta
i sigma2
należy go zdefiniować, aby ten kod działał. Ukryłem je, abyśmy mogli „odkryć” parametry, które prawie zawsze są nieznane po uruchomieniu MLE.
0 +
nic tak naprawdę nic nie robi; Po prostu dołączyłem go, ponieważ modele regresji zwykle przechwytują. A jeśli MLE próbowałby zoptymalizować beta
, sigma2
a alpha
ja nie mogłem pokazać ładnej powierzchni (chyba że znasz pakiet R, który będzie
Oszacowanie maksymalnego prawdopodobieństwa (ML) parametru to wartość tego parametru, przy której rzeczywiste obserwowane dane są najbardziej prawdopodobne w stosunku do wszelkich innych możliwych wartości parametru.
Chodzi o to, że istnieje dowolna liczba „prawdziwych” wartości parametrów, które mogłyby doprowadzić do faktycznie zaobserwowanych danych z pewnym niezerowym (choć być może małym) prawdopodobieństwem. Ale oszacowanie ML daje wartość parametru, która doprowadziłaby do twoich obserwowanych danych z najwyższym prawdopodobieństwem.
Nie należy tego mylić z wartością parametru, który najprawdopodobniej faktycznie wygenerował twoje dane!
Podoba mi się następujący fragment Sober (2008, s. 9–10) na temat tego rozróżnienia. W tym fragmencie mamy kilka obserwowanych danych oznaczony i hipotezy oznaczona .H
Musisz pamiętać, że „prawdopodobieństwo” jest terminem technicznym. Prawdopodobieństwo H, Pr (O | H) i prawdopodobieństwo późniejsze H, Pr (H | O) są różnymi wielkościami i mogą mieć różne wartości. Prawdopodobieństwo H to prawdopodobieństwo, że H przyznaje O, a nie prawdopodobieństwo, że O przyzna H. H. Załóżmy, że słyszysz hałas dochodzący z poddasza twojego domu. Rozważasz hipotezę, że kręgle są tam gremlinami. Prawdopodobieństwo tej hipotezy jest bardzo wysokie, ponieważ jeśli na strychu będą kręcone gremliny, prawdopodobnie będzie hałas. Ale na pewno nie uważasz, że hałas sprawia, że jest bardzo prawdopodobne, że są tam kręgle. W tym przykładzie Pr (O | H) jest wysoka, a Pr (H | O) jest niska. Hipoteza gremlinowa ma wysokie prawdopodobieństwo (w sensie technicznym), ale małe prawdopodobieństwo.
W odniesieniu do powyższego przykładu ML popiera hipotezę gremlinową. W tym konkretnym komicznym przykładzie jest to zdecydowanie zły wybór. Ale w wielu innych bardziej realistycznych przypadkach oszacowanie ML może być bardzo rozsądne.
Odniesienie
Sober, E. (2008). Dowody i ewolucja: logika nauki. Cambridge University Press.
MLE to wartość parametru będącego przedmiotem zainteresowania, który maksymalizuje prawdopodobieństwo zaobserwowania zaobserwowanych danych. Innymi słowy, to wartość parametru sprawia, że obserwowane dane są najbardziej prawdopodobne.
To jest możliwe, aby coś powiedzieć bez użycia matematyki (dużo), ale dla rzeczywistych zastosowaniach statystycznych maksymalnego prawdopodobieństwa trzeba matematyki.
Szacowanie maksymalnego prawdopodobieństwa wiąże się z tym, co filozofowie nazywają wnioskowaniem do najlepszego wyjaśnienia lub uprowadzenia . Używamy tego cały czas! Uwaga: nie twierdzę, że maksymalne prawdopodobieństwo jest porwaniem, termin ten jest znacznie szerszy, a niektóre przypadki szacunku Bayesowskiego (z uprzednim doświadczeniem) prawdopodobnie można również uznać za porwanie. Niektóre przykłady zaczerpnięte z http://plato.stanford.edu/entries/abduction/#Aca Zobacz także https://en.wikipedia.org/wiki/Abductive_reasoning (w informatyce „uprowadzenie” jest również używane w kontekście -probabilistyczne modele.)
Kolejny przykład: pracujesz w przedszkolu i pewnego dnia dziecko zaczyna chodzić w dziwny sposób, mówiąc, że złamał nogi. Badasz i nie znajdujesz nic złego. Następnie można rozsądnie wywnioskować, że jeden z jego rodziców złamał nogi, ponieważ dzieci często wtedy działają zgodnie z opisem, tak więc jest to „wnioskowanie o najlepsze wyjaśnienie” i przypadek (nieformalnego) maksymalnego prawdopodobieństwa. (i oczywiście to wyjaśnienie może być błędne, jest to tylko prawdopodobne, niepewne. Uprowadzenie / maksymalne prawdopodobieństwo nie może dać pewnych wniosków).
Uprowadzenie polega na znalezieniu wzorca w danych, a następnie poszukiwaniu możliwych teorii, które mogą sprawić, że wzorce te będą prawdopodobne. Zatem wybór możliwego wyjaśnienia, które sprawia, że obserwowany wzór jest maksymalnie prawdopodobny, jest po prostu maksymalnym prawdopodobieństwem!
Najlepszym przykładem uprowadzenia w nauce jest ewolucja . Nie ma jednej obserwacji sugerującej ewolucję, ale ewolucja sprawia, że zaobserwowane wzorce są bardziej prawdopodobne niż inne wyjaśnienia.
Innym typowym przykładem jest diagnoza medyczna? Który możliwy stan medyczny sprawia, że obserwowany wzór objawów jest najbardziej prawdopodobny? Ponownie, jest to również maksymalne prawdopodobieństwo! (Lub, w tym przypadku, być może lepsze jest oszacowanie bayesowskie, musimy wziąć pod uwagę wcześniejsze prawdopodobieństwo różnych możliwych wyjaśnień). Ale to jest technika, w tym przypadku możemy mieć empiryczne priory, które można postrzegać jako naturalną część modelu statystycznego, a to, co nazywamy modelem , to, co nazywamy wcześniej, jest jakąś arbitralną (*) konwencją statystyczną.
Aby powrócić do pierwotnego pytania na temat laickiego objaśnienia MLE, oto jeden prosty przykład: kiedy moje córki miały 6 i 7 lat, zadałem im to pytanie. Zrobiliśmy dwa urny (dwa pudełka na buty), w jednym umieściliśmy 2 czarne kule, 8 czerwonych, w drugim numery zostały zamienione. Następnie wymieszaliśmy urny i losowaliśmy jedną urnę. Potem wzięliśmy losowo jedną piłkę z tej urny. To było czerwone.
Potem zapytałem: Z jakiego urna sądzisz, że została wyciągnięta czerwona kula? Po około jednej sekundzie odpowiedzieli (w chórze): Od tej z 8 czerwonymi kulkami!
Potem zapytałem: Dlaczego tak myślisz? I na nowo, po około jednej sekundzie (znowu w calu): „Bo wtedy łatwiej jest narysować czerwoną piłkę!”. To znaczy, łatwiej = bardziej prawdopodobne . Było to maksymalne prawdopodobieństwo (napisanie modelu prawdopodobieństwa jest łatwym ćwiczeniem) i jest to „wnioskowanie na podstawie najlepszego wyjaśnienia”, to znaczy uprowadzenia.
(*) Dlaczego mówię „arbitralnie”? Aby kontynuować problem z diagnozą medyczną, powiedzmy, że pacjent ma trudności z rozpoznaniem stanu, którego lekarz wcześniej nie widział. Następnie, powiedzmy, w rozmowie z pacjentem okazuje się, że niedawno odwiedził jakieś miejsce w tropikalnej Afryce. To nowa informacja, ale jej efekt w typowych modelach (wykorzystywanych w tego rodzaju sytuacjach, czy to formalnych, czy nieformalnych) będzie polegał na zmianie wcześniejszych możliwych możliwych wyjaśnień, ponieważ choroby tropikalne, takie jak malaria, będą się teraz nasilać wcześniejsze prawdopodobieństwo. Tak więc nowe dane wchodzą w skład analizy wcześniej .
Jeśli dane pochodzą z rozkładu prawdopodobieństwa o nieznanym parametrze , maksymalne oszacowanie prawdopodobieństwa jest tym, co sprawia, że dane, które faktycznie obserwowałeś, są najbardziej prawdopodobne.
W przypadku, gdy twoje dane są niezależnymi próbkami z tego rozkładu prawdopodobieństwa, prawdopodobieństwo (dla danej wartości ) jest obliczane poprzez pomnożenie prawdopodobieństw wszystkich obserwacji (dla tej danej wartości ) - jest to po prostu prawdopodobieństwo łączne całej próbki. A wartość dla której jest to maksimum, jest oszacowaniem maksymalnego prawdopodobieństwa.
(Jeśli dane są w trybie ciągłym, należy odczytać „gęstość prawdopodobieństwa” dla „prawdopodobieństwa”. Więc jeśli są mierzone w calach, gęstość byłaby mierzona w prawdopodobieństwie na cal.)
Zagrajmy w grę: jestem w ciemnym pokoju, nikt nie widzi tego, co robię, ale wiesz, że (a) rzucam kostką i liczę liczbę „1” jako „sukces” lub (b) rzucam monetą i liczę głowy jako „sukces”.
Jak powiedziałem, nie widać, który z nich robię, ale daję wam tylko jedną informację: Mówię wam, że rzuciłem kostką 100 razy lub rzuciłem monetą 100 razy i że miałem 17 sukcesów .
Pytanie polega na odgadnięciu, czy rzuciłem kostką, czy rzuciłem monetą.
Prawdopodobnie odpowiesz, że rzuciłem kostką.
Jeśli to zrobisz, prawdopodobnie „zgadłeś, maksymalizując prawdopodobieństwo”, ponieważ jeśli zaobserwuję 17 sukcesów na 100 eksperymentów, bardziej prawdopodobne jest, że rzuciłem kostką niż rzuciłem monetą.
Więc to, co zrobiłeś, to wziąć tę wartość „prawdopodobieństwa sukcesu” (1/6 dla kości i 1/2 dla monety), co sprawia, że najprawdopodobniej zaobserwujesz 17 sukcesów na 100. „Bardziej prawdopodobne” oznacza, że szansa, że masz 17 razy „1” na 100 rzutów kostką, jest większa niż szansa na 17 głów na 100 rzutów monetą.
Powiedzmy, że masz jakieś dane pochodzące z rozkładu normalnego o nieznanej średniej . Chcesz znaleźć wartość , jednak nie masz pojęcia, jak ją osiągnąć. Jedną rzeczą, którą możesz zrobić, to wypróbować kilka wartości i sprawdzić, która z nich jest najlepsza. Aby to zrobić, potrzebujesz jednak pewnej metody sprawdzania, która z wartości jest „lepsza” niż inne. Funkcja prawdopodobieństwa, , pozwala sprawdzić, które wartości są najprawdopodobniej biorąc pod uwagę posiadane dane. W tym celu wykorzystuje prawdopodobieństwa punktów danych oszacowane na podstawie funkcji prawdopodobieństwa o danej wartości :μ μ μ L μ f μ
lub prawdopodobieństwo dziennika:
Za pomocą tej funkcji można sprawdzić, która wartość maksymalizuje prawdopodobieństwo, tj. Która jest najbardziej prawdopodobna, biorąc pod uwagę posiadane dane. Jak widać, można to osiągnąć iloczynem prawdopodobieństw lub sumą prawdopodobieństw logarytmicznych (prawdopodobieństwo logarytmiczne). W naszym przykładzie byłaby funkcją gęstości prawdopodobieństwa dla rozkładu normalnego, ale podejście można rozszerzyć na znacznie bardziej skomplikowane problemy.
W praktyce nie włączasz niektórych odgadywanych wartości do funkcji prawdopodobieństwa, ale raczej używasz różnych podejść statystycznych, o których wiadomo, że zapewniają oszacowania maksymalnego prawdopodobieństwa parametrów będących przedmiotem zainteresowania. Istnieje wiele takich podejść, które są specyficzne dla problemu - niektóre są proste, inne skomplikowane ( więcej informacji można znaleźć w Wikipedii ). Poniżej przedstawiam prosty przykład działania ML w praktyce.
Przykład
Najpierw wygenerujmy fałszywe dane:
set.seed(123)
x <- rnorm(1000, 1.78)
i zdefiniuj funkcję prawdopodobieństwa, którą chcemy zmaksymalizować (prawdopodobieństwo rozkładu normalnego z różnymi wartościami przy danych ):
llik <- function(mu) sum(log(dnorm(x, mu)))
następnie sprawdzamy różne wartości za pomocą naszej funkcji:
ll <- vapply(seq(-6, 6, by=0.001), llik, numeric(1))
plot(seq(-6, 6, by=0.001), ll, type="l", ylab="Log-Likelihood", xlab=expression(mu))
abline(v=mean(x), col="red")
To samo można osiągnąć szybciej dzięki algorytmowi optymalizacji, który szuka maksymalnej wartości funkcji w bardziej sprytny sposób niż brutalna siła . Istnieje wiele takich przykładów, np. Jednym z najbardziej podstawowych w języku R jest optimize
:
optimize(llik, interval=c(-6, 6), maximum=TRUE)$maximum
Czarna linia pokazuje szacunki funkcji logarytmu wiarygodności przy różnych wartościach . Czerwona linia na wykresie oznacza wartość, która jest dokładnie taka sama jak średnia arytmetyczna (który faktycznie jest maksymalny estymator prawdopodobieństwa z ), najwyższy punkt funkcji log-prawdopodobieństwa szacunkowy z brute force i poszukiwania z algorytmem.optimize
Ten przykład pokazuje, jak można użyć wielu podejść, aby znaleźć wartość, która maksymalizuje funkcję prawdopodobieństwa, aby znaleźć „najlepszą” wartość parametru.
Jak chciałeś, użyję bardzo naiwnych terminów. Załóżmy, że zebrałeś pewne dane i masz uzasadnione założenie, że są one zgodne z pewnym rozkładem prawdopodobieństwa. Ale zwykle nie znasz parametrów tego rozkładu z takich próbek. Parametry to „charakterystyki populacji” rozkładu prawdopodobieństwa, który przyjęto dla danych. Załóżmy, że Twój spisek lub wcześniejsza wiedza sugerują, abyś wziął pod uwagę dane jako normalnie rozpowszechniane. Średnia i wariancja to dwa parametry reprezentujące rozkład normalny. Niech będzie zbiorem parametrów. Tak więc wspólne prawdopodobieństwo obserwacji danych biorąc pod uwagę zestaw parametrówjest podane przez, .
Prawdopodobieństwo to „prawdopodobieństwo zaobserwowania danych”, co jest równoważne wspólnemu plikowi pdf (dla dystrybucji dyskretnej połączonym pmf). Jest to jednak wyrażane jako funkcja parametrów lub . Tak, że dla tego konkretnego zestawu danych można znaleźć wartość dla której jest maksymalna. Innymi słowy, znajdziesz dla których prawdopodobieństwo zaobserwowania tego konkretnego zestawu danych jest maksymalne. Tak więc pojawia się termin „Maksymalne prawdopodobieństwo”. Teraz znajdziesz zestaw dla którego jest zmaksymalizowane. Ten zestaw dla którego jest maksymalny, nazywa się oszacowaniem maksymalnego prawdopodobieństwa. θ L ( θ ) θ { μ , σ 2 } L { μ , σ 2 } L ( θ )
Załóżmy, że masz monetę. Podrzucanie może dać głowy lub ogony. Ale nie wiesz, czy to uczciwa moneta. Więc rzucasz nim 1000 razy. Pojawia się jako głowa 1000 razy i nigdy jako ogon.
Możliwe, że jest to w rzeczywistości uczciwa moneta z szansą 50/50 dla głów / ogonów, ale nie wydaje się prawdopodobne, prawda? Szansa na rzucenie uczciwą monetą 1000 razy, a główki nigdy się nie zbliżają, wynosi , naprawdę bardzo mała.
MLE stara się pomóc ci znaleźć najlepsze wytłumaczenie w takiej sytuacji - gdy masz jakiś wynik i chcesz dowiedzieć się, jaka jest wartość parametru, która najprawdopodobniej da taki wynik. Tutaj mamy 2000 główek z 2000 rzutów - więc użyjemy MLE, aby dowiedzieć się, jakie prawdopodobieństwo uzyskania główki najlepiej wyjaśnia otrzymanie 2000 główek z 2000 rzutów.
Jest to estymator maksymalnego prawdopodobieństwa . Oszacowuje parametr (tutaj jest to funkcja rozkładu prawdopodobieństwa), który najprawdopodobniej przyniósł wynik, na który obecnie patrzysz.
Podsumowując nasz przykład, biorąc MLE zwróciłoby, że prawdopodobieństwo uzyskania głowy, która najlepiej tłumaczy uzyskanie 2000 główek z 2000 rzutów wynosi .
Rozumiem MLE w ten sposób: widzisz tylko to, czego natura chce od ciebie. Rzeczy, które widzisz, to fakty. Fakty te leżą u podstaw procesu, który je wygenerował. Procesy te są ukryte, nieznane, należy je odkryć. Zatem pytanie brzmi: biorąc pod uwagę zaobserwowany fakt, jakie jest prawdopodobieństwo, że proces P1 go wygenerował? Jakie jest prawdopodobieństwo, że proces P2 go wygenerował? I tak dalej ... Jedno z tych prawdopodobieństw będzie maksymalne ze wszystkich. MLE to funkcja, która wyodrębnia to maksymalne prawdopodobieństwo.
Pomyśl o rzucie monetą; moneta jest stronnicza. Nikt nie zna stopnia uprzedzenia. Może wynosić od o (wszystkie ogony) do 1 (wszystkie głowy). Rzetelna moneta będzie wynosić 0,5 (głowa / ogon równie prawdopodobne). Kiedy wykonujesz 10 rzutów i obserwujesz 7 głów, wtedy MLE jest takim nastawieniem, które jest bardziej prawdopodobne, aby wytworzyć obserwowany fakt 7 głów na 10 rzutów.