Poisson binomial distribution

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Poisson binomial
Parameters \mathbf{p}\in [0,1]^n — success probabilities for each of the n trials
Support k ∈ { 0, …, n }
pmf \sum\limits_{A\in F_k} \prod\limits_{i\in A} p_i \prod\limits_{j\in A^c} (1-p_j)
CDF \sum\limits_{l=0}^k \sum\limits_{A\in F_l} \prod\limits_{i\in A} p_i \prod\limits_{j\in A^c} (1-p_j)
Mean \sum\limits_{i=1}^n p_i
Variance  \sigma^2 =\sum\limits_{i=1}^n (1 - p_i)p_i
Skewness \frac{1}{\sigma^3}\sum\limits_{i=1}^n ( 1-2p_i ) ( 1-p_i ) p_i
Ex. kurtosis \frac{1}{\sigma^4}\sum\limits_{i=1}^n ( 1 - 6(1 - p_i)p_i )( 1 - p_i )p_i
MGF \prod\limits_{j=1}^n (1-p_j+p_j e^t)
CF \prod\limits_{j=1}^n (1-p_j+p_j e^{it})

In probability theory and statistics, the Poisson binomial distribution is the discrete probability distribution of a sum of independent Bernoulli trials that are not necessarily identically distributed. The concept is named after Siméon Denis Poisson.

In other words, it is the probability distribution of the number of successes in a sequence of n independent yes/no experiments with success probabilities p_1, p_2, \dots , p_n. The ordinary binomial distribution is a special case of the Poisson binomial distribution, when all success probabilities are the same, that is p_1 = p_2 = \cdots = p_n.

Mean and variance

Since a Poisson binomial distributed variable is a sum of n independent Bernoulli distributed variables, its mean and variance will simply be sums of the mean and variance of the n Bernoulli distributions:

\mu = \sum\limits_{i=1}^n p_i
\sigma^2 =\sum\limits_{i=1}^n (1-p_i) p_i

For fixed values of the mean (\mu) and size (n), the variance is maximal when all success probabilities are equal and we have a binomial distribution. When the mean is fixed, the variance is bounded from above by the variance of the Poisson distribution with the same mean which is attained asymptotically as n tends to infinity.

Probability mass function

The probability of having k successful trials out of a total of n can be written as the sum [1]

\Pr(K=k) = \sum\limits_{A\in F_k} \prod\limits_{i\in A} p_i \prod\limits_{j\in A^c} (1-p_j)

where F_k is the set of all subsets of k integers that can be selected from {1,2,3,...,n}. For example, if n = 3, then F_2=\left\{ \{1,2\},\{1,3\},\{2,3\} \right\}. A^c is the complement of A, i.e. A^c =\{1,2,3,\dots,n\}\setminus A.

F_k will contain n!/((n-k)!k!) elements, the sum over which is infeasible to compute in practice unless the number of trials n is small (e.g. if n = 30, F_{15} contains over 1020 elements). However, there are other, more efficient ways to calculate \Pr(K=k).

As long as none of the success probabilities are equal to one, one can calculate the probability of k successes using the recursive formula [2] [3]

\Pr (K=k)= \begin{cases}
\prod\limits_{i=1}^n (1-p_i) &  k=0 \\ 
\frac{1}{k} \sum\limits_{i=1}^k (-1)^{i-1}\Pr (K=k-i)T(i) & k>0 \\ 
\end{cases}

where

 T(i)=\sum\limits_{j=1}^n \left( \frac{p_j}{1-p_j} \right)^i.

The recursive formula is not numerically stable, and should be avoided if n is greater than approximately 20. Another possibility is using the discrete Fourier transform [4]

\Pr (K=k)=\frac{1}{n+1} \sum\limits_{l=0}^n C^{-lk} \prod\limits_{m=1}^n \left( 1+(C^l-1) p_m \right)

where C=\exp \left( \frac{2i\pi }{n+1} \right) and i=\sqrt{-1}.

Still other methods are described in .[5]

Entropy

There is no simple formula for the entropy of a Poisson binomial distribution, but the entropy can be upper bounded by the entropy of a binomial distribution with the same number parameter and the same mean. Therefore, the entropy can also be upper bounded by the entropy of a Poisson distribution with the same mean. [6]

The Shepp-Olkin conjecture, due to Lawrence Shepp and Ingram Olkin in 1981, states that the entropy of a Poisson binomial distribution is a concave function of the success probabilities p_1, p_2, \dots , p_n. [7]

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.