本文始发于个人公众号:TechFlow,原创不易,求个关注
今天是概率统计专题的第5篇文章,这篇文章的出现意味着高等数学专题我们已经告一段落了。高数当中剩下的内容还有很多,比如多重积分、微分方程求解等等内容。但对于算法领域来说,基本的微积分已经基本足够了,所以我们就不再继续往下延伸,如果以后有相关的内容涉及,我们再来开文章单讲。
我们这篇文章的内容关于统计学中的泊松分布。
举个栗子
泊松分布在概率统计当中非常重要,可以很方便地用来计算一些比较难以计算的概率。很多书上会说,泊松分布的本质还是二项分布,泊松分布只是用来简化二项分布计算的。从概念上来说,这的确是对的,但是对于我们初学者,很难完全理解到其中的精髓。
所以让我们来举个栗子,来通俗地理解一下。
假设我们有一颗栗子树,有时候因为风或者是小动物活动的关系,树上可能会掉下栗子来,树上掉栗子显然是一棵偶然事件,并且发生的概率很低,那么我们怎么求它的概率分布呢?泊松分布解决的就是这样一个问题。
好像没有一个模型可以直接来刻画这个问题,必须要经过一些转化。
其实我们可以将事件切分,将这个问题转化成二项分布问题。
比如我们把一天的时间切分成了若干份,这样对于每一份时间来说,是否会有栗子掉下来,就是一个是否会发生的事件。于是这就成了一个二项分布问题。理论上来说不会有两颗栗子掉下的时间完全一样,所以只要我们将时间切分得足够细,就可以保证一段时间之中最多只会掉下一个栗子(否则就不满足二项分布)。
假设我们把一天的时间切分成了n份,我们想知道一天当中会有k个栗子掉下的概率,根据二项分布的公式,这个概率就是:
到这里,我们往前迈出了坚实的一步,写出了概率的表达式。
推导泊松分布
我们虽然有了式子,但是好像没什么用,因为我们只知道p是单位时间内有栗子掉下的概率,我们怎么知道这个概率是多大呢?难道还真的去测量吗?
要解决这个问题,还得回到二项分布。我们可以利用二项分布求一下每天掉下栗子数量的期望,显然对于每一个单位时间而言,发生栗子掉落的概率是p,所以整体的期望是:
我们令这个值是(lambda),那么根据这个式子,我们可以表达出p了。
我们把这个p的式子带入原式,可以得到:
前面说了,为了满足二项分布,我们需要让单位时间尽量小,防止会有同一时刻掉下两个栗子的情况发生。所以这个n应该越大越好,我们可以用上之前学过的极限,让n趋向于无穷,所以这个问题就变成了一个求极限的问题。
我们来算一下这个极限:
我们把这个极限拆分开来看,其中:
所以,我们代入,可以得到:
这个就是泊松分布的概率密度函数了,也就是说在一天当中掉下k个例子的概率就是(frac{lambda^k}{k!}e^{-lambda})。
也就是说泊松分布是我们将时间无限切分,然后套用二项分布利用数学极限推导出来的结果。本质上来说,它的内核仍然是二项分布。使用泊松分布的原因是,当n很大,p很小的时候,我们使用二项分布计算会非常困难,因为使用乘方计算出来的值会非常巨大,这个时候,我们使用泊松分布去逼近这个概率就很方便了。
结尾和升华
我们根据推导出来的结果,感觉只要是n很大,并且p很小的场景都可以使用泊松分布。但是这毕竟只是一个感性的认知,在统计学上对于这个问题也是有严谨定义的。我们来看一下严谨的使用条件的限制,大概是这么三条。
- 当我们将时间进行无线切分之后,在接近于0的时间段内事件发生的概率与时间成正比。
- 在每一段无限小的时间段内,同一事件发生两次的概率无限接近于0
- 在不同的时间段内,事件是否发生互相独立
最后,我们看一道书上的例题,实际感受一下泊松分布的应用。假设我们有一批零件,它的次品率是0.1%,也就是千分之一。请问我们生产一千个产品当中至少有两件次品的概率?
这道题应该很简单,要求两件及以上次品的概率,我们只需要计算出只有零件和一件次品的概率,然后用1减去它们即可。我们首先根据n和p算出(lambda):
我们带入泊松分布的公式:
如果我们要用二项分布来计算,那么就需要计算0.999的一千次方了,这显然是非常复杂的,这也是泊松分布的意义。
今天的文章就到这里,原创不易,关注我,获取更多优质文章