Quelle est la valeur attendue de la distribution de Dirichlet modifiée? (problème d'intégration)

14

Il est facile de produire une variable aléatoire avec une distribution de Dirichlet en utilisant des variables Gamma avec le même paramètre d'échelle. Si:

XiGamma(αi,β)

Alors:

(X1jXj,,XnjXj)Dirichlet(α1,,αn)

Problème Que se passe-t-il si les paramètres d'échelle ne sont pas égaux?

XiGamma(αi,βi)

Alors quelle est la distribution de cette variable?

(X1jXj,,XnjXj)?

Pour moi, il suffirait de connaître la valeur attendue de cette distribution.
J'ai besoin d'une formule algébrique fermée approximative qui peut être évaluée très très rapidement par un ordinateur.
Disons qu'une approximation avec une précision de 0,01 est suffisante.
Vous pouvez supposer que:

αi,βiN

Remarque En bref, la tâche consiste à trouver une approximation de cette intégrale:

f(α,β)=R+nx1jxjjβjαjΓ(αj)xjαj1eβjxjdx1dxn

Łukasz Lew
la source
1
@ Łukasz Pouvez-vous nous en dire plus sur les paramètres , α i et β i ? Il est possible d'obtenir des expressions exactes pour j X j et ainsi d'approximer les attentes des ratios, mais pour certaines combinaisons de paramètres, on pourrait exploiter des approximations normales ou à cheval avec moins de travail. Je ne pense pas qu'il y aura une méthode d'approximation universelle, c'est pourquoi des restrictions supplémentaires seraient les bienvenues. nαiβijXj
whuber
etj X j sont corrélés, nous devons donc approximer l'intégrale elle-même. α i est souvent un petit nombre comme 1 ou 2 et parfois aussi grand que 10000. De même avec β i mais il est généralement 10 fois plus grand que α i . X1jXjαiβiαi
Łukasz Lew
Le problème vient des petits . Si tous les α i sont grands, la bonne approximation de l'intégrale entière est: α 1 / β 1αiαiα1/β1jαj/βj
Łukasz Lew
@ Łukasz Si vous avez besoin d'évaluer l'expression de l'attente, pourquoi avez-vous besoin d'une formule algébrique? Je pense à appliquer une astuce numérique pour obtenir l'attente, mais j'ai besoin de commentaires :)
deps_stats
J'ai besoin de l'évaluer plusieurs fois dans mon programme. Il doit être très rapide, c'est-à-dire sans boucles et de préférence pas trop de divisions.
Łukasz Lew

Réponses:

2

Juste une remarque initiale, si vous voulez une vitesse de calcul, vous devez généralement sacrifier la précision. "Plus de précision" = "Plus de temps" en général. Quoi qu'il en soit, voici une approximation de second ordre, devrait améliorer le "brut" approximatif que vous avez suggéré dans votre commentaire ci-dessus:

=α j

E(XjiXi)E[Xj]E[iXi]cov[iXi,Xj]E[iXi]2+E[Xj]E[iXi]3Var[iXi]
=αjiβjβiαi×[11(iβjβiαi)+1(iαiβi)2(iαiβi2)]

EDIT Une explication de l'extension ci-dessus a été demandée. La réponse courte est wikipedia . La réponse longue est donnée ci-dessous.

écrire . Nous avons maintenant besoin de toutes les dérivées "de second ordre" def. Les dérivés du premier ordre "s'annuleront" car ils impliqueront tous des multiplesX-E(X)etY-E(Y)qui sont tous les deux nuls en prenant les attentes.f(x,y)=xyfXE(X)YE(Y)

2f

2fx2=0
2f
2fxy=1y2
2fy2=2xy3

Et donc la série taylor jusqu'au deuxième ordre est donnée par:

xyμxμy+12(1μy22(xμx)(yμy)+2μxμy3(yμy)2)

Taking expectations yields:

E[xy]μxμy1μy2E[(xμx)(yμy)]+μxμy3E[(yμy)2]

Which is the answer I gave. (although I initially forgot the minus sign in the second term)

probabilityislogic
la source
This looks like exactly what I need. Can you explain how you got this expansion? I tried in a lot of ways and was unable to do that ...
Łukasz Lew