在发生多次之前以已知概率重复事件多少次

机器算法验证 可能性
2022-04-07 20:30:24

如果我有一个已知的事件发生概率,1% 的机会,并且我需要该事件发生多次,120 次,那么在我期望它发生该次数之前,我必须重复该事件多少次次?

4个回答

考虑一个序列n具有成功概率的独立试验p. X是成功的次数n试验。然后X具有带参数的二项分布np. 二项式 rv 的期望值为E(X)=np. 一种简单的方法是将其设置为120并解决n. 自从p=0.01, 我们有n(0.01)=120意思就是n=12,000预计试验将获得120成功。


或者,这是一种相关的方法,它给出了观察所需的试验次数r=120有一定概率的成功γ(IEγ=0.95)。

考虑一系列具有成功概率的独立试验p. X是观察所需的试验次数r成功。然后X具有带参数的负二项分布rp. 在你的情况下,XNegative-Binomial(120,0.01), 你想找到x这样

P(Xx)=γ.

虽然负二项分布没有封闭形式的分位数函数,但这个x可以轻松解决。例如,可以通过在 R 中键入以下内容来获得答案:qnbinom(.95, 120, .01)答案x=13728表示13,728试验需要有 95% 的机会观察到120(或更多)成功。

首先,我将假设实验是独立的,因为你说成功的可能性总是 1%。您问题中的关键字是“预期”,这意味着我们将寻找平均值或预期值。

如果您对试验次数感兴趣X(具有常见的成功概率p),需要获得r成功,那么您可以将其建模为具有概率质量函数的负二项式随机变量:

fX(x|r,p)=(x1r1)pr(1p)xr

对于x=r,r+1,...,

负二项式的期望值众所周知为:

E(X)=rp

在您的情况下,次成功所需的实验独立试验的预期数量(次)简单地由p=0.01r=120120120/0.01=12,000

正如其他人所指出的那样,成功次数足够多的机会将遵循负二项分布。绘制它很有用,您可以在 R 中使用以下命令执行此操作:

plot(function(x) pnbinom(x,120,0.01),120,20000)

这使:

负二项分布

正如您所看到的,它具有 S 形形状,并且有很大的区域几乎没有机会并且几乎可以确定,并且两者之间的快速转换接近预期值。因此,增加试验次数可能对实现目标的机会影响很小或影响很大,具体取决于您已经决定的次数。

如果你按轨迹数(即每次试验的平均机会)缩放这个函数,你可以看到有一个明显的最大值,

plot(function(x) pnbinom(x,120,0.01)/x,120,20000)

每次试验的平均机会

您可以通过以下方式识别:

optimise(function(x) pnbinom(x,120,0.01)/x,c(120,20000),maximum=TRUE)
$maximum
[1] 13888

$objective
[1] 6.929301e-05

正如 knrumsey 所说,成功的数量将遵循二项分布,但除非您需要较高的精度,否则 1% 是一个足够小的数字,您可以使用 \lambda=120\frac{1 的泊松λ=1201%99%=1.2121