Який розподіл кардинальності перетину незалежних випадкових вибірок без заміни?


10

п N 1 , 2 , . . . , a m nS - деякий набір з елементами , а закріплені додатні цілі числа, менші або рівні .nNa1,a2,...,amn

Оскільки елементи однаково вірогідні, зразки окремо і незалежно витягуються з без заміни, розміри яких відповідно становлять .SmL1,L2,...,Lm1 , 2 , . . . , МSa1,a2,...,am

Можливість перетину зразківмає, як правило, підтримку, рівну , але для якого розподілу це слід?|L1L2 ... Lm|{0,1,...,min{a1,a2,...,am}}


Я можу надати вам рецепт для його обчислення рекурсивно, але я не знаю про рішення закритої форми. Цього достатньо, чи ви хочете, щоб явне вираження функції розподілу було задано a_1, \ dots, a_ma1,,am та n ?
Bridgeburners

@Bridgeburners Рецепт був би непоганим, принаймні, він містив би якийсь метод / спосіб атаки на цю проблему та пов'язані з цим.
llrs

Відповіді:


3

Ось ще один підхід, який не передбачає рекурсії. Він все ще використовує суми та продукти, довжина яких залежить від параметрів. Спочатку я дам вираз, потім поясню.

У нас є

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

EDIT: Наприкінці написання всього цього я зрозумів, що ми можемо трохи закріпити вираз вище, поєднавши біноміальні коефіцієнти в гіпергеометричні ймовірності та тричленні коефіцієнти. Для чого це варто, переглянутий вираз - Тут - гіпергеометрична випадкова величина, де малюнки беруться з сукупності розміру має стану успіху.Hyp(n,j+k,al)alnj+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

Виведення

Давайте знайдемо позначення для того, щоб зробити комбінаторні аргументи трохи простішими (сподіваємось). Протягом усього часу ми вважаємо та фіксованими. Ми будемо використовувати для позначення колекції упорядкованих пар , де кожен , що задовольняєa 1 , , a m C ( I ) m ( L 1 , , L m ) L iSSa1,,amC(I)m(L1,,Lm)LiS

  • |Li|=ai ; і
  • L1Lm=I .

Ми також будемо використовувати для ідентичної колекції, за винятком того, що нам потрібно рівність замість рівності. L 1 L mIC(I)L1LmI

Ключовим зауваженням є те, що підрахувати порівняно легко. Це тому, що умова еквівалентна для всіх , тому в певному сенсі це видаляє взаємодії між різними значеннями . Для кожного число задовольняє вимозі, є , оскільки ми можемо побудувати такий , вибравши підмножину розміруа потім unioning з . З цього випливає C(I)L iI i i i L i ( | S | - | I |L1LmILiIiiiLiLiSI(|S||I|ai|I|)LiSIЯ | C ( I ) | = n i = 1 ( | S | - | I |ai|I|I

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

Тепер нашу первісну ймовірність можна виразити через так: C

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

Тут ми можемо зробити два спрощення. По-перше, знаменник такий самий, як По-друге, аргумент перестановки показує, щозалежить лише від через кардинальність. Оскільки є підмножини мають кардинальність , то випливає, що де - довільна, фіксована підмножина має кардинальність| C(I)| Я| Я| (н

|C()|=i=1n(|S|ai)=i=1n(nai).
|C(I)|I|I| SkI:| Я| =k| C(I)| = ( n(nk)SkI0Sk
I:|I|=k|C(I)|=(nk)|C(I0)|,
I0Sk .

Зробивши крок назад, ми тепер звели проблему до того, щоб показати, що

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

Нехай - окремі підмножини утворені шляхом додавання в рівно одного елемента . Тоді (Це просто говорить про те, що якщо , то містить але також не містить жодного додаткового елемента.) Тепер ми перетворили -нарахування проблеми в -нарахування проблеми, з яким ми знаємо більше, як впоратися. Більш конкретно, у нас є S I 0 C ( I 0 ) = C ( I 0 ) ( n - k i = 1 C ( J i ) ) . L 1L m = I 0 L 1L m I 0 CJ1,,JnkSI0

C(I0)=C(I0)(i=1nkC(Ji)).
L1Lm=I0L1LmI0C| C ( I 0 ) | = | C ( I 0 ) | - | n - k i = 1 C ( J i ) | = n l = 1 ( n - kC
|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

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),
i{2,3,,m},P(b1)=δa1b1,b1=a1.
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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.