Nach einigen Bayes'schen Aktualisierungsschritten bleibt mir eine hintere Verteilung der Form einer Mischung von Normalverteilungen,Das heißt, der Parameter \ theta wird aus einer Verteilung gezogen, deren PDF als gewichtete Mischung normaler PDFs angegeben wird und keine Summe normaler RVs ist. Ich möchte Stichproben \ theta \ sim \ Pr (\ theta | \ text {data}) zeichnen , um sie in einer wichtigen Stichprobenannäherung dieses Seitenzahns zu verwenden. In der Praxis kann die Summe über i eine große Anzahl von Begriffen haben, so dass es unpraktisch sein kann, einen Begriff i gemäß den Gewichten \ {w_i \} zu wählen und dann \ theta \ sim N (\ mu_i, \ sigma ^ zu zeichnen 2)
. Gibt es eine effiziente Möglichkeit, Proben von einem Posterior dieser Form zu ziehen?
monte-carlo
probability
Chris Granade
quelle
quelle
Antworten:
Im Prinzip könnte man die Anzahl der Proben, die aus jeder Unterverteilung gezogen werden sollen, vorwählen, dann jede Unterverteilung nur einmal besuchen und dann mehr als die Anzahl der Punkte ziehen.
Das ist
Finden Sie die Zufallsmenge so, dass und respektieren Sie die Gewichte.<n1,n2,…,nk> n=∑ki=1ni
Ich glaube, dass Sie dies tun, indem Siewi∗n n
eine Poisson-Verteilung miteiner Multinomialverteilung (siehe Kommentare) des Mittelwerts für jede Unterverteilung und dann die Summe auf normalisieren .Die Arbeit hier istO(k)∗O(n)
Dann mach
Die Arbeit hier istO(n)
Dies bedeutet jedoch, dass Sie die nicht in zufälliger Reihenfolge erhalten. Wenn eine zufällige Reihenfolge erforderlich ist, müssen Sie die Ziehungen mischen (auch big ).O(n)
Es sieht so aus, als ob der erste Schritt in der Laufzeit dominiert und in der gleichen Reihenfolge wie der naive Algorithmus ist. Wenn Sie jedoch sicher sind, dass alle Sie die Poisson-Verteilungen mit Normalverteilungen approximieren und den ersten Schritt beschleunigen.wi∗n≫1
quelle
Hinweis: In der Originalversion dieser Frage wurde nach einer "gewichteten Summe von Normalverteilungen" gefragt, auf die die folgende Antwort hilfreich sein könnte. Nach einer guten Diskussion über diese Antwort, die Antwort von @Geoff und die Frage selbst wurde jedoch klar, dass es sich bei der Frage tatsächlich um eine Stichprobe einer "Mischung von Normalverteilungen" handelte, auf die diese Antwort nicht anwendbar ist.
Die Summe der Normalverteilungen ist eine Normalverteilung, sodass Sie die Parameter dieser Einzelverteilung berechnen und dann einfach Stichproben daraus ziehen können. Wenn wir diese Verteilung dannN(μsum,σ2sum)
quelle
Update : Diese Antwort ist falsch und beruht auf Verwirrung in der Terminologie (Einzelheiten finden Sie in der Kommentarkette unten). Ich lasse es nur als Wegweiser, damit die Leute diese Antwort nicht erneut veröffentlichen (außer Barron). Bitte stimmen Sie nicht nach oben oder unten ab.
Ich würde nur Eigenschaften von Zufallsvariablen verwenden, um sie auf eine einzelne normalverteilte Zufallsvariable zu reduzieren. Die Summe zweier unabhängiger, normalverteilter Zufallsvariablen ist selbst eine Zufallsvariable. Wenn also und dannX1∼N(μ1,σ21) X2∼N(μ2,σ22)
Auch wenn , dannw1∈R
Dann werden diese beiden Ergebnisse kombiniert
In diesem Fall müssen Sie also nur Proben aus einer einzelnen Verteilung ziehen, was viel einfacher zu handhaben sein sollte.
quelle