Ich frage mich, ob jemand allgemeine Faustregeln in Bezug auf die Anzahl der zu verwendenden Bootstrap-Beispiele kennt, basierend auf den Merkmalen der Daten (Anzahl der Beobachtungen usw.) und / oder den enthaltenen Variablen.
Ich frage mich, ob jemand allgemeine Faustregeln in Bezug auf die Anzahl der zu verwendenden Bootstrap-Beispiele kennt, basierend auf den Merkmalen der Daten (Anzahl der Beobachtungen usw.) und / oder den enthaltenen Variablen.
Antworten:
Ich habe die Erfahrung gemacht, dass Statistiker Simulationen oder Bootstraps nur dann ernst nehmen, wenn die Anzahl der Iterationen 1.000 überschreitet. MC Fehler ist ein großes Problem, das ein wenig unterschätzt wird. Zum Beispiel dieses Papier verwendete Niter=50
LASSO als Feature - Auswahl - Werkzeug zu demonstrieren. Meine Arbeit hätte viel weniger Zeit in Anspruch genommen, wenn 50 Iterationen als akzeptabel erachtet worden wären! Ich empfehle, dass Sie immer das Histogramm der Bootstrap-Beispiele überprüfen . Ihre Verteilung sollte ziemlich regelmäßig erscheinen. Ich denke nicht, dass eine einfache numerische Regel ausreicht, und es wäre übertrieben, wenn Sie beispielsweise einen Doppel-Bootstrap durchführen würden, um den MC-Fehler zu bewerten.
Angenommen, Sie haben den Mittelwert aus einem Verhältnis von zwei unabhängigen normalen Standard-Zufallsvariablen geschätzt. Einige Statistiker empfehlen möglicherweise das Bootstrapping, da das Integral schwer zu berechnen ist. Wenn Sie die grundlegende Wahrscheinlichkeitstheorie kennen, werden Sie erkennen, dass dieses Verhältnis eine Cauchy-Zufallsvariable mit einem nicht existierenden Mittelwert bildet. Jede andere leptokurtische Verteilung würde mehrere zusätzliche Bootstrap-Iterationen im Vergleich zu einer reguläreren Gaußschen Dichte erfordern. In diesem Fall reichen 1000, 100000 oder 10000000 Bootstrap-Beispiele nicht aus, um abzuschätzen, welche nicht vorhanden sind. Das Histogramm dieser Bootstraps würde weiterhin unregelmäßig und falsch aussehen.
Es gibt noch ein paar Falten in dieser Geschichte. Insbesondere ist der Bootstrap nur dann wirklich gerechtfertigt, wenn die Momente des datenerzeugenden Wahrscheinlichkeitsmodells vorliegen. Das liegt daran, dass Sie die empirische Verteilungsfunktion als Strohmann für das tatsächliche Wahrscheinlichkeitsmodell verwenden und davon ausgehen, dass sie denselben Mittelwert, dieselbe Standardabweichung, dieselbe Schiefe, dasselbe 99. Perzentil usw. haben.
Kurz gesagt, eine Bootstrap-Schätzung einer Statistik und ihres Standardfehlers ist nur dann gerechtfertigt, wenn das Histogramm der bootstrap-Samples zweifelsfrei regelmäßig erscheint und wenn der Bootstrap gerechtfertigt ist.
bearbeiten:
Wenn Sie es ernst meinen mit genügend Samples, sollten Sie Ihre Bootstrap-Prozedur mit, was Sie hoffen, genügend Samples mehrmals ausführen und sehen, wie viel die Bootstrap-Schätzungen "herumspringen". Wenn die wiederholten Schätzungen nicht sehr unterschiedlich sind (wobei "viel" von Ihrer spezifischen Situation abhängt), ist es sehr wahrscheinlich, dass es Ihnen gut geht. Natürlich können Sie abschätzen, um wie viel die wiederholten Schätzungen herumspringen, indem Sie die Beispiel-SD oder ähnliches berechnen.
Wenn Sie eine Referenz und eine Faustregel wünschen, schreibt Wilcox (2010) "599 wird für den allgemeinen Gebrauch empfohlen." Dies sollte jedoch nur als Richtlinie oder als Mindestanzahl von Proben angesehen werden, die Sie berücksichtigen sollten. Wenn Sie auf der sicheren Seite sein wollen, gibt es keinen Grund (wenn es rechnerisch machbar ist), warum Sie keine Größenordnung mehr Samples generieren sollten.
Persönlich gesehen neige ich dazu, 10.000 Stichproben zu erstellen, wenn ich "für mich" schätze, und 100.000 Stichproben, wenn ich etwas schätze, das an andere weitergegeben wird (aber das geht schnell, da ich mit kleinen Datensätzen arbeite).
Wilcox, RR (2010). Grundlagen moderner statistischer Methoden: Wesentliche Verbesserung von Leistung und Genauigkeit. Springer.
Es gibt Situationen, in denen Sie entweder vorher oder nach einigen Iterationen feststellen können, dass eine große Anzahl von Bootstrap-Iterationen am Ende nicht hilft.
Sie haben hoffentlich im Voraus eine Vorstellung von der Größenordnung der Genauigkeit, die für eine aussagekräftige Interpretation der Ergebnisse erforderlich ist. Wenn Sie dies nicht tun, ist es vielleicht an der Zeit, mehr über das Problem hinter der Datenanalyse zu erfahren. Auf jeden Fall können Sie nach einigen Iterationen abschätzen, wie viele weitere Iterationen erforderlich sind.
Wenn Sie extrem wenige Fälle haben (sagen wir, die Ethikkommission hat 5 Ratten zugelassen), müssen Sie offensichtlich nicht über Zehntausende von Iterationen nachdenken. Vielleicht ist es besser, sich alle möglichen Draws anzuschauen. Und vielleicht wäre es sogar besser, anzuhalten und darüber nachzudenken, wie sicher eine Schlussfolgerung auf 5 Ratten basieren kann (nicht).
Denken Sie an die völlige Unsicherheit der Ergebnisse. In meinem Bereich ist der Teil der Unsicherheit, den Sie durch Bootstrapping messen und reduzieren können, möglicherweise nur ein kleiner Teil der Gesamtunsicherheit (z. B. aufgrund von Einschränkungen bei der Versuchsplanung werden wichtige Variationsquellen häufig nicht durch den Versuch abgedeckt - sagen wir Wir beginnen mit Experimenten an Zelllinien, obwohl das Endziel natürlich die Patienten sein werden. In dieser Situation macht es keinen Sinn, zu viele Iterationen durchzuführen - es hilft dem Endergebnis sowieso nicht und es kann außerdem ein falsches Gefühl der Gewissheit hervorrufen.
Ein verwandtes (wenn auch nicht genau gleiches) Problem tritt bei der Out-of-Boot-Strap- oder Kreuzvalidierung von Modellen auf: Sie haben zwei Unsicherheitsquellen: die endliche (und in meinem Fall normalerweise sehr geringe Anzahl unabhängiger Fälle) und die (in). Stabilität der Bootstrapped-Modelle. Abhängig von Ihrer Einrichtung der Resampling-Validierung kann möglicherweise nur einer zur Resampling-Schätzung beitragen. In diesem Fall können Sie eine Schätzung der anderen Varianzquelle verwenden, um zu beurteilen, welche Sicherheit Sie mit dem Resampling erreichen sollten und wann es anhält, um das Endergebnis zu verbessern.
Während ich bisher darüber nachdachte, wie ich weniger Iterationen machen könnte, ist hier ein praktischer Gesichtspunkt, um mehr zu tun :
In der Praxis wird meine Arbeit nicht erledigt, nachdem der Bootstrap ausgeführt wurde. Die Ausgabe des Bootstraps muss in zusammenfassenden Statistiken und / oder Zahlen zusammengefasst werden. Die Ergebnisse müssen auf dem zu schreibenden Papier oder Bericht interpretiert werden. Viele davon können bereits mit vorläufigen Ergebnissen einiger Iterationen des Bootstraps durchgeführt werden (wenn die Ergebnisse klar sind, zeigen sie bereits nach wenigen Iterationen, wenn sie grenzwertig sind, bleiben sie grenzwertig). Daher habe ich das Bootstrapping oft so eingerichtet, dass ich vorläufige Ergebnisse abrufen kann, damit ich weiterarbeiten kann, während der Computer rechnet. Auf diese Weise stört es mich nicht, wenn das Bootstrapping noch einige Tage dauert.
TLDR. 10.000 scheint eine gute Faustregel zu sein, z. B. liegen p-Werte von diesem großen oder größeren Teil der Bootstrap-Samples in etwa 95% der Fälle innerhalb von 0,01 des "wahren p-Werts" für die Methode.
Ich betrachte im Folgenden nur den Perzentil-Bootstrap-Ansatz, der meines Wissens die am häufigsten verwendete Methode ist, allerdings auch Schwächen aufweist und nicht mit kleinen Stichproben verwendet werden sollte .
Leicht erfrischend. Es kann nützlich sein, die mit den Ergebnissen des Bootstraps verbundene Unsicherheit zu berechnen, um ein Gefühl für die Unsicherheit zu bekommen, die sich aus der Verwendung des Bootstraps ergibt. Beachten Sie, dass dies keine möglichen Schwachstellen im Bootstrap behebt (siehe z. B. den obigen Link), aber es hilft zu bewerten, ob in einer bestimmten Anwendung "genug" Bootstrap-Beispiele vorhanden sind. Im Allgemeinen geht der Fehler in Bezug auf die Bootstrap-Stichprobengröße n
auf null und n
auf unendlich und die Frage lautet, wie groß der Fehler in Bezug auf die n
kleine Bootstrap-Stichprobengröße sein sollte.
Bootstrap-Unsicherheit in einem p-Wert. Die Ungenauigkeit in einem geschätzten p-Wert, zum Beispiel pv_est ist der vom Bootstrap geschätzte p-Wert, ist ungefähr 2 x sqrt(pv_est * (1 - pv_est) / N)
, wobei N
die Anzahl der Bootstrap-Samples ist. Dies gilt, wenn pv_est * N
und (1 - pv_est) * N
beides sind >= 10
. Wenn eine davon kleiner als 10 ist, ist sie weniger genau, aber ungefähr in der gleichen Nachbarschaft wie diese Schätzung.
Bootstrap-Fehler in einem Konfidenzintervall. Wenn Sie ein 95% -Konfidenzintervall verwenden, prüfen Sie, wie unterschiedlich die Quantile der Bootstrap-Verteilung in der Nähe von 2,5% und 97,5% sind, indem Sie die Perzentile bei (für das 2,5-ste Perzentil) überprüfen 2.5 +/- 2 * 100 * sqrt(0.025 * 0.975 / n)
. Diese Formel gibt die Unsicherheit des unteren Endes des 95% -Konfidenzintervalls basierend auf der Anzahl der entnommenen Bootstrap-Stichproben an. Eine ähnliche Untersuchung sollte am oberen Ende durchgeführt werden. Wenn diese Schätzung etwas flüchtig ist, sollten Sie weitere Bootstrap-Beispiele entnehmen!
Wir haben
Ich habe die folgenden Informationen von Davidson, R. & MacKinnon, JG (2000) genommen. Bootstrap-Tests: Wie viele Bootstraps? Econometric Reviews, 19 (1), 55-68. (Die Arbeitspapierversion kann kostenlos heruntergeladen werden).
"Es ist leicht zu verstehen, warum das Vortestverfahren gut funktioniert. Wenn die Nullhypothese wahr ist, kann B sicher klein sein, weil wir uns überhaupt nicht um die Leistung kümmern. Ebenso, wenn die Null falsch ist und die Testleistung extrem hoch ist, B muss nicht groß sein, da der Leistungsverlust kein ernstes Problem darstellt. Wenn jedoch die Null falsch ist und die Testleistung mäßig hoch ist, muss B groß sein, um einen Leistungsverlust zu vermeiden B klein, wenn es sicher klein sein kann und groß, wenn es groß sein muss. "
Die meisten Bootstrapping-Anwendungen, die ich gesehen habe, meldeten etwa 2.000 bis 100.000 Iterationen. In der modernen Praxis mit adäquater Software sind die wichtigsten Probleme mit Bootstrap die statistischen, mehr als Zeit und Rechenkapazität. Für Anfänger mit Excel konnten nur einige Hundert ausgeführt werden, bevor erweiterte Visual Basic-Programmierung erforderlich war. R ist jedoch viel einfacher zu verwenden und macht die Generierung von Tausenden von Bootstrap-Werten einfach und unkompliziert.