通过抽样直到 10 次失败来估计伯努利过程中的概率:它有偏差吗?
机器算法验证
估计
伯努利分布
2022-01-22 02:09:12
3个回答
的确如此是有偏估计在某种意义上说,但你不应该让这阻止你。这个确切的场景可以用来批评我们应该始终使用无偏估计器的想法,因为这里的偏差更多是我们碰巧正在做的特定实验的产物。如果我们提前选择了样本数量,数据看起来与它们完全一样,那么为什么我们的推论会改变呢?
有趣的是,如果您以这种方式收集数据,然后写下二项式(固定样本量)和负二项式模型下的似然函数,您会发现两者成正比。这意味着只是负二项模型下的普通最大似然估计,当然是完全合理的估计。
并不是坚持最后一个样本是失败的,这会使估计有偏差,它取的是
所以 在你的例子中,但是 . 这接近于比较算术平均值和调和平均值
坏消息是偏差会随着变小了,虽然不是很多已经很小了。好消息是,随着所需失败次数的增加,偏差会减少。看来如果你需要失败,则偏差由上面的乘法因子限定对于小; 当您在第一次失败后停止时,您不想要这种方法
停止后失败,与你会得到但 ,而与你会得到但 . 偏差大约为乘法因子
作为 dsaxton 回答的补充,这里有一些 R 中的模拟,显示了什么时候和:
n_replications <- 10000
k <- 10
failure_prob <- 0.02
n_trials <- k + rnbinom(n_replications, size=k, prob=failure_prob)
all(n_trials >= k) # Sanity check, cannot have 10 failures in < 10 trials
estimated_failure_probability <- k / n_trials
histogram_breaks <- seq(0, max(estimated_failure_probability) + 0.001, 0.001)
## png("estimated_failure_probability.png")
hist(estimated_failure_probability, breaks=histogram_breaks)
abline(v=failure_prob, col="red", lty=2, lwd=2) # True failure probability in red
## dev.off()
mean(estimated_failure_probability) # Around 0.022
sd(estimated_failure_probability)
t.test(x=estimated_failure_probability, mu=failure_prob) # Interval around [0.0220, 0.0223]
看起来像,这是相对于可变性的相当小的偏差.
其它你可能感兴趣的问题