机器学习储备(12):二项分布的例子解析
来源:互联网 发布:贵州大数据战略 编辑:程序博客网 时间:2024/06/07 14:10
01
—
二项分布
如果实验满足以下两种条件:
在每次试验中只有两种可能的结果,而且两种结果发生与否互相对立;
相互独立,与其它各次试验结果无关;
事件发生与否的概率在每一次独立试验中都保持不变。
则实验的结果对应的分布为二项分布。
当试验次数为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, permimport numpy as npimport 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次的独立的伯努利试验。这种分布下,对个数的期望等于二项分布中概率发生最大的取值个数。
谢谢您的阅读。
- 机器学习储备(12):二项分布的例子解析
- 机器学习储备(12):二项分布的例子解析
- 机器学习储备(13):概率密度和高斯分布例子解析
- 机器学习储备(1):协方差和相关系数
- 机器学习储备(9):matplotlib绘图原理及实例
- 机器学习储备(10):numpy之RandomState() 和 axis
- 机器学习储备(9):matplotlib绘图原理及实例
- 机器学习储备(8):numpy之linspace 和 logspace
- 机器学习储备(11):说说离散型随机变量
- 机器学习储备(11):说说离散型随机变量
- 关于储备(应急储备、管理储备、储备分析)的总结讨论
- 关于储备(应急储备、管理储备、储备分析)的总结讨论
- 机器学习储备(7):numpy一维数组和矩阵
- 二项分布的实现(np.random.binomial)
- 二项分布的实现(np.random.binomial)
- Netty学习前的知识储备
- 关于学习 unity3D 的知识预储备
- 学习网页前的网页知识储备
- 机器学习的分类
- HDU
- PHP strip_tags() 函数的作用和用法
- 轮廓图
- Insertion Sort List--LeetCode
- 机器学习储备(12):二项分布的例子解析
- Mastering AWS Development.pdf 英文原版 免费下载
- ubuntu 手动更新源 以及使用sudo update与upgrade的作用及区别
- stm32-串口接受不定长数据方法(3种)
- linux文件描述符分配实现详解(基于ARM处理器)
- [spm操作] 用SPM批量处理多个被试多个run的初步介绍
- Android安卓——service组件
- cmd无法打开ride页面
- linux的多线程预习