Statistics 从长度未知的流中随机抽样
假设我需要从N>>K个元素的实时流中随机抽取K个元素,其中我只有有限的内存,并且事先不知道N。是否有一种算法在理论上是合理的,也就是说,符合从采集中随机抽取样本的技术含义 我知道有一种算法可以满足随机抽样的一些直觉,但问题是,它在形式上合理吗 换句话说,我如何证明我提出的算法在这样的环境下确实产生了一个随机样本Statistics 从长度未知的流中随机抽样,statistics,probability,Statistics,Probability,假设我需要从N>>K个元素的实时流中随机抽取K个元素,其中我只有有限的内存,并且事先不知道N。是否有一种算法在理论上是合理的,也就是说,符合从采集中随机抽取样本的技术含义 我知道有一种算法可以满足随机抽样的一些直觉,但问题是,它在形式上合理吗 换句话说,我如何证明我提出的算法在这样的环境下确实产生了一个随机样本 例如,如果我可以证明我的算法生成了K个元素,其中流外的每个元素都以K/N的概率包含,那么这是合法的证明吗 有相应的算法,请参见 是的,您需要证明您的样本具有统一的概率(并且您可能希望它们
例如,如果我可以证明我的算法生成了K个元素,其中流外的每个元素都以K/N的概率包含,那么这是合法的证明吗 有相应的算法,请参见
是的,您需要证明您的样本具有统一的概率(并且您可能希望它们也是独立的)。这正是链接页面中算法R的证明所做的。我们需要样本k元素
求解这个方程后,我们得到p=k/(1+N),这是我们保留新数据的概率。1/1+N是我们将原始k中的数据踢出的概率。你想统一采样还是元素以不同的概率采样可以?我想取一个“简单随机样本”(统一)。我的问题不是找到算法,但是一个元理论问题,关于是否有可能正式证明这种设置的算法确实会产生一个随机样本。它确实回答了你的第一个问题,关于是否会有这样的算法。我更新了它以解决另一个问题,这将提供缓冲区的统一采样,而不是K元素。