如何从二项分布中抽取样本 - 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

相关推荐
冬奇Lab9 分钟前
一天一个开源项目(第72篇):everything-claude-code - 最系统化的 Claude Code 增强框架
人工智能·开源·资讯
火山引擎开发者社区9 分钟前
ArkClaw:以 SLI 度量驱动,构建新一代 Agent 全链路可观测体系
人工智能
运维行者_13 分钟前
OpManager MSP NetFlow Analyzer集成解决方案,应对多客户端网络流量监控挑战
大数据·运维·服务器·网络·数据库·自动化·运维开发
渣渣xiong32 分钟前
从零开始:前端转型AI agent直到就业第五天-第十一天
前端·人工智能
happyprince2 小时前
2026年04月12日热门Model/github项目
人工智能
网教盟人才服务平台2 小时前
AI 全面重塑网络攻防生态,智能安全进入深度对抗时代
网络·人工智能·安全
w_t_y_y2 小时前
python类库(二)输出解析
人工智能
sinat_286945192 小时前
AI Coding 时代的 TDD:从理念到工程落地
人工智能·深度学习·算法·tdd
ASKED_20192 小时前
从排序到生成:腾讯广告算法大赛 2025 baseline解读
人工智能·算法