Prélever des échantillons à partir d'un mélange fini de distributions normales?

10

Après quelques étapes de mise à jour bayésienne, il me reste une distribution postérieure de la forme d'un mélange de distributions normales, C'est-à-dire que le paramètre θ est tiré d'une distribution dont le PDF est donné comme un mélange pondéré de PDF normaux, et n'est pas une somme de RV normaux. Je voudrais tirer des échantillons θ Pr ( θ | données )

Pr(θ|Les données)=je=1kwjeN(μje,σ2).
θθPr(θ|Les données) à utiliser dans une approximation d'échantillonnage d'importance de ce postérieur. En pratique, la somme sur je peut avoir un grand nombre de termes, de sorte qu'il peut être difficile de choisir un terme fonction des poids { w i } puis de dessiner θ N ( μ i , σ 2 ) . Existe-t-il un moyen efficace de prélever des échantillons à partir d'une partie postérieure de ce formulaire?je{wje}θN(μje,σ2)
Chris Granade
la source
Avez-vous réellement essayé la méthode select then throw? La sélection peut être effectuée assez rapidement en O (k) pas.
dmckee --- chaton ex-modérateur
1
Si la solution de Barron n'est vraiment pas correcte et que vous entendez en fait un "modèle de mélange", pourriez-vous utiliser ce terme?
Neil G
1
Neil G: Je ne suis pas un statisticien de métier, mais plutôt un physicien qui a parfois besoin d'utiliser des statistiques. En tant que tel, je ne connaissais pas le terme approprié pour décrire ce dont j'avais besoin. Je peux continuer et éditer la question maintenant, cependant, pour qu'il soit plus clair que les PDF sont sommés et non les VR.
Chris Granade
1
@ChrisGranade: Je n'essayais pas de t'abattre. Je voulais juste m'assurer que c'est ce que vous vouliez dire et suggérer la modification.
Neil G
1
Pourquoi est-il impossible de choisir fonction des poids { w i } et d'un échantillon de la distribution uniforme sur [ 0 , 1 ] , puis de l'échantillon N ( μ i , σ 2 ) ? Ceci n'est que modérément plus cher que l'échantillonnage d'une seule distribution normale, le coût est indépendant du nombre de distributions mixtesje{wje}[0,1]N(μje,σ2) et ne dépend pas du fait que ces distributions soient normales. k
Jed Brown

Réponses:

6

En principe, on pourrait présélectionner le nombre d'échantillons à prélever dans chaque sous-distribution, puis visiter chaque sous-distribution une seule fois et tirer un nombre de points.

C'est

  1. Trouver l'ensemble aléatoire tel que n = k i = 1 n i<n1,n2,,nk>n=je=1knje et en respectant les poids.

    Je crois que vous faites cela en traçant une distribution de Poisson une distribution multinomiale (voir les commentaires) de la moyenne pour chaque sous-distribution, puis en normalisant la somme à nwjenn .

    Le travail ici est O(k)O(n)

  2. Alors fais

    for (i=1; i<=k; ++i)
       for (j=1; j<=n[i]; ++j)
          theta ~ N(mu[i],sigma[i])
    

    Le travail ici est O(n)

Bien que cela signifie que vous n'obtenez pas le dans un ordre aléatoire. Si un ordre aléatoire est requis, vous devez alors mélanger les tirages (également grand ).O(n)

Il semble que la première étape soit dominante au moment de l'exécution et du même ordre que l'algorithme naïf, mais si vous êtes sûr que tout vous pouvez approximer les distributions de Poisson avec des distributions normales et accélérer la première étape.wjen1

dmckee --- chaton ex-modérateur
la source
La distribution de n'est pas une distribution de Poisson si n est fixe, mais une distribution binomiale. njen
Frédéric Grosshans
@ FrédéricGrosshans Uhm ... c'est ici que j'avoue ma faiblesse affligeante de probabilité. Je pense que vous avez peut-être raison. Je n'ai pas de lien pour lancer des distributions binomiales arbitraires, mais wikipedia a quelques références . Il y a aussi une relation entre Poisson et Binomial que je vais affirmer être responsable de mon incertitude. Ouais, c'est le ticket.
dmckee --- chaton ex-modérateur
1
@dmckee: Bonne réponse pour dessiner à partir d'un modèle de mélange, sauf que ce devrait être une distribution multinomiale plutôt qu'une distribution de Poisson à l'étape 1.
Neil G
3

Remarque: La version originale de cette question demandait une «somme pondérée des distributions normales» à laquelle la réponse suivante pourrait être utile. Cependant, après une bonne discussion sur cette réponse, la réponse de @Geoff, et sur la question elle-même, il est devenu clair que la question était vraiment sur l'échantillonnage d'un "mélange de distributions normales" auquel cette réponse n'est pas applicable.


La somme des distributions normales est une distribution normale, vous pouvez donc calculer les paramètres de cette distribution unique, puis simplement en tirer des échantillons. Si nous appelons cette distribution alors,N(μsum,σsum2)

μsum=je=1kwjeμje

σsum2=je=1kwje2σje2
Barron
la source
3
Pour le dire succinctement, Chris additionne des fonctions de densité de probabilité, pas des variables aléatoires.
Geoff Oxberry
2
Chris veut un PDF contenant (au moins en principe) plusieurs bosses. Autrement dit, il était la somme des PDF, pas le PDF d'une somme.
dmckee --- chaton ex-modérateur
1
Il est vrai que la somme des variables aléatoires normalement distribuées est elle-même une variable aléatoire normalement distribuée. Cependant, la somme des distributions normales n'est pas une distribution normale. Donc si et X 2N ( μ 2 , σ 2 2 ) , il est vrai que X 1 + X 2N ( μ 1 + μ 2 , σ 2 1X1N(μ1,σ12)X2N(μ2,σ22) , mais P D F ( X 1 + X 2 ) P D F ( X 1 ) + P D F ( X 2 ) . (Nous remercions @ChrisGranade pour l'explication.)X1+X2N(μ1+μ2,σ12+σ22)PF(X1+X2)PF(X1)+PF(X2)
Geoff Oxberry
2
@dmckee: ce n'est pas une "somme pondérée des distributions normales", c'est un "mélange de distributions normales".
Neil G
2
Les commentaires @Barron ne sont pas considérés comme une partie essentielle de la page. Vous devez absolument modifier votre réponse pour inclure l'essentiel des commentaires afin que les lecteurs qui ne regardent pas les commentaires ne soient pas induits en erreur.
David Ketcheson
2

Mise à jour : Cette réponse est incorrecte, résultant d'une confusion dans la terminologie (voir la chaîne de commentaires ci-dessous pour plus de détails); Je ne laisse que cela comme un guide pour que les gens ne republient pas cette réponse (à part Barron). Veuillez ne pas voter pour ou contre.

X1N(μ1,σ12)X2N(μ2,σ22)

X1+X2N(μ1+μ2,σ12+σ22).

Également si w1R, puis

w1X1N(w1μ1,w12σ12).

En utilisant ces deux résultats combinés,

Pr(θ|unetune)N(je=1kwjeμje,je=1kwje2σje2).

Dans ce cas, vous n'aurez donc qu'à extraire des échantillons d'une seule distribution, qui devrait être beaucoup plus maniable.

Geoff Oxberry
la source
2
C'est la solution à un problème différent qui peut être vu du fait que la distribution d'origine est multimodale et que votre suggestion est unimodale.
Chris Ferrie
@ChrisFerrie: Je vous crois, mais sur la base de la notation, je ne comprends pas pourquoi la distribution ci-dessus serait multimodale, alors que la somme de deux variables aléatoires gaussiennes indépendantes ne le serait pas. Qu'est-ce que j'oublie ici?
Geoff Oxberry
Je pense que la confusion est que nous ne regardons pas une somme de variables aléatoires, mais un PDF qui est la somme de nombreux PDF. Ce ne sont pas toujours les mêmes, puisquep(X1+X2)p(X1)+p(X2). Au lieu de cela, notre PDF peut être considéré comme marginalisant sur la variable aléatoireje.
Chris Granade
Ah, vous regardez des sommes de PDF. Oui, c'est une bête complètement différente. Maintenant que j'ai lu la question de plus près, je vois ce que vous dites et je vais supprimer ma réponse. Merci!
Geoff Oxberry
J'ai restauré ma réponse précédemment supprimée uniquement pour servir de guide pour les autres afin que personne d'autre ne réponde à cette question comme Barron et moi. Merci de ne plus voter pour ma réponse.
Geoff Oxberry