Vorhersageintervall für binomische Zufallsvariable


13

Wie lautet die (ungefähre oder genaue) Formel für ein Vorhersageintervall für eine Binomial-Zufallsvariable?

Es sei angenommen , YBinom(n,p) , und wir beobachten , y (aus gezogenem Y ). Das n ist bekannt.

Unser Ziel ist es, ein Vorhersageintervall von 95% für eine neue Ziehung von Y .

Die Punktschätzung ist np^ , wobei p = yp^=yn . Ein Konfidenzintervall für p ist einfach, aber ich kann nicht eine Formel für ein Prognoseintervall für findenY. Wenn wir wusstendassp(statt p ), dann ein 95% Prognoseintervall beinhaltet nur die Quantile eines binomischenfinden. Gibt es etwas, das ich übersehen habe?p^Ypp^


1
Siehe Welche nicht-bayesianischen Methoden gibt es für die prädiktive Inferenz? . In diesem Fall ist die Methode mit Pivots nicht verfügbar (glaube ich nicht), aber Sie könnten eine der prädiktiven Wahrscheinlichkeiten verwenden. Oder natürlich ein bayesianischer Ansatz.
Scortchi - Wiedereinsetzung von Monica

1
Hallo Leute, ich möchte mir einen Moment Zeit nehmen, um auf die angesprochenen Bedenken einzugehen. - bezüglich des Vertrauens für p: Das interessiert mich nicht. - Bezüglich der Vorhersage von 95% der Verteilung: Ja, das ist genau das, was Vorhersageintervalle unabhängig vom Kontext sind (bei der Regression müssen normale Fehler angenommen werden, wenn Konfidenzintervalle von CLT abhängen - Ja, das Beispiel der Vorhersage der Anzahl der Köpfe in Ein Münzwurf ist korrekt. Was dieses Problem schwierig macht, ist, dass wir jetzt kein "p" haben, nur eine Schätzung.
Statseeker

3
@Addison Lesen Sie das Buch Statistical Intervals von G. Hahn und W. Meeker. Sie erklären den Unterschied zwischen Konfidenzintervallen, Vorhersageintervallen, Toleranzintervallen und Bayes'schen glaubwürdigen Intervallen. Ein Vorhersageintervall von 95% enthält nicht 95% der Verteilung. Es macht das, was die meisten Frequenzintervalle machen. Wenn Sie wiederholt aus B (n, p) abtasten und jedes Mal die gleiche Methode anwenden, um ein Vorhersageintervall von 95% für p zu erzeugen, dann enthalten Sie 95% der Vorhersageintervalle den wahren Wert von p. Wenn Sie 95% der Verteilung abdecken möchten, erstellen Sie ein Toleranzintervall.
Michael R. Chernick

Toleranzintervalle decken einen Prozentsatz der Verteilung ab. Bei einem Toleranzintervall von 95% für 90% der Verteilung wiederholen Sie den Vorgang erneut viele Male und generieren das Intervall jedes Mal auf dieselbe Weise. In ungefähr 95% der Fälle fallen dann mindestens 90% der Verteilung in das Intervall und 5% der Zeit, die weniger als 90% der Verteilung beträgt, werden in dem Intervall enthalten sein.
Michael R. Chernick

3
Lawless & Fredette (2005), "Frequentist Prediction Intervals and Predictive Distributions", Biometrika , 92 , 3, ist eine weitere gute Referenz, zusätzlich zu denen, die ich unter dem angegebenen Link angegeben habe.
Scortchi

Antworten:


22

Ok, lass es uns versuchen. Ich werde zwei Antworten geben - die Bayesianische, die meiner Meinung nach einfach und natürlich ist, und eine der möglichen häufigeren.

Bayes'sche Lösung

Wir gehen davon aus einem Beta vor auf , i, e., P ~ B e t einem ( α , β ) , weil die Beta-Binomialverteilung Modell - Konjugat, was bedeutet , dass die a posteriori Verteilung ist auch eine Beta - Verteilung mit Parametern α = α + k , β = β + n - k , (ich verwende k die Anzahl der Erfolge in bezeichnen n Versuchen anstelle von y ). Somit wird die Folgerung stark vereinfacht. Nun, wenn Sie einige Vorkenntnisse über die wahrscheinlichen Werte von habenppBeta(α,β)α^=α+k,β^=β+nkkny , Sie könnten es verwenden, um die Werte von α und β festzulegen, dh Ihre Beta-Priorität zu definieren, andernfalls könnten Sie eine einheitliche (nicht informative) Priorität mit α = β = 1 oder andere nicht informativePrioritäten annehmen(siehe zum Beispielhier). In jedem Fall ist Ihr posteriorpαβα=β=1

Pr(p|n,k)=Beta(α+k,β+nk)

Bei der Bayes'schen Folgerung kommt es nur auf die hintere Wahrscheinlichkeit an. Wenn Sie dies wissen, können Sie auf alle anderen Größen in Ihrem Modell schließen. Sie möchten Rückschlüsse auf die Observablen : insbesondere auf einen Vektor neuer Ergebnisse y = y 1 , , y m , wobei m nicht unbedingt gleich n ist . Speziell wollen wir für jedes j = 0 , , m die Wahrscheinlichkeit berechnen, genau j Erfolge in den nächsten m Versuchen zu haben, vorausgesetzt, wir haben kyy=y1,,ymmnj=0,,mjmkErfolge in den vorhergehenden Versuchen; Die posteriore prädiktive Massenfunktion:n

Pr(j|m,y)=Pr(j|m,n,k)=01Pr(j,p|m,n,k)dp=01Pr(j|p,m,n,k)Pr(p|n,k)dp

Doch unsere Binomial - Modell für bedeutet , dass, bedingt auf p einen bestimmten Wert aufweist, wobei die Wahrscheinlichkeit, j Erfolge in m Studien nicht auf die letzten Ergebnisse sind abhängig: es ist einfachYpjm

f(j|m,p)=(jm)pj(1p)j

So wird der Ausdruck

Pr(j|m,n,k)=01(jm)pj(1p)jPr(p|n,k)dp=01(jm)pj(1p)jBeta(α+k,β+nk)dp

Das Ergebnis dieses Integrals ist eine bekannte Distribution, die als Beta-Binomial-Distribution bezeichnet wird: Wenn wir die Passagen überspringen, erhalten wir den schrecklichen Ausdruck

Pr(j|m,n,k)=m!j!(mj)!Γ(α+β+n)Γ(α+k)Γ(β+nk)Γ(α+k+j)Γ(β+n+mkj)Γ(α+β+n+m)

Unsere Punktschätzung für bei quadratischem Verlust ist natürlich der Mittelwert dieser Verteilung, dhj

μ=m(α+k)(α+β+n)

Lassen Sie uns nun nach einem Vorhersageintervall suchen. Da es sich um eine diskrete Verteilung handelt, haben wir keinen Ausdruck in geschlossener Form für , so dass P r ( j 1j j 2 ) = 0,95 ist . Der Grund dafür ist, dass je nachdem, wie Sie ein Quantil definieren, die Quantilfunktion für eine diskrete Verteilung entweder keine Funktion oder eine diskontinuierliche Funktion ist. Dies ist jedoch kein großes Problem: Für kleines m können Sie einfach die m - Wahrscheinlichkeiten P r ( j = 0) aufschreiben[j1,j2]Pr(j1jj2)=0.95mm und von hier finden j 1 , j 2 , so dassPr(j=0|m,n,k),Pr(j1|m,n,k),,Pr(jm1|m,n,k)j1,j2

Pr(j1jj2)=Pr(jj2|m,n,k)Pr(j<j1|m,n,k)0.95

Natürlich würden Sie mehr als ein Paar finden, also würden Sie idealerweise nach dem kleinsten suchen , so dass das oben Genannte erfüllt ist. Beachten Sie, dass[j1,j2]

Pr(j=0|m,n,k)=p0,Pr(j1|m,n,k)=p1,,Pr(jm1|m,n,k)=pm1

sind nur die Werte der CMF (Cumulative Mass Function) der Beta-Binomial-Verteilung, und als solche gibt es einen Ausdruck in geschlossener Form , der sich jedoch auf die verallgemeinerte hypergeometrische Funktion bezieht und daher ziemlich kompliziert ist. Ich möchte lieber nur das R-Paket installieren extraDistrund aufrufen pbbinom, um die CMF der Beta-Binomial-Distribution zu berechnen. Wenn Sie alle Wahrscheinlichkeiten auf einmal berechnen möchten , schreiben Sie einfach:p0,,pm1

library(extraDistr)  
jvec <- seq(0, m-1, by = 1) 
probs <- pbbinom(jvec, m, alpha = alpha + k, beta = beta + n - k)

wo alphaund betasind die Werte der Parameter Ihres Beta-Prior, dh und β (also 1, wenn Sie ein einheitliches Prior vor p verwenden ). Natürlich wäre alles viel einfacher, wenn R eine Quantilfunktion für die Beta-Binomial-Verteilung bereitstellen würde, aber leider nicht.αβp

Praxisbeispiel mit der Bayes'schen Lösung

Sei , k = 70 (so haben wir zunächst 70 Erfolge in 100 Versuchen beobachtet). Wir wollen eine Punktschätzung und ein 95% -Vorhersageintervall für die Anzahl der Erfolge j in den nächsten m = 20 Versuchen. Dannn=100k=70jm=20

n <- 100
k <- 70
m <- 20
alpha <- 1
beta  <- 1

wo ich auf einen einheitlichen Stand vorausgesetzt habe : Abhängig von den Vorkenntnissen für Ihre spezifische Anwendung kann dies ein guter Stand sein oder nicht. Somitp

bayesian_point_estimate <- m * (alpha + k)/(alpha + beta + n) #13.92157

Es ist klar, dass eine nicht ganzzahlige Schätzung für keinen Sinn ergibt. Wir könnten also einfach auf die nächste ganze Zahl (14) runden. Dann für das Vorhersageintervall:j

jvec <- seq(0, m-1, by = 1)
library(extraDistr)
probabilities <- pbbinom(jvec, m, alpha = alpha + k, beta = beta + n - k)

Die Wahrscheinlichkeiten sind

> probabilities
 [1] 1.335244e-09 3.925617e-08 5.686014e-07 5.398876e-06
 [5] 3.772061e-05 2.063557e-04 9.183707e-04 3.410423e-03
 [9] 1.075618e-02 2.917888e-02 6.872028e-02 1.415124e-01
[13] 2.563000e-01 4.105894e-01 5.857286e-01 7.511380e-01
[17] 8.781487e-01 9.546188e-01 9.886056e-01 9.985556e-01

Bei gleichem-tail Wahrscheinlichkeiten Intervall, wollen wir die kleinste derart , dass P r ( j j 2 | m , n , k ) 0,975 und die größte j 1 , so daß P r ( j < j 1 | m , n , k ) = P r ( j j 1 - 1 | m , n , kj2Pr(jj2|m,n,k)0.975j1Pr(j<j1|m,n,k)=Pr(jj11|m,n,k)0.025. This way, we will have

Pr(j1jj2|m,n,k)=Pr(jj2|m,n,k)Pr(j<j1|m,n,k)0.9750.025=0.95

Thus, by looking at the above probabilities, we see that j2=18 and j1=9. The probability of this Bayesian prediction interval is 0.9778494, which is larger than 0.95. We could find shorter intervals such that Pr(j1jj2|m,n,k)0.95, but in that case at least one of the two inequalities for the tail probabilities wouldn't be satisfied.

Frequentist solution

I'll follow the treatment of Krishnamoorthy and Peng, 2011. Let YBinom(m,p) and XBinom(n,p) be independently Binominally distributed. We want a 12αprediction interval for Y, based on a observation of X. In other words we look for I=[L(X;n,m,α),U(X;n,m,α)] such that:

PrX,Y(YI)=PrX,Y(L(X;n,m,α)YU(X;n,m,α)]12α

The "12α" is due to the fact that we are dealing with a discrete random variable, and thus we cannot expect to get exact coverage...but we can look for an interval which has always at least the nominal coverage, thus a conservative interval. Now, it can be proved that the conditional distribution of X given X+Y=k+j=s is hypergeometric with sample size s, number of successes in the population n and population size n+m. Thus the conditional pmf is

Pr(X=k|X+Y=s,n,n+m)=(nk)(msk)(m+ns)

The conditional CDF of X given X+Y=s is thus

Pr(Xk|s,n,n+m)=H(k;s,n,n+m)=i=0k(ni)(msi)(m+ns)

The first great thing about this CDF is that it doesn't depend on p, which we don't know. The second great thing is that it allows to easily find our PI: as a matter of fact, if we observed a value k of X, then the 1α lower prediction limit is the smallest integer L such that

Pr(Xk|k+L,n,n+m)=1H(k1;k+L,n,n+m)>α

correspondingly, the the 1α upper prediction limit is the largest integer such that

Pr(Xk|k+U,n,n+m)=H(k;k+U,n,n+m)>α

Thus, [L,U] is a prediction interval for Y of coverage at least 12α. Note that when p is close to 0 or 1, this interval is conservative even for large n, m, i.e., its coverage is quite larger than 12α.

Practical example with the Frequentist solution

Same setting as before, but we don't need to specify α and β (there are no priors in the Frequentist framework):

n <- 100
k <- 70
m <- 20

The point estimate is now obtained using the MLE estimate for the probability of successes, p^=kn, which in turns leads to the following estimate for the number of successes in m trials:

frequentist_point_estimate <- m * k/n #14

For the prediction interval, the procedure is a bit different. We look for the largest U such that Pr(Xk|k+U,n,n+m)=H(k;k+U,n,n+m)>α, thus let's compute the above expression for all U in [0,m]:

jvec <- seq(0, m, by = 1)
probabilities <- phyper(k,n,m,k+jvec)

We can see that the largest U such that the probability is still larger than 0.025 is

jvec[which.min(probabilities > 0.025) - 1] # 18

Same as for the Bayesian approach. The lower prediction bound L is the smallest integer such that Pr(Xk|k+L,n,n+m)=1H(k1;k+L,n,n+m)>α, thus

probabilities <- 1-phyper(k-1,n,m,k+jvec)
jvec[which.max(probabilities > 0.025) - 1] # 8

Thus our frequentist "exact" prediction interval is [L,U]=[8,18].

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.