没有替换的独立随机样本的交集的基数分布是什么?


10

S是一些组具有nN元件,和a1,a2,...,am被固定的正整数小于或等于n

由于的元素S相等,因此m样本L1,L2,...,Lm分别和独立地从吸入S无需更换,其尺寸是a1,a2,...,am,分别。

|L1L2 ... Lm|{0,1,...,min{a1,a2,...,am}}


我可以为您提供一个递归计算公式,但是我不知道封闭式解决方案。这样就足够了吗,或者您定和明确表示分布函数?a1,,amn
Bridgeburners

@Bridgeburners一个食谱会很好,至少它会提供一些解决这个问题及相关方法/方法。
llrs

Answers:


3

这是另一种方法,不涉及递归。但是,它仍然使用总和和乘积,其长度取决于参数。首先,我将给出表达式,然后进行解释。

我们有

P(|L1L2Lm|=k)=(nk)i=1n(nai)j=0min(a1,,am)k(1)j(nkj)l=1n(njkaljk).

编辑:在写完所有这些内容之后,我意识到我们可以通过将二项式系数组合为超几何概率和三项式系数来合并以上表达式。对于它的价值,修改后的表达式为 这里,是一个超几何随机变量,其中抽取是从具有成功状态的大小为的总体中得出的。Hypnj+kalalnj+k

j=0min(a1,,am)k(1)j(nj,k,njk)l=1nP(Hyp(n,j+k,al)=j+k).
Hyp(n,j+k,al)alnj+k

派生

为了使组合参数更容易跟踪(希望如此),让我们得到一些注释。在整个过程中,我们认为和固定的。我们将使用表示有序元组的集合,其中每个满足一个1... Ç大号1... 大号大号小号Sa1,,amC(I)m(L1,,Lm)LiS

  • |Li|=ai ; 和
  • L1Lm=I

我们还将对相同的集合使用,除了我们需要而不是相等。大号1大号C(I)L1LmI

一个主要的观察结果是相对容易计数。这是因为对于所有,条件等效于,因此从某种意义上讲,这消除了不同值之间的相互作用。对于每个,满足要求的的数量为,因为我们可以通过选择大小为的的子集来构造这样的然后与合并。它遵循 大号1大号大号大号 |小号| - ||C(I)L1LmILiIiiiLiLiSIai| | | CI| =ni=1|S||I|(|S||I|ai|I|)LiSIai|I|I

|C(I)|=i=1n(|S||I|ai|I|).

现在我们的原始概率可以通过为: P | 大号1大号2大号 | = ķ = Σ | | = k | CI |C

P(|L1L2Lm|=k)=I:|I|=k|C(I)|all IS|C(I)|.

我们可以立即在此处进行两个简化。首先,分母与相同 其次,排列参数表明通过基数仅取决于。由于存在具有基数为的个子集,因此得出 ,其中是具有基数的的任意固定子集| CI| | | n

|C()|=i=1n(|S|ai)=i=1n(nai).
|C(I)|I|I| SkI| | =k| CI| = n(nk)Sk0小号ķ
I:|I|=k|C(I)|=(nk)|C(I0)|,
I0Sk

退后一步,我们现在将问题简化为显示

|C(I0)|=j=0min(a1,,am)k(1)j(nkj)l=1n(njkaljk).

令是的不同子集,这些子集是通过将一个元素恰好加到。然后 (这就是说,如果,则包含但不包含任何其他元素。)我们现在已经将计数问题转换为计数问题,我们知道如何处理。更具体地说,我们有 J1,,JnkSI0

C(I0)=C(I0)(i=1nkC(Ji)).
L1Lm=I0L1LmI0CC
|C(I0)|=|C(I0)||i=1nkC(Ji)|=l=1n(nkalk)|i=1nkC(Ji)|.

我们可以应用包含-排除来处理上面的并集表达式的大小。这里的关键关系是,对于任何非空, 这是因为如果包含多个,那么它也包含其并集。我们还注意到,集合大小。因此 I{1,,nk}

iIC(Ji)=C(iIJi).
L1LmJiiIJi|I0|+|I|=k+|I|
|i=1nkC(Ji)|=I{1,,nk}(1)|I|1|iIC(Ji)|=j=1nkI:|I|=j(1)j1l=1n(njkaljk)=j=1nk(1)j1(nkj)l=1n(njkaljk).
(我们可以在这里限制值,因为二项式系数的乘积为零,除非对于所有,即。)jjalkljmin(a1,,am)k

最后,通过将末尾的表达式代入的等式 在上面并合并总和,我们得到 。|C(I0)|

|C(I0)|=j=0min(a1,,am)k(1)j(nkj)l=1n(njkaljk)

所有的努力和解决方案均为+1,但我需要完善自己的数学知识才能理解大部分内容(以及其他答案)。谢谢
llrs 18'Mar

4

我不知道解析方法可以解决此问题,但是这是一种计算结果的递归方法。

对于您元素中选择元素,其中元素之前已被选择。在第二次绘制中选择与相交的元素的概率由超几何分布给出:m=2a2n, a1kmin{a1,a2}L1

P(kn,a1,a2)=(a1k)(na1a2k)(na2).

我们可以将结果称为我们可以使用相同的逻辑来找到其中是三个样本的交集的基数。然后,b2.P(b3=kn,b2,a3),b3

P(b3=k)=l=0min(a1,a2)P(b3=kn,b2=l,a3)P(b2=ln,a1,a2).

每个找到它。后面的计算在数值上并不困难,因为只是先前计算的结果,而是对超几何分布。k{0,1,2,,min(a1,a2,a3)}P(b2=ln,a1,a2)P(b3=kn,b2=l,a3)

通常,要找到,可以应用以下递归公式: 对于和 也就是说P(bm)

P(bi=k)=l=0min(a1,a2,,ai1)P(bi=kn,bi1=l,ai)P(bi1=l),
{23...}Pb1=δ一个1b1b1=一个1
P(bi=kn,bi1=l,ai)=(lk)(nlaik)(nai),
i{2,3,,m},
P(b1)=δa1b1,
b1=a1.

在R中:

hypergeom <- function(k, n, K, N) choose(K, k) * choose(N-K, n-k) / choose(N, n)

#recursive function for getting P(b_i) given P(b_{i-1})
PNext <- function(n, PPrev, ai, upperBound) {
  l <- seq(0, upperBound, by=1)
  newUpperBound <- min(ai, upperBound)
  kVals <- seq(0, newUpperBound, by=1)
  PConditional <- lapply(kVals, function(k) {
    hypergeom(k, ai, l, n)
  })
  PMarginal <- unlist(lapply(PConditional, function(p) sum(p * PPrev) ))
  PMarginal
}

#loop for solving P(b_m)
P <- function(n, A, m) {
  P1 <- c(rep(0, A[1]), 1)
  if (m==1) {
    return(P1)
  } else {
    upperBound <- A[1]
    P <- P1
    for (i in 2:m) {
      P <- PNext(n, P, A[i], upperBound)
      upperBound <- min(A[i], upperBound)
    }
    return(P)
  }
}

#Example
n <- 10
m <- 5
A <- sample(4:8, m, replace=TRUE)
#[1] 6 8 8 8 5

round(P(n, A, m), 4)
#[1] 0.1106 0.3865 0.3716 0.1191 0.0119 0.0003
#These are the probabilities ordered from 0 to 5, which is the minimum of A

感谢您的解决方案和代码。在授予赏金之前,我等待其他答案的方法(如果有的话)。
llrs
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.