如何从二项分布中抽取样本 - binomial

binomial是从从二项分布中抽取样本。

这里尝试通过numpy.random.binomial从二项分布中抽取样本。

所用示例参考和修改自网络资料。

1 binomial定义

1.1 binomial公式定义

二项分布的概率质量函数 (PMF) 为

其中n是试验次数, p是成功概率, N是成功次数。

1.2 binomial适用场景

假设,p = 总体比例估计值,n = 样本数量,示例如下。

例如,一个包含 15 人的样本显示有 4 人是左撇子,11 人是右撇子。那么 p = 4/15 = 27%。

在使用随机样本估计总体比例估计值的标准误差时,一般情况会选择使用正态分布。

然而,如果当p*n <= 5,即总体比例估计值过小,这种情况下应该使用二项分布。

比如在上述例子中

p = 4/15 = 27%。0.27*15 = 4 < 5

因此在这种情况下应使用二项分布。

https://numpy.net.cn/doc/stable/reference/random/generated/numpy.random.binomial.html

2 binomial示例

这里通过python程序示例binomial的抽样估计过程。

2.1 分布中抽样

通过np.random.binomial,从分布中抽取样本。

假设每次抽样命中概率为p=0.5,重复n次估计,一共进行1000次抽样。

示例程序如下

n, p = 10, 0.5 # number of trials, probability of each trial

s = np.random.binomial(n, p, 1000)

result of flipping a coin 10 times, tested 1000 times.

2.2 抽样应用解析

这里给定一个真实的例子,描述如下。

一家公司钻探了 9 口探井,每口井的成功概率估计为 0.1。

所有九口井都失败了,这种情况发生的概率是多少?

计算程序如下所示

复制代码
sum(np.random.binomial(9, 0.1, 20000) == 0)/20000.
# answer = 0.38885, or 38%.

这里详细分步分析计算过程。

1)进行 20,000 次模型试验,示例如下

每次模型试验独立重复9次,单次命中概率0.1

整体进行20000次模型试验

np.random.binomial(9, 0.1, 20000)

输出如下

array([0, 1, ..., 4])

2)产生零个阳性结果,即九口井都失败了的次数

np.random.binomial(9, 0.1, 20000) == 0

输出

输出示例如下,由于是重新运行,所以数值和1)中输出的数值会不一致。

array([False, False, ..., False])

3)计算产生零个阳性结果的次数

sum(np.random.binomial(9, 0.1, 20000)==0)

输出如下,具体过程为

如果本次试验产生了0个阳性样本,则+1记录,然后继续检查统计下次试验。

np.int64(7735)

4)计算0阳性样本发生的概率

sum(np.random.binomial(9, 0.1, 20000) == 0)/20000.

输出如下,即为9次打井试验中0阳性发生的概率。

np.float64(0.38625)

reference


numpy.random.binomial

https://numpy.net.cn/doc/stable/reference/random/generated/numpy.random.binomial.html

如何用python模拟pass@k过程

https://blog.csdn.net/liliang199/article/details/155397143

相关推荐
Jay Kay43 分钟前
GVPO:Group Variance Policy Optimization
人工智能·算法·机器学习
风指引着方向1 小时前
归约操作优化:ops-math 的 Sum/Mean/Max 实现
人工智能·wpf
机器之心1 小时前
英伟达世界模型再进化,一个模型驱动所有机器人!机器人的GPT时刻真正到来
人工智能·openai
纯爱掌门人1 小时前
终焉轮回里,藏着 AI 与人类的答案
前端·人工智能·aigc
人工智能AI技术1 小时前
Transformer:大模型的“万能骨架”
人工智能
瑞华丽PLM1 小时前
电子行业国产PLM系统功能差异化对比表
大数据·plm·国产plm·瑞华丽plm·瑞华丽
uesowys2 小时前
Apache Spark算法开发指导-Factorization machines classifier
人工智能·算法
人工智能AI技术2 小时前
预训练+微调:大模型的“九年义务教育+专项补课”
人工智能
aircrushin2 小时前
中国多模态大模型历史性突破:智源Emu3自回归统一范式技术深度解读
人工智能
Lsx_2 小时前
前端视角下认识 AI Agent 和 LangChain
前端·人工智能·agent