第三章离散概率分布的实例
3.1 离散均匀分布
离散均匀分布是指对于个事件{
},他们发生的概率都相同的概率分布,记作
{
},因此很好理解,它的概率密度函数为
由级数公式,可得:
可得{
}的期望和方差为
下面给出上式的证明:
所以
下面对方差进行证明
所以
下面通过matplotlib为读者展示均匀分布的概率分布图
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
N=10
y=np.array([1/N for i in range(N)])
plt.bar(range(len(y)),y)
plt.title("uniform distribution")
plt.show()
3.2 二项分布
要介绍二项分布,首先要介绍伯努利试验。
伯努利试验是一个具有两种可能结果的独立重复的试验,试验结果为成功或失败。独立且重复地掷一枚相同的硬币是一个典型的伯努利试验。令为试验成功的概率,那
为试验失败的概率。二项分布是指
次伯努利试验中试验成功的次数
的概率分布,用
表示。由上述定义可知,二项分布的概率密度函数为:
二项分布的期望和方差:
下面对上式进行证明:
所以的矩量母函数为:
将上式代入二项式定理的推导结果:
下面通过matplotlib为读者展示二项分布的概率分布图
from scipy.special import comb,perm
n=10
p=0.5
def f(x):
return p**x*(1-p)**(n-x)*comb(n,x)
x=np.arange(0,10)
y=np.array(list(map(f,x)))
plt.bar(x,y)
plt.title("Binomial distribution")
plt.show()
3.3 超几何分布
考虑一个摸球的场景,一个包里有个球,其中
个球为
,
个球为
,从中取出
个球。在该情况下,有两种取球的方案,第一种是有放回采样,另一种是无放回采样。
可以想象,在有放回采样的情况下,一个球总是从全部的个球中抽取。采样的过程相当于伯努利试验,因此抽
个球,含有
个
球的概率分布可表示为
而在无放回的情况下,包里球的数量随试验的进行而不断减少。因此,球与
球的数量之比取决于历次抽样情况。在这种情况下,抽取
个球,含有
个
球的概率分布称为超几何分布,记作
从个
球中取出
个
球的组合数为
,从
个B球中取出
个B球的组合数为
,以及从
个球中取出
个球的组合数
,将上述因子结合,可得
的概率分布函数为:
给出的期望和方差:
下面给出上式的证明:
因为概率密度函数满足,所以有:
可得:
可得
将代入
可得
方差可表示为
对期望的推导与上面类似,用式可得:
将其代入可得:
下面通过matplotlib为读者展示超几何分布的概率分布图
N=100
M=50
n=10
def f(x):
return comb(M,x)*comb(N-M,n-x)/comb(N,n)
x=np.arange(0,10)
y=list(map(f,x))
plt.bar(x,y)
plt.title("Hypergeometric distribution")
plt.show()
3.4 泊松分布
如果在伯努利试验中,试验成功的概率非常小,小到几乎每次试验都已失败告终。尽管成功的概率极其小,只要试验的次数足够多,伯努利试验总会成功几次的。确实,已知二项分布
,那么当重复伯努利试验的次数
,成功的概率
时,期望为
,即平均有三次试验成功。
这意味着,只要试验的次数足够多,试验成功次数非零的概率也不会那么小。那么我们更为精确地给出二项分布的概率密度函数
那么的概率为
很明显,计算的代价十分昂贵。但若用近似值,易得值为
,但正确的值约为
,因此,这是非常粗略的近似。
可以用泊松小数定律来解决这个问题:对于,
啊这,这个定律非常神妙,这俺就不证明了(因为俺证不出来~)
那么这个概率分布因此被称为泊松分布,记为,它的概率分布函数为
它的期望和方差都是
下面通过matplotlib为读者展示泊松分布的概率分布图
lamb=10
def f(x):
return np.e**(-lamb)*lamb**x/perm(x,x)
x=np.arange(0,20)
y=list(map(f,x))
plt.bar(x,y)
plt.title("Poisson distribution")
plt.show()
3.5 负二项分布
让我们考虑试验成功概率为的伯努利试验。直到第
次试验成功时,试验失败的次数
服从负二项分布,记为
既然在次试验中要有
次试验成功,那么第
次试验总是成功的。此外,在前
次试验中有
次试验失败的组合数为
。将这些组合到一起,可得
的概率密度函数
的期望和方差为:
下面通过matplotlib为读者展示负二项分布的概率分布图
k=5
p=0.4
def f(x):
return comb(k+x-1,x)*p**k*(1-p)**x
x=np.arange(0,30)
y=list(map(f,x))
plt.bar(x,y)
plt.title("Negative binomial distribution")
plt.show()
3.6 几何分布
让我们考虑试验成功概率为的伯努利试验。直到第一次试验成功时,试验失败的次数服从几何分布,即
时的负二项分布,因此它的概率密度函数为
将代入
,可得它的矩量母函数为
对其求导得
下面通过matplotlib为读者展示几何分布的概率分布图
p=0.3
def f(x):
return p*(1-p)**x
x=np.arange(0,10)
y=list(map(f,x))
plt.bar(x,y)
plt.title("Geometric distribution")
plt.show()