Erfolg von Bernoulli-Studien mit unterschiedlichen Wahrscheinlichkeiten

11

Wenn 20 unabhängige Bernoulli-Versuche mit jeweils unterschiedlicher Erfolgswahrscheinlichkeit und damit Misserfolg durchgeführt werden. Wie hoch ist die Wahrscheinlichkeit, dass genau n der 20 Studien erfolgreich waren?

Gibt es eine bessere Möglichkeit, diese Wahrscheinlichkeiten zu berechnen, als einfach die Kombinationen von Erfolgs- und Misserfolgswahrscheinlichkeiten zusammenzufassen?

Maha123
quelle

Antworten:

12

Die Distribution, nach der Sie fragen, heißt Poisson Binomial-Distribution mit ziemlich kompliziertem pmf (siehe Wikipedia für eine breitere Beschreibung).

Pr(X=x)=AFxiApijAc(1pj)

Im Allgemeinen besteht das Problem darin, dass Sie diese Gleichung nicht für eine größere Anzahl von Versuchen verwenden können (im Allgemeinen, wenn die Anzahl der Versuche überschreitet ). Es gibt auch andere Methoden zur Berechnung der pmf, z. B. rekursive Formeln, die jedoch numerisch instabil sind. Der einfachste Weg, um diese Probleme zu umgehen, sind Approximationsmethoden (beschrieben z. B. von Hong, 2013 ). Wenn wir definierenn=30

μ=i=1npi

σ=i=1npi(1pi)

γ=σ3i=1npi(1pi)(12pi)

dann können wir pmf mit der Poisson-Verteilung über das Gesetz der kleinen Zahlen oder den Satz von Le Cams approximieren

Pr(X=x)μxexp(μ)x!

aber es sieht, dass sich die Binomialnäherung im Allgemeinen besser verhält ( Choi und Xia, 2002 )

Pr(X=x)Binom(n,μn)

you can use Normal approximation

f(x)ϕ(x+0.5μσ)

or cdf can be approximated using so-called refined Normal approximation (Volkova, 1996)

F(x)max(0, g(x+0.5μσ))

where g(x)=Φ(x)+γ(1x2)ϕ(x)6.

Another alternative is of course a Monte Carlo simulation.

Simple dpbinom R function would be

dpbinom <- function(x, prob, log = FALSE,
                    method = c("MC", "PA", "NA", "BA"),
                    nsim = 1e4) {

  stopifnot(all(prob >= 0 & prob <= 1))
  method <- match.arg(method)

  if (method == "PA") {
    # poisson
    dpois(x, sum(prob), log)
  } else if (method == "NA") {
    # normal
    dnorm(x, sum(prob), sqrt(sum(prob*(1-prob))), log)
  } else if (method == "BA") {
    # binomial
    dbinom(x, length(prob), mean(prob), log)
  } else {
    # monte carlo
    tmp <- table(colSums(replicate(nsim, rbinom(length(prob), 1, prob))))
    tmp <- tmp/sum(tmp)
    p <- as.numeric(tmp[as.character(x)])
    p[is.na(p)] <- 0

    if (log) log(p)
    else p 
  }
}

Die meisten Methoden (und mehr) sind auch im R- Poibin- Paket implementiert .


Chen, LHY (1974). Zur Konvergenz von Poisson-Binomial- zu Poisson-Verteilungen. The Annals of Probability, 2 (1), 178-180.

Chen, SX und Liu, JS (1997). Statistische Anwendungen der Poisson-Binomial- und bedingten Bernoulli-Verteilungen. Statistica Sinica 7, 875 & ndash; 892.

Chen, SX (1993). Poisson-Binomial-Verteilung, bedingte Bernoulli-Verteilung und maximale Entropie. Technischer Bericht. Institut für Statistik, Harvard University.

Chen, XH, Dempster, AP und Liu, JS (1994). Gewichtete endliche Populationsstichprobe zur Maximierung der Entropie. Biometrika 81, 457 & ndash; 469.

Wang, YH (1993). Über die Anzahl der Erfolge in unabhängigen Studien. Statistica Sinica 3 (2): 295 & ndash; 312.

Hong, Y. (2013). Zur Berechnung der Verteilungsfunktion für die Poisson-Binomialverteilung. Computational Statistics & Data Analysis, 59, 41-51.

Volkova, AY (1996). Eine Verfeinerung des zentralen Grenzwertsatzes für Summen unabhängiger Zufallsindikatoren. Wahrscheinlichkeitstheorie und ihre Anwendungen 40, 791-794.

Choi, KP und Xia, A. (2002). Annäherung an die Anzahl der Erfolge in unabhängigen Studien: Binomial versus Poisson. The Annals of Applied Probability, 14 (4), 1139-1148.

Le Cam, L. (1960). Ein Approximationssatz für die Poisson-Binomialverteilung. Pacific Journal of Mathematics 10 (4), 1181–1197.

Tim
quelle
0

Ein Ansatz besteht darin, Erzeugungsfunktionen zu verwenden. Die Lösung für Ihr Problem ist der Koeffizientxn im Polynom

ich=120(pichx+1- -pich).

Dies ist das dynamische Programmieräquivalent (quadratische Zeit in der Anzahl der Bernoulli-Variablen) für die Summierung in der Poisson-Binomialverteilung aus Tims Antwort (die exponentielle Zeit wäre).

Neil G.
quelle