Ich möchte Daten mit "Modell 1" generieren und mit "Modell 2" anpassen. Die zugrunde liegende Idee besteht darin, die Robustheitseigenschaften von "Modell 2" zu untersuchen. Ich interessiere mich besonders für die Abdeckungsrate des 95% -Konfidenzintervalls (basierend auf der normalen Näherung).
- Wie stelle ich die Anzahl der Iterationsläufe ein?
- Stimmt es, dass größere als notwendige Replikationen zu falschen Verzerrungen führen können? Wenn ja, wie ist das?
simulation
monte-carlo
user7064
quelle
quelle
Antworten:
Basierend auf Ihrem Follow-up-Kommentar scheint es, als würden Sie versuchen, die Abdeckungswahrscheinlichkeit eines Konfidenzintervalls zu schätzen, wenn Sie eine konstante Fehlervarianz annehmen, wenn die wahre Fehlervarianz nicht konstant ist.
Ich denke darüber nach, dass das Konfidenzintervall für jeden Lauf entweder den wahren Wert abdeckt oder nicht. Definieren Sie eine Indikatorvariable:
Dann ist die Deckungswahrscheinlichkeit, an der Sie interessiert sind, die Sie anhand des Stichprobenanteils schätzen können, den Sie meiner Meinung nach vorschlagen.E(Yi)=p
Wie stelle ich die Anzahl der Iterationsläufe ein?
Wir wissen, dass die Varianz eines Bernoulli-Versuchs beträgt und Ihre Simulationen IID- Bernoulli-Versuche erzeugen. Daher beträgt die Varianz Ihrer simulationsbasierten Schätzung von p p ( 1 - p ) / n , wobei n der ist Anzahl der Simulationen. Sie können n wählen , um diese Varianz so weit zu verkleinern, wie Sie möchten. Es ist eine Tatsache , daß p ( 1 - p ) / n ≤ 1 / 4 np(1−p) p p(1−p)/n n n
Wenn Sie also die Varianz kleiner sein wollen als ein vorher festgelegten Schwellenwert, , dann können Sie dies sicherstellen , indem Sie n ≥ 1 / 4 δ .δ n≥1/4δ
Wenn Sie allgemeiner versuchen, die Eigenschaften der Stichprobenverteilung eines Schätzers durch Simulation zu untersuchen (z. B. Mittelwert und Varianz), können Sie die Anzahl der Simulationen basierend auf der Genauigkeit auswählen, die Sie in einer Analogie erreichen möchten Mode zu dem hier beschriebenen.
Beachten Sie auch, dass Sie, wenn der Mittelwert (oder ein anderer Moment) einer Variablen das interessierende Objekt ist, wie hier, ein Konfidenzintervall für sie basierend auf den Simulationen unter Verwendung der normalen Näherung (dh des zentralen Grenzwertsatzes) erstellen können. , wie in MansTs netter Antwort besprochen. Diese normale Näherung ist besser, wenn die Anzahl der Stichproben zunimmt. Wenn Sie also ein Konfidenzintervall erstellen möchten, indem Sie sich auf den zentralen Grenzwertsatz berufen, möchten Sie, dass groß genug ist, damit dies zutrifft. Für den binären Fall, wie Sie hier haben, scheint diese Annäherung gut zu sein, selbst wenn n p und n ( 1 - p ) ziemlich moderat sind - sagen wir 20 .n np n(1−p) 20
Stimmt es, dass größere als notwendige Replikationen zu falschen Verzerrungen führen können? Wenn ja, wie ist das?
Wie ich in einem Kommentar erwähnt habe - das hängt davon ab, was Sie unter falsch verstehen. Eine größere Anzahl von Simulationen führt nicht zu einer Verzerrung im statistischen Sinne, kann jedoch eine unwichtige Verzerrung aufzeigen, die nur bei einer astronomisch großen Stichprobengröße erkennbar ist. Angenommen, die tatsächliche Abdeckungswahrscheinlichkeit des falsch spezifizierten Konfidenzintervalls . Dann ist dies im praktischen Sinne kein wirkliches Problem, aber Sie können diesen Unterschied möglicherweise nur feststellen, wenn Sie eine Menge Simulationen durchgeführt haben.94.9999%
quelle
Ich verwende häufig die Breite der Konfidenzintervalle, um die Anzahl der erforderlichen Iterationen schnell und unkompliziert zu bestimmen.
Sei die wahre Abdeckungsrate des 95% -Konfidenzintervalls, wenn Daten von "Modell 1" an "Modell 2" angepasst werden. Wenn X die Häufigkeit ist, mit der das Konfidenzintervall den wahren Parameterwert in n Iterationen abdeckt , dann ist X ∼ B i n ( n , p )p X n X∼Bin(n,p) .
Der Schätzer p = X / n hat Mittelwert P und die Standardabweichung √p^=X/n p p(1−p)/n−−−−−−−−−√ n p^ p^±1.96p^(1−p^)/n−−−−−−−−−√ p p≈0.95 2⋅1.960.95⋅0.05/n−−−−−−−−−−√
quelle
If you are doing a simulation the minimum number of required runs depends on your objective (What are you trying to estimate and with what accuracy?). If you are trying to estimate the average response then the standard deviation of the sample average is thePopulation Standard Deviationn−−√ . So if d is the required half-width for 95% confidence interval for the mean you want d=1.96×Pop.Std.Devn−−√ or n=(1.96×Pop.Std.Dev)2d2 .
Doing more simulations (assuming all samples arre generated by a random process) does nothing to hurt the estimation in terms of accuracy or bias.
The coverage of an approximate confidence interval will differ from the exact95% coveraged desired and the error in coverage should decrease with increasing n . As mentioned by Macro and MansT, you can bound the Monte Carlo estimate of coverage based on the variance of the binomial proportion being p(1−p)n .
quelle