目录
- 十一、狄利克雷分布(多项分布的共轭分布)(Dirichlet distribution)
- 十二、超几何分布(Hypergeometric Distribution)
- 十三、指数分布(Exponential Distribution)
常见的概率分布模型一、离散概率分布函数
离散概率分布也称为概率质量函数(probability mass function),离散概率分布的例子有
伯努利分布(Bernoulli distribution)
二项分布(binomial distribution)
泊松分布(Poisson distribution)
几何分布(geometric distribution)等
二、连续概率分布函数连续概率分布也称为概率密度函数(probability density function),它们是具有连续取值(例如一条实线上的值)的函数,连续概率分布的例子有
正态分布(normal distribution)
指数分布(exponential distribution)
β分布(beta distribution)等
三、联合分布函数给定一个随机变量(X,Y)(X,Y),称定义域为整个平面的二元实值函数
F(x,y)=P(X≤x,Y≤y)−∞≥x,y≤∞F(x,y)=P(X≤x,Y≤y)−∞≥x,y≤∞
该二元实值函数为随机变量(X,Y)(X,Y)的分布函数,也可以称为是(X,Y)(X,Y)的联合分布函数。
按照联合分布函数的定义,F(x,y)=P((X,Y)∈Dxy)F(x,y)=P((X,Y)∈Dxy),其中DxyDxy如下图所示
四、多项分布(Multinomial Distribution)4.1 多项分布简介
多项分布是二项分布的推广,他们的区别是二项分布的结果只有00和11两种,多项式的结果可以有多个值。
多项分布的典型例子是掷骰子,6个点对应6个不同的数,每个点的概率都为1616
与二项分布类似,多项分布来自于(p1+p2+⋯+pk)n多项式的展开(p1+p2+⋯+pk)n多项式的展开
4.2 多项分布公式解析
以掷骰子为例,掷骰子的时候掷1−61−6的概率都为1616,记作p1−p6p1−p6,可以发现p1+p2+p3+p4+p5+p6=1p1+p2+p3+p4+p5+p6=1,现在把p1+p2+p3+p4+p5+p6p1+p2+p3+p4+p5+p6记作做一次抽样各种事件发生的概率和,即可得(p1+p2+p3+p4+p5+p6)n=1n(p1+p2+p3+p4+p5+p6)n=1n为nn次抽样所有事件相互组合对应的概率和,之后使用多项式展开(注:使用多项式定理展开,由于多项式定理不在本节提及范围内,不多赘述),如果它不是掷骰子,而是一个有nn种可能的问题,会得到一个多项式展开的公式
P(X1=x1,…,Xk=xk)={n!x1!⋯xk!(px1⋯pxk)when∑ki=1xi=n0otherwiseP(X1=x1,…,Xk=xk)={n!x1!⋯xk!(px1⋯pxk)when∑i=1kxi=n0otherwise
这个多项式表示X1X1出现x1x1次,X2X2出现x2x2次,……,XkXk出现xkxk次的出现概率,这样就得到了上述所示的多项分布的多项展开式公式。
五、伯努利分布(Bernoulli Distribution)5.1 伯努利分布简介
伯努利分布是一个二值离散分布,结果只有00和11两种。
随即变量XX为11的概率为pp,则为00的概率为q=1−pq=1−p,可以用公式表示为
f(x)=px(1−p)1−x={p,x=11−p,x=0f(x)=px(1−p)1−x={p,x=11−p,x=0
5.2 伯努利分布的期望值和方差
伯努利分布的期望值为
E(X)=∑i=01xif(x)=1∗p+0∗(1−p)=p+0=p(1)(2)(3)(4)(1)E(X)=∑i=01xif(x)(2)=1∗p+0∗(1−p)(3)=p+0(4)=p
伯努利分布的方差为
D(x)=∑i=01(xi−E(x))2f(x)=(1−E(x))2∗p+(0−E(x)2∗(1−p)=(1−p)2∗p+(0−p)2∗(1−p)=p−p2=p(1−p)=pq(5)(6)(7)(8)(9)(10)(5)D(x)=∑i=01(xi−E(x))2f(x)(6)=(1−E(x))2∗p+(0−E(x)2∗(1−p)(7)=(1−p)2∗p+(0−p)2∗(1−p)(8)=p−p2(9)=p(1−p)(10)=pq
6.1 正态分布的概率密度函数图像
其中红线表示的是标准正态分布图像。
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
%matplotlib inline
mu1 = 0
sig1 = 1
mu2 = 0
sig2 = 2
x = np.arange(-5, 5, 0.1)
y1 = stats.norm.pdf(x, mu1, sig1)
y2 = stats.norm.pdf(x, mu2, sig2)
plt.plot(x, y1, 'r-', label='\(\mu=0,\sigma^2=1\)')
plt.plot(x, y2, 'b-', label='\(\mu=0,\sigma^2=2\)')
plt.legend()
plt.show()
6.2 正态分布简介
正态分布也称作高斯分布,是最常见的一种分布,其概率密度函数为
f(x;μ,σ)=12πσ2−−−−√e(−(x−μ)22σ2)f(x;μ,σ)=12πσ2e(−(x−μ)22σ2)
如果一个随即变量XX服从该分布,可以写作X N(μ,σ2)N(μ,σ2)X N(μ,σ2)N(μ,σ2)。
当μ=0,σ=1μ=0,σ=1时的正态分布称作标准正态分布,这个分布能简化为
f(x)=12π−−√exp(−x22)f(x)=12πexp(−x22)
标准正态分布曲线区间面积计算
f(|x−μ|<σ)=0.6826f(|x−μ|<2σ)=0.9544f(|x−μ|<3σ)=0.9974f(|x−μ|<σ)=0.6826f(|x−μ|<2σ)=0.9544f(|x−μ|<3σ)=0.9974
6.3 中心极限定理与正态分布
- 中心极限定理1:把许多未知的小作用加起来看作一个变量,这个变量服从正态分布
- 中心极限定理2:“大量统计独立的随即变量的和”的分布趋于正态分布
7.1 泊松分布的概率质量函数图像
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
%matplotlib inline
lambd = 2.5
x = np.arange(0, 10)
y = stats.poisson.pmf(x, lambd)
plt.plot(x, y, label='\(\lambda=2.5\)')
plt.legend()
plt.show()
8.1 二项分布的概率质量函数图像
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
%matplotlib inline
n = 8
p = 0.4
x = np.arange(0, 20)
y = stats.binom.pmf(x, n, p)
plt.plot(x, y, 'o-', label='\(n=8,p=0.4\)')
plt.legend()
plt.show()
8.2 二项分布简介
二项分布是nn次独立的二值实验(伯努利实验)中成功的次数的离散值概率分布(nn次伯努利实验,一次伯努利实验得到一个伯努利分布)。
随机变量XX服从参数nn和pp的二项分布记作:B(n,p)B(n,p)。nn次实验中kk次成功的概率质量函数为
f(k;n,p)=Cknpk(1−p)n−kf(k;n,p)=Cnkpk(1−p)n−k
其中CknCnk是二项式系数:Ckn=n!k!(n−k)!Cnk=n!k!(n−k)!
二项分布来源于牛顿二项式
(a+b)n=∑k=0nCknakbn−k(a+b)n=∑k=0nCnkakbn−k
8.3 二项分布与伯努利分布
- 二项分布的期望是伯努利分布期望的nn倍
E(x)=npE(x)=np
- 二项分布的方差是伯努利分布方差的nn倍
D(x)=np(1−p)D(x)=np(1−p)
9.1 贝塔分布的概率密度函数图像
from scipy import stats
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
a = 0.4
b = 0.6
x = np.arange(0.01, 1, 0.01)
y = stats.beta.pdf(x, a, b)
plt.plot(x, y, label='a=0.4,b=0.6')
plt.show()
10.1 几何分布概率质量函数图像
十一、狄利克雷分布(多项分布的共轭分布)(Dirichlet distribution)十二、超几何分布(Hypergeometric Distribution)十三、指数分布(Exponential Distribution)13.1 指数分布概率密度函数图像
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
%matplotlib inline
lambd = 0.6
x = np.arange(0, 10, 0.1)
y = lambd * np.exp(-lambd*x)
plt.plot(x, y, label='\(\lambda=0.6\)')
plt.legend()
plt.show()