Stima n nel problema del collezionista di coupon


14

In una variazione del problema del collezionista di coupon , non si conosce il numero di coupon e questo deve essere determinato in base ai dati. Mi riferirò a questo come al problema dei biscotti della fortuna:

Dato un numero sconosciuto di distinti messaggi di cookie di fortuna n , stimare n campionando i cookie uno alla volta e contando quante volte appare ogni fortuna. Determinare anche il numero di campioni necessari per ottenere un intervallo di confidenza desiderato su questa stima.

Fondamentalmente ho bisogno di un algoritmo che campiona i dati sufficienti per raggiungere un determinato intervallo di confidenza, diciamo n±5 con confidenza al 95% . Per semplicità, possiamo presumere che tutte le fortune appaiano con uguale probabilità / frequenza, ma questo non è vero per un problema più generale e una soluzione a ciò è anche benvenuta.

Questo sembra simile al problema dei carri armati tedeschi , ma in questo caso i biscotti della fortuna non sono etichettati in sequenza e quindi non hanno ordini.


1
Sappiamo che i messaggi sono ugualmente frequenti?
Glen_b -Restate Monica

domanda modificata: Sì
goweon,

2
Puoi scrivere la funzione di verosimiglianza?
Zen,

2
Le persone che fanno studi sulla fauna selvatica catturano, etichettano e rilasciano animali. In seguito deducono la dimensione della popolazione in base alla frequenza con cui ricatturano gli animali già etichettati. Sembra che il tuo problema sia matematicamente equivalente al loro.
Emil Friedman,

Risposte:


6

Per lo stesso caso di probabilità / frequenza, questo approccio potrebbe funzionare per te.

Sia la dimensione totale del campione, N il numero di diversi oggetti osservati, N 1 è il numero di oggetti visti esattamente una volta, N 2 è il numero di oggetti visti esattamente due volte, A = N 1 ( 1 - N 1KNN1N2e Q =N1A=N1(1N1K)+2N2,Q^=N1K.

Poi un intervallo di confidenza del 95% approssimativa sul totale dimensione della popolazione è dato dan

n^Lower=11Q^+1.96AK

n^Upper=11Q^1.96AK

Durante l'implementazione, potrebbe essere necessario modificarli in base ai dati.

Il metodo è dovuto a Good e Turing. Un riferimento con l'intervallo di confidenza è Esty, Warren W. (1983), "Una legge limite normale per uno stimatore non parametrico della copertura di un campione casuale" , Ann. Statist. , Volume 11, Numero 3, 905-912.

Per il problema più generale, Bunge ha prodotto software gratuito che produce diverse stime. Cerca con il suo nome e la parola CatchAll .


1
Mi sono preso la libertà di aggiungere il riferimento Esty. Per favore ricontrolla che è quello che intendevi
Glen_b -Restate Monica

È possibile @soakley ottenere limiti (probabilmente limiti meno precisi) se si conoscono solo (dimensione del campione) e N (numero di elementi unici visti)? cioè non abbiamo informazioni su N 1 e N 2 . KNN1N2
Basj

Non so di un modo per farlo con un solo e N . KN.
Soakley,

2

Non so se può aiutare, ma è il problema di prendere palle diverse durante n prove in un'urna con m palle etichettate diversamente con la sostituzione. Secondo questa pagina (in francese) se X n se la variabile casuale conta il numero di sfere diverse la funzione di probabilità è data da: P ( X n = k ) = ( mknmXnP(Xn=k)=(mk)i=0k(1)ki(ki)(im)n

Quindi è possibile utilizzare uno stimatore della massima verosimiglianza.

Un'altra formula con prova viene fornita qui per risolvere il problema dell'occupazione .


2

Funzione di probabilità e probabilità

In una risposta a una domanda sul problema del compleanno inverso, Cody Maughan ha fornito una soluzione per una funzione di probabilità.

La funzione di probabilità per il numero di tipi di cuoca della fortuna m quando disegniamo k diversi biscotti della fortuna in n pareggi (dove ogni tipo di biscotto della fortuna ha la stessa probabilità di apparire in un pareggio) può essere espressa come:

L(m|k,n)=mnm!(mk)!P(k|m,n)=mnm!(mk)!S(n,k)Stirling number of the 2nd kind=mnm!(mk)!1k!i=0k(1)i(ki)(ki)n=(mk)i=0k(1)i(ki)(kim)n

Per una derivazione della probabilità sul lato destro vedere il problema dell'occupazione. Questo è stato descritto in precedenza su questo sito Web da Ben. L'espressione è simile a quella nella risposta di Sylvain.

Stima della massima verosimiglianza

Possiamo calcolare approssimazioni del primo ordine e del secondo ordine del massimo della funzione di verosimiglianza in

m1(n2)nk

m2(n2)+(n2)24(nk)(n3)2(nk)

Likelihood interval

(note, this is not the same as a confidence interval see: The basic logic of constructing a confidence interval)

This remains an open problem for me. I am not sure yet how to deal with the expression mnm!(mk)! (of course one can compute all values and select the boundaries based on that, but it would be more nice to have some explicit exact formula or estimate). I can not seem to relate it to any other distribution which would greatly help to evaluate it. But I feel like a nice (simple) expression could be possible from this likelihood interval approach.

Confidence interval

For the confidence interval we can use a normal approximation. In Ben's answer the following mean and variance are given:

E[K]=m(1(11m)n)
V[K]=m((m1)(12m)n+(11m)nm(11m)2n)

Say for a given sample n=200 and observed unique cookies k the 95% boundaries E[K]±1.96V[K] look like:

confidence interval boundaries

In the image above the curves for the interval have been drawn by expressing the lines as a function of the population size m and sample size n (so the x-axis is the dependent variable in drawing these curves).

The difficulty is to inverse this and obtain the interval values for a given observed value k. It can be done computationally, but possibly there might be some more direct function.

In the image I have also added Clopper Pearson confidence intervals based on a direct computation of the cumulative distribution based on all the probabilities P(k|m,n) (I did this in R where I needed to use the Strlng2 function from the CryptRndTest package which is an asymptotic approximation of the logarithm of the Stirling number of the second kind). You can see that the boundaries coincide reasonably well, so the normal approximation is performing well in this case.

# function to compute Probability
library("CryptRndTest")
P5 <- function(m,n,k) {
  exp(-n*log(m)+lfactorial(m)-lfactorial(m-k)+Strlng2(n,k))
}
P5 <- Vectorize(P5)

# function for expected value 
m4 <- function(m,n) {
  m*(1-(1-1/m)^n)
}

# function for variance
v4 <- function(m,n) {
  m*((m-1)*(1-2/m)^n+(1-1/m)^n-m*(1-1/m)^(2*n))
}


# compute 95% boundaries based on Pearson Clopper intervals
# first a distribution is computed
# then the 2.5% and 97.5% boundaries of the cumulative values are located
simDist <- function(m,n,p=0.05) {
  k <- 1:min(n,m)
  dist <- P5(m,n,k)
  dist[is.na(dist)] <- 0
  dist[dist == Inf] <- 0
  c(max(which(cumsum(dist)<p/2))+1,
       min(which(cumsum(dist)>1-p/2))-1)
}


# some values for the example
n <- 200
m <- 1:5000
k <- 1:n

# compute the Pearon Clopper intervals
res <- sapply(m, FUN = function(x) {simDist(x,n)})


# plot the maximum likelihood estimate
plot(m4(m,n),m,
     log="", ylab="estimated population size m", xlab = "observed uniques k",
     xlim =c(1,200),ylim =c(1,5000),
     pch=21,col=1,bg=1,cex=0.7, type = "l", yaxt = "n")
axis(2, at = c(0,2500,5000))

# add lines for confidence intervals based on normal approximation
lines(m4(m,n)+1.96*sqrt(v4(m,n)),m, lty=2)
lines(m4(m,n)-1.96*sqrt(v4(m,n)),m, lty=2)
# add lines for conficence intervals based on Clopper Pearson
lines(res[1,],m,col=3,lty=2)
lines(res[2,],m,col=3,lty=2)

# add legend
legend(0,5100,
       c("MLE","95% interval\n(Normal Approximation)\n","95% interval\n(Clopper-Pearson)\n")
       , lty=c(1,2,2), col=c(1,1,3),cex=0.7,
       box.col = rgb(0,0,0,0))

For the case of unequal probabilities. You can approximate the number of cookies of a particular type as independent Binomial/Poisson distributed variables and describe whether they are filled or not as Bernouilli variables. Then add together the variance and means for those variables. I guess that this is also how Ben derived/approximated the expectation value and variance. ----- A problem is how you describe these different probabilities. You can not do this explicitly since you do not know the number of cookies.
Sextus Empiricus
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.