机器学习储备(12):二项分布的例子解析

来源:互联网 发布:开淘宝店物流怎么解决 编辑:程序博客网 时间:2024/06/05 18:59

请点击上面公众号,免费订阅。 

交流思想,注重分析,更注重通过实例让您通俗易懂。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!



01

二项分布

如果实验满足以下两种条件:

  1. 在每次试验中只有两种可能的结果,而且两种结果发生与否互相对立;

  2. 相互独立,与其它各次试验结果无关;

  3. 事件发生与否的概率在每一次独立试验中都保持不变。

则实验的结果对应的分布为二项分布。


当试验次数为1时,二项分布服从0-1分布。



02

例子解析

例如,一堆苹果有好的,有坏的,从中取10次,定义随机变量:从中取得好苹果的个数 X,那么认为X服从二项分布。


实验得到的结果:比如经过10次实验后分布结果为:7好,3坏;再经过10次实验后分布结果为:8好,2坏。经过这20次实验,可以根据最大似然估计求出我们可求出二项分布的参数theta:从这堆苹果中取到一个好苹果的概率。


因为在我们所做的20次实验中,出现了15好,5坏,因此一次取到好苹果概率为:15/20 = 0.75,根据最大似然估计的精神,认为从整个样本中取到一个好苹果的概率也为:0.75。


下面看下,出现这种分布的概率有多大,由二项分布的概率计算公式:

其中:k表示出现好苹果的个数,p表示一次实验出现好苹果的概率

k的取值范围为:0~m,最小值为0个好苹果,最大值为m个好苹果(所有的都是好苹果)。




03

二项分布图

在以上我们的20次随机试验中,最终得到了15个好果,那么如果依次看下好苹果的个数 k = 0~20,它们的各自的分布概率P,变化曲线图是怎样的呢?


为此在Jupyter NoteBook中实验下,


#计算组合数

from scipy.special import comb, perm

import numpy as np

import matplotlib.pyplot as plt


#二项分布概率计算公式

def getp(m,n,pa):

    if m < n:

        return 0.0

    return comb(m,n)*(pa**n)*((1-pa)**(m-n))


#获得画图数据

klist = np.arange(21)

plist = [ getp(m=20,n=k,pa=0.75) for k in  klist]

plt.plot(klist,plist)

plt.xlabel('number of good apples')

plt.ylabel('k-distribution proba')

plt.title('distribution proba')

plt.xticks(np.arange(0,22,1))

plt.grid()

plt.show()



最终得到的二项分布图如下:可以看到在k = 15时,取得概率的最大值为0.2,也就是说在取到15个好苹果的概率是最大的。


取到0~8个好果的概率是很低的,但是取到19,20个好果的概率同样也是很低的


说明一点:

  • 在这20个苹果分布中,我们对所取得的好果的个数的期望值:20*0.75=15个,可以看到上面的二项分布图在 k = 15即取得15个好果的概率是最大的,言外之意,期望值就是分布中最有可能发生的那个分布吧:15好果,5坏果。


04

二项分布总结

二项分布是随机变量为离散型随机变量且当试验次数为1时服从0-1分布,它是重复n次的独立的伯努利试验。这种分布下,对个数的期望等于二项分布中概率发生最大的取值个数。

谢谢您的阅读。


请记住:每天一小步,日积月累一大步!


交流思想,注重分析,更注重通过实例让您通俗易懂。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!



阅读全文
0 0
原创粉丝点击