本文主要是介绍如何深刻理解从二项式分布到泊松分布,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
泊松镇贴
二项分布和泊松分布的表达式
二项分布:
P ( x = k ) = C n k p k ( 1 − p ) n − k P(x=k) = C_n^kp^k(1-p)^{n-k} P(x=k)=Cnkpk(1−p)n−k
泊松分布:
P ( x = k ) = λ k k ! e − λ P(x=k) = \frac{\lambda^k}{k!}e^{-\lambda} P(x=k)=k!λke−λ
一个现实生活中的例子
一条汽车单向行驶的公路边有个便利店,店家经过一周的统计,得到数据:上个周一共有100辆次的车从这个便利店通过,其中有5辆次的车来买了东西。那么,店家现在想用这个数据来推测,下周,有6辆次的车会在这个便利店买东西的概率是多少?
现在,假设我们只知道二项分布而对泊松分布一无所知,我们如何通过构建二项分布的数学模型来解决这个问题呢?
这是二项分布的经典场景。对于通过的每一辆车,它只有两种可能的观测结果,那就是买东西和不买东西。这是一个 0-1 分布。现在我们做一个假设,假设每辆车通过时停下来买东西的概率是一样的(这样做假设不会影响整体的推测,因为做统计时,我们只统计了通过的车的总辆次和停下来买东西的车的总次数,也就是说做统计时每辆车是没有区别的)。通过买东西的车的总辆次 / 通过的车的总辆次,我们能得到每一辆车的 0-1 分布,任意一辆车停下来买东西的概率 P 为: 5 100 = 0.05 \frac{5}{100}=0.05 1005=0.05
行为 | 买东西 | 不买东西 |
---|---|---|
P | 0.05 | 0.95 |
现在,我们已经通过对之前统计的数据的分析,知道了任意一辆车通过时停下来买东西的概率。如何通过这个0-1分布来做预测?那就做独立重复实验(也就是伯努利试验),假设有 n 辆车在下个周通过该路口,每辆车停下来买东西的概率都是 p,则有 k 辆车到商店买东西的概率为:
P ( x = k ) = C n k p k ( 1 − p ) n − k P(x=k) = C_n^kp^k(1-p)^{n-k} P(x=k)=Cnkpk(1−p)n−k
为此,我们必须颇为无奈地对下个周通过这条路的车的总辆次做个假设,那就是也通过100辆。现在我们就能做预测啦!
P ( x = 6 ) = C 100 6 × 0.0 5 6 × ( 1 − 0.05 ) 100 − 6 ≈ 0.15 P(x=6) = C_{100}^{6}\times0.05^{6}\times(1-0.05)^{100-6} \approx 0.15 P(x=6)=C1006×0.056×(1−0.05)100−6≈0.15
如果以时间为维度来考量,二项分布就会出问题
上一种通过二项分布来做预测的方法,依赖于我们需要做一个假设,即下一个周通过这条路的车的总辆次是100辆。现在我们想绕过需要对总辆次做假设这一障碍,用时间来作为观察的基准。但是因为二项分布所对应的伯努利实验的每一次实验是零散的,所以不得不将连续的时间进行分割。这就要涉及到单位时间,我们不妨把单位时间设置成小时,1周 = 7 × 24 = 168 7 \times 24 = 168 7×24=168 小时。根据之前的观察,一共有 5 辆车次的车去到商店买东西,也就是说,每小时有车进商店买东西的概率为 P = 5 168 ≈ 0.02976 P=\frac{5}{168}\approx 0.02976 P=1685≈0.02976。好像,我们又可以像上面那样去建立一个关于单位时间的0-1分布了。但是其实这个模型缺陷就出来了,由于考察的对象是单位时间,它的结果不再只有两个,即该时间段进入商店买东西的车的数量除了0、1,还可能是2、3、4、…,所以其实用0-1分布来对单位时间进入商店的车的数量进行模拟是不太科学的。
那怎么办呢?自然而然,会想到将单位时间继续分割为更小的单位时间,如果把小时分割为分钟,那每分钟就可以做60次独立重复实验,也就是说这下每分钟最多可以有60辆车进入商店买东西了。但是这样仍然不满足时间这个连续的度量,要是出现极端情况,每分钟有70辆车进入商店呢,这个模型又没法满足了。自然而然,我们想到将时间无限的分割下去。在非常非常小的一段时间里,我们就能做0-1分布的假设了,即在这段时间里只有 0 或 1 辆车进入商店买东西。但是无限的分割时间之后,我们还怎么计算这个无穷小的单位时间里车进入商店的概率呢?答案是,根本就不用去计算。因为我们的观测量是一个周汽车进入商店的辆次的总数,不妨把它记为 λ \lambda λ,它满足下面的等式:
λ = n p \lambda = n p λ=np
其中 n 为将一周的时间无限分割成的无穷小的单位时间的总份数,而 p 是分割成这么多份数之后,根据观测值 λ \lambda λ 所计算出来的该单位时间里有车辆进入商店的概率。
从二项式公式推导泊松公式
P ( X = k ) = lim n → ∞ C n k p k ( 1 − p ) n − k = lim n → ∞ C n k ( λ n ) k ( 1 − λ n ) n − k = lim n → ∞ n × ( n − 1 ) × ⋯ × ( n − k + 1 ) k ! ( λ n ) k ( 1 − λ n ) n ( 1 − λ n ) − k = lim n → ∞ n × ( n − 1 ) × ⋯ × ( n − k + 1 ) n × n × ⋯ × n λ k k ! ( 1 − λ n ) − k ( 1 − λ n ) n = 1 × λ k k ! × 1 × e − λ = λ k k ! e − λ \begin{align*} P(X=k) & = \lim_{n\rightarrow\infty}C_n^kp^k(1-p)^{n-k}\\ &= \lim_{n\rightarrow\infty}C_n^k(\frac{\lambda}{n})^k(1-\frac{\lambda}{n})^{n-k}\\ &= \lim_{n\rightarrow\infty}\frac{n\times(n-1)\times\cdots\times(n-k+1)}{k!}(\frac{\lambda}{n})^k(1-\frac{\lambda}{n})^{n}(1-\frac{\lambda}{n})^{-k}\\ &=\lim_{n\rightarrow\infty}\frac{n\times(n-1)\times\cdots\times(n-k+1)}{n\times n\times\cdots\times n}\frac{\lambda^k}{k!}(1-\frac{\lambda}{n})^{-k}(1-\frac{\lambda}{n})^{n}\\ &= 1\times \frac{\lambda^k}{k!} \times 1 \times e^{-\lambda} \\ &= \frac{\lambda^k}{k!}e^{-\lambda} \end{align*} P(X=k)=n→∞limCnkpk(1−p)n−k=n→∞limCnk(nλ)k(1−nλ)n−k=n→∞limk!n×(n−1)×⋯×(n−k+1)(nλ)k(1−nλ)n(1−nλ)−k=n→∞limn×n×⋯×nn×(n−1)×⋯×(n−k+1)k!λk(1−nλ)−k(1−nλ)n=1×k!λk×1×e−λ=k!λke−λ
推导之后我们发现,其实根本不需要用到 n 和 p 这两个数据,而只有观测值 λ \lambda λ。到这里是不是觉得泊松大大干了一件非常有价值的事情!
通过泊松分布来对这个问题进行预测
根据之前的统计, λ = 5 \lambda = 5 λ=5
P ( X = 6 ) = 5 6 6 ! e − 5 ≈ 0.1462 P(X=6) = \frac{5^6}{6!}e^{-5} \approx 0.1462 P(X=6)=6!56e−5≈0.1462
总结
根据二项分布推导出了泊松分布,并不代表二项分布就没有泊松分布先进,只是对于解决连续时间的这种问题,显然泊松分布更好用。但是有些情况下,二项分布会更好用。
这篇关于如何深刻理解从二项式分布到泊松分布的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!