Könnte mir jemand die Maximum-Likelihood-Schätzung (MLE) im Detail erklären? Ich möchte das zugrunde liegende Konzept kennen, bevor ich mich mit mathematischen Ableitungen oder Gleichungen befasse.
Könnte mir jemand die Maximum-Likelihood-Schätzung (MLE) im Detail erklären? Ich möchte das zugrunde liegende Konzept kennen, bevor ich mich mit mathematischen Ableitungen oder Gleichungen befasse.
Antworten:
Angenommen, Sie haben Daten. Angenommen, Sie sind bereit anzunehmen, dass die Daten von einer Distribution stammen - vielleicht von Gauß. Es gibt unendlich viele verschiedene Gaußsche Größen, von denen die Daten stammen könnten (die der Kombination der unendlich vielen Mittelwerte und Varianzen entsprechen, die eine Gaußsche Verteilung haben kann). MLE wählt den Gaußschen Wert (dh den Mittelwert und die Varianz) aus, der mit Ihren Daten "am konsistentesten" ist (die genaue Bedeutung von konsistent wird unten erläutert).
Angenommen, Sie haben einen Datensatz mit . Der beständigste Gauß-Wert, von dem diese Daten stammen könnten, hat einen Mittelwert von 3 und eine Varianz von 16. Er könnte von einem anderen Gauß-Wert abgetastet worden sein. Einer mit einem Mittelwert von 3 und einer Varianz von 16 entspricht jedoch am ehesten den Daten in folgendem Sinne: Die Wahrscheinlichkeit, die von Ihnen beobachteten Werte zu erhalten, ist bei dieser Wahl von Mittelwert und Varianz größer als bei jeder anderen Wahl.y
Übergang zur Regression: Anstatt dass der Mittelwert eine Konstante ist, ist der Mittelwert eine lineare Funktion der Daten, wie in der Regressionsgleichung angegeben. wir also an, Sie haben Daten wie zusammen mit von früher. Der Mittelwert dieses Gaußschen ist nun das angepasste Regressionsmodell , wobei & bgr; & bgr; = [ - 1,9 , 0,9 ]
Umstieg auf GLMs: Ersetzen Sie Gauß durch eine andere Verteilung (aus der Exponentialfamilie). Der Mittelwert ist nun eine lineare Funktion der Daten, wie durch die Regressionsgleichung angegeben, die durch die Verknüpfungsfunktion transformiert wird. Es ist also , wobei für logit (mit Binomialdaten).
Die Maximum Likelihood Estimation (MLE) ist eine Technik zur Ermittlung der wahrscheinlichsten Funktion, die die beobachteten Daten erklärt. Ich denke, Mathe ist notwendig, aber lass dich nicht erschrecken!
Angenommen, wir haben eine Reihe von Punkten in der Ebene und möchten die Funktionsparameter und , die höchstwahrscheinlich zu den Daten passen (in diesem Fall kennen wir die Funktion, weil ich sie angegeben habe, um diese zu erstellen Beispiel, aber ertrage es mit mir).β σ
data <- data.frame(x = runif(200, 1, 10))
data$y <- 0 + beta*data$x + rnorm(200, 0, sigma)
plot(data$x, data$y)
Um eine MLE durchzuführen, müssen wir Annahmen über die Form der Funktion treffen. In einem linearen Modell nehmen wir an, dass die Punkte einer normalen (Gaußschen) Wahrscheinlichkeitsverteilung mit dem Mittelwert und der Varianz folgen : . Die Gleichung dieser Wahrscheinlichkeitsdichtefunktion lautet:σ 2 y = N ( x β , σ 2 ) 1
Was wir finden wollen, sind die Parameter und , die diese Wahrscheinlichkeit für alle Punkte maximieren . Dies ist die "Wahrscheinlichkeits" -Funktion,σ ( x i , y i ) L
log(L)=n∑i=1-n
Wir können dies als Funktion in R mit kodieren .
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)
}
Diese Funktion bei verschiedenen Werten vonσ und eine Oberfläche.
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)
Wie Sie sehen, gibt es irgendwo auf dieser Oberfläche einen Maximalpunkt. Wir können Parameter finden, die diesen Punkt mit Rs eingebauten Optimierungsbefehlen spezifizieren. Dies kommt der Aufdeckung der wahren Parameter einigermaßen nahe
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
Das gewöhnliche kleinste Quadrat ist die maximale Wahrscheinlichkeit für ein lineares Modell, daher ist es sinnvoll, lm
dass wir die gleichen Antworten erhalten. (Beachten Sie, dass zur Bestimmung der Standardfehler verwendet wird).
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)
? Und ist 0 +
nützlich?
beta
und sigma2
muss definiert werden, damit dieser Code ausgeführt werden kann. Ich habe sie versteckt, damit wir die Parameter "entdecken" konnten, die beim Ausführen von MLE fast immer unbekannt sind.
0 +
irgendetwas eigentlich nichts tut. Ich habe es lediglich einbezogen, da Regressionsmodelle normalerweise einen Achsenabschnitt haben. Und wenn die MLE versuchen würde, zu optimieren beta
, sigma2
und alpha
ich könnte die hübsche Oberflächenzeichnung nicht zeigen (es sei denn, Sie kennen ein R-Paket, das in vier Dimensionen
Die Maximum-Likelihood-Schätzung (ML-Schätzung) eines Parameters ist der Wert des Parameters, unter dem Ihre tatsächlich beobachteten Daten im Verhältnis zu anderen möglichen Werten des Parameters am wahrscheinlichsten sind.
Die Idee ist, dass es eine beliebige Anzahl von "wahren" Parameterwerten gibt, die zu Ihren tatsächlich beobachteten Daten mit einer (wenn auch möglicherweise geringen) Wahrscheinlichkeit ungleich Null hätten führen können. Die ML-Schätzung gibt jedoch den Parameterwert an, der mit der höchsten Wahrscheinlichkeit zu Ihren beobachteten Daten geführt hätte.
Dies darf nicht mit dem Wert des Parameters verwechselt werden, der wahrscheinlich tatsächlich Ihre Daten erzeugt hat!
Sie müssen sich daran erinnern, dass "Wahrscheinlichkeit" ein Fachbegriff ist. Die Wahrscheinlichkeit von H, Pr (O | H) und die hintere Wahrscheinlichkeit von H, Pr (H | O) sind unterschiedliche Größen und können unterschiedliche Werte haben. Die Wahrscheinlichkeit von H ist die Wahrscheinlichkeit, dass H O überträgt, nicht die Wahrscheinlichkeit, dass O H überträgt. Angenommen, Sie hören ein Geräusch vom Dachboden Ihres Hauses. Sie denken an die Hypothese, dass es dort oben Gremlins gibt, die bowlen. Die Wahrscheinlichkeit dieser Hypothese ist sehr hoch, da es wahrscheinlich Lärm geben wird, wenn auf dem Dachboden Gremlins bowlen. Aber Sie glauben doch nicht, dass der Lärm es sehr wahrscheinlich macht, dass es dort oben Gremlins gibt, die bowlen. In diesem Beispiel ist Pr (O | H) hoch und Pr (H | O) niedrig. Die Gremlin-Hypothese hat eine hohe Wahrscheinlichkeit (im technischen Sinne), aber eine geringe Wahrscheinlichkeit.
In Bezug auf das obige Beispiel würde ML die Gremlin-Hypothese favorisieren. In diesem besonderen komischen Beispiel ist das eindeutig eine schlechte Wahl. In vielen anderen realistischeren Fällen könnte die ML-Schätzung jedoch sehr vernünftig sein.
Referenz
Sober, E. (2008). Evidence and Evolution: die Logik hinter der Wissenschaft. Cambridge University Press.
Der MLE ist der Wert des interessierenden Parameters, der die Wahrscheinlichkeit der Beobachtung der von Ihnen beobachteten Daten maximiert. Mit anderen Worten, es ist der Wert des Parameters, der es am wahrscheinlichsten macht, dass die beobachteten Daten beobachtet wurden.
Es ist möglich, etwas zu sagen, ohne (viel) Mathematik zu verwenden, aber für tatsächliche statistische Anwendungen mit maximaler Wahrscheinlichkeit benötigen Sie Mathematik.
Die Schätzung der maximalen Wahrscheinlichkeit hängt mit dem zusammen, was Philosophen als Schlussfolgerung für die beste Erklärung oder Entführung bezeichnen . Wir nutzen das die ganze Zeit! Ich sage nicht, dass die maximale Wahrscheinlichkeit eine Abduktion ist, dieser Begriff ist viel weiter gefasst, und einige Fälle der Bayes'schen Schätzung (mit einem empirischen Vorgänger) können wahrscheinlich auch als Abduktion angesehen werden. Einige Beispiele aus http://plato.stanford.edu/entries/abduction/#Aca Siehe auch https://en.wikipedia.org/wiki/Abductive_reasoning (In der Informatik wird "Entführung" auch im Kontext von non verwendet -probabilistische Modelle.)
Ein anderes Beispiel: Sie arbeiten in einem Kindergarten und eines Tages beginnt ein Kind auf seltsame Weise zu gehen und sagt, es habe sich die Beine gebrochen. Sie untersuchen und finden nichts falsch. Dann kann man vernünftigerweise darauf schließen, dass sich einer seiner Eltern das Bein gebrochen hat, da Kinder dann oft wie beschrieben betätigen, so dass dies ein "Rückschluss auf die beste Erklärung" und ein Fall von (informeller) Höchstwahrscheinlichkeit ist. (Und natürlich könnte diese Erklärung falsch sein, sie ist nur wahrscheinlich, nicht sicher. Die Abduktion / maximale Wahrscheinlichkeit kann keine sicheren Schlussfolgerungen ziehen.)
Bei der Abduktion geht es darum, Muster in Daten zu finden und dann nach möglichen Theorien zu suchen, die diese Muster möglicherweise wahrscheinlich machen. Dann ist die Auswahl der möglichen Erklärung, die das beobachtete Muster maximal wahrscheinlich macht, nur maximale Wahrscheinlichkeit!
Das beste Beispiel für eine Entführung in der Wissenschaft ist die Evolution . Es gibt keine einzige Beobachtung, die Evolution impliziert, aber die Evolution macht beobachtete Muster wahrscheinlicher als andere Erklärungen.
Ein weiteres typisches Beispiel ist die medizinische Diagnose? Welcher mögliche Gesundheitszustand macht das beobachtete Symptommuster am wahrscheinlichsten? Auch dies ist die maximale Wahrscheinlichkeit! (Oder in diesem Fall ist die Bayes'sche Schätzung besser geeignet, wir müssen die vorherige Wahrscheinlichkeit der verschiedenen möglichen Erklärungen berücksichtigen.) Aber das ist eine Form , in diesem Fall können wir empirisch priors haben , die als natürlicher Teil des statistischen Modells zu sehen ist, und dem, was wir nennen Modell , was wir vor ist eine willkürliche (*) statistische Konvention.
Um auf die ursprüngliche Frage zur Erklärung des Laienbegriffs von MLE zurückzukommen, hier ein einfaches Beispiel: Als meine Töchter 6 und 7 Jahre alt waren, habe ich sie danach gefragt. Wir machten zwei Urnen (zwei Schuhkartons), in eine legten wir 2 schwarze Kugeln, 8 rote, in die andere wurden die Zahlen getauscht. Dann mischten wir die Urnen und zeichnen eine Urne nach dem Zufallsprinzip. Dann nahmen wir zufällig eine Kugel aus dieser Urne. Es war rot.
Dann fragte ich: Aus welcher Urne wurde wohl die rote Kugel gezogen? Nach ungefähr einer Sekunde Nachdenken antworteten sie (im Chor): Von der mit 8 roten Kugeln!
Dann fragte ich: Warum denkst du so? Und noch einmal, nach ungefähr einer Sekunde (wieder Inchoir): "Weil es dann einfacher ist, eine rote Kugel zu zeichnen!". Das heißt, einfacher = wahrscheinlicher . Das war die maximale Wahrscheinlichkeit (es ist eine einfache Übung, das Wahrscheinlichkeitsmodell aufzuschreiben), und es ist "Rückschluss auf die beste Erklärung", das heißt Entführung.
(*) Warum sage ich "willkürlich"? Um das medizinische Diagnoseproblem fortzusetzen, sagen wir, der Patient ist ein Mann, der Schwierigkeiten hat, einen Zustand zu diagnostizieren, den der Arzt vorher nicht gesehen hat. Im Gespräch mit dem Patienten stellt sich dann beispielsweise heraus, dass er vor kurzem einen Ort im tropischen Afrika besucht hat. Das ist ein neues Datum, aber seine Wirkung in den typischen Modellen (die in dieser Art von Situation verwendet werden, sei es formell oder informell) wird darin bestehen, den Stand der schwierigen Erklärungen zu ändern, da Tropenkrankheiten wie Malaria jetzt höher werden vorherige Wahrscheinlichkeit. Die neuen Daten gehen also in die vorherige Analyse ein .
(Wenn die Daten kontinuierlich sind, lesen Sie "Wahrscheinlichkeitsdichte" für "Wahrscheinlichkeit". Wenn sie also in Zoll gemessen werden, wird die Dichte in Wahrscheinlichkeit pro Zoll gemessen.)
Lass uns ein Spiel spielen: Ich bin in einem dunklen Raum, niemand kann sehen, was ich tue, aber du weißt, dass entweder (a) ich einen Würfel werfe und die Anzahl der Einsen als "Erfolg" zähle oder (b) ich eine Münze werfe und ich zähle die Anzahl der Köpfe als "Erfolg".
Wie gesagt, Sie können nicht sehen, welche von beiden ich tue, aber ich gebe Ihnen nur eine einzige Information: Ich sage Ihnen, dass ich 100 Mal gewürfelt oder die Münze 100 Mal geworfen habe und dass ich 17 Erfolge hatte .
Die Frage ist, ob ich einen Würfel geworfen oder eine Münze geworfen habe.
Sie werden wahrscheinlich antworten, dass ich einen Würfel geworfen habe.
Wenn Sie dies tun, haben Sie wahrscheinlich "eine Vermutung durch Maximierung der Wahrscheinlichkeit" angestellt, denn wenn ich 17 Erfolge aus 100 Experimenten beobachte, ist es wahrscheinlicher, dass ich einen Würfel geworfen habe, als dass ich eine Münze geworfen habe.
Sie haben also den Wert der "Erfolgswahrscheinlichkeit" (1/6 für einen Würfel und 1/2 für eine Münze) herangezogen, der es am wahrscheinlichsten macht, 17 Erfolge in 100 zu beobachten Die Wahrscheinlichkeit, dass Sie 17-mal eine '1' in 100 Würfen eines Würfels haben, ist höher als die Wahrscheinlichkeit, dass Sie 17 Köpfe aus 100 Münzwürfen haben.
oder log-Wahrscheinlichkeit:
Beispiel
Lassen Sie uns zunächst einige gefälschte Daten generieren:
set.seed(123)
x <- rnorm(1000, 1.78)
llik <- function(mu) sum(log(dnorm(x, mu)))
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")
Dasselbe könnte mit einem Optimierungsalgorithmus schneller erreicht werden , der den Maximalwert einer Funktion auf eine geschicktere Weise als gewaltsame Weise ermittelt . Es gibt mehrere solcher Beispiele, zB eines der grundlegendsten in R ist optimize
:
optimize(llik, interval=c(-6, 6), maximum=TRUE)$maximum
In diesem Beispiel wird gezeigt, wie Sie mithilfe mehrerer Ansätze den Wert ermitteln können, mit dem die Wahrscheinlichkeitsfunktion maximiert wird, um den "besten" Wert Ihres Parameters zu ermitteln.
Angenommen, Sie haben eine Münze. Werfen kann es entweder Kopf oder Schwanz geben. Aber Sie wissen nicht, ob es eine faire Münze ist. Also wirfst du es 1000 Mal. Es kommt 1000-mal als Kopf und nie als Schwanz.
Das MLE versucht Ihnen zu helfen, die beste Erklärung in einer Situation wie dieser zu finden - wenn Sie ein Ergebnis haben und herausfinden möchten, welcher Wert des Parameters am wahrscheinlichsten zu diesem Ergebnis führt. Hier haben wir 2000 Köpfe aus 2000 Würfen - also würden wir ein MLE verwenden, um herauszufinden, mit welcher Wahrscheinlichkeit es am besten ist , einen Kopf zu bekommen, um 2000 Köpfe aus 2000 Würfen zu bekommen.
Es ist der Maximum Likelihood Estimator . Es schätzt den Parameter (hier ist es eine Wahrscheinlichkeitsverteilungsfunktion), der mit größter Wahrscheinlichkeit das Ergebnis liefert, das Sie sich gerade ansehen.
Ich verstehe MLE folgendermaßen: Man kann nur sehen, was die Natur von dir verlangt. Was Sie sehen, sind Fakten. Diesen Tatsachen liegt ein Prozess zugrunde, der sie erzeugt hat. Diese Prozesse sind verborgen, unbekannt, müssen entdeckt werden. Dann lautet die Frage: Mit welcher Wahrscheinlichkeit hat der Prozess P1 unter Berücksichtigung der beobachteten Tatsache diesen generiert? Wie hoch ist die Wahrscheinlichkeit, dass der Prozess P2 ihn generiert hat? Und so weiter ... Eine dieser Wahrscheinlichkeiten wird das Maximum von allem sein. MLE ist eine Funktion, die diese maximale Wahrscheinlichkeit extrahiert.
Stellen Sie sich einen Münzwurf vor. Münze ist voreingenommen. Niemand kennt den Grad der Voreingenommenheit. Es könnte von o (alle Schwänze) bis 1 (alle Köpfe) reichen. Eine faire Münze ist 0,5 (Kopf / Schwanz gleich wahrscheinlich). Wenn Sie 10 Würfe ausführen und 7 Köpfe beobachten, ist der MLE der Grad der Verzerrung, der mit größerer Wahrscheinlichkeit die beobachtete Tatsache von 7 Köpfen in 10 Würfen hervorruft.