为什么非参数引导程序不会一遍又一遍地返回相同的样本?

机器算法验证 引导程序
2022-03-30 07:54:20

为什么非参数引导程序不会一遍又一遍地返回相同的样本?

我的笔记写道:

假设数据X1,...,Xn.

带有替换的样本数据以生成X1(p),...,Xn(p)

现在因为两者都是长度n,那么这怎么不总是产生相同的样本呢?我错过了一些东西。

3个回答

bootstrap 样本的每个成员都是从数据集中随机选择并替换的。如果我们要在替换的情况下进行抽样,那么每个样本都只是对相同数据的重新排序。但是,作为替换的结果,引导样本在包含每个数据点的次数上有所不同(可能是一次、多次或根本没有)。平均而言,约 63% 的数据点在给定的引导样本中至少出现一次。

@user20160 的解释很好。这是从 1 到 5 序列的 10 个引导样本的示例,表明某些值将多次表示,而其他值将不表示 ( x <- 1:5; t(replicate(10,sort(sample(x,replace=TRUE)))))

      [,1] [,2] [,3] [,4] [,5]
 [1,]    2    2    4    4    5
 [2,]    1    1    1    2    4
 [3,]    3    3    3    5    5
 [4,]    1    1    1    2    3
 [5,]    1    1    2    3    3
 [6,]    1    2    3    4    4
 [7,]    2    2    3    4    5
 [8,]    3    3    3    4    4
 [9,]    1    1    2    3    5
[10,]    1    1    2    4    4

只是为了确认这里的答案,关键的误解是提问者认为抽样中没有替代品。因此,如果有 10 个元素和 10 个随机抽样事件和 2 个复制,则每个复制都与另一个相同,无需替换。随机抽样事件的数量永远不能超过原始样本大小。

但是,通过替换,理论上采样事件的数量可能会超过元素的数量,因此原始样本大小可以增加到任何给定的数量。然而,在实践中这将是错误的,因为您会人为地降低方差(这是不可以的),但平均值将保持不变。

澄清一下,增加重复次数是稳定均值和方差的正确方法。我将避免详述。

当您不知道如何推导均值的 95% 置信区间时,自举(非参数)很酷(对自举进行排序并删除上下 2.5%)。然而,该技术有其批评。