# Bootstrapping-Verfahren

Das Bootstrapping-Verfahren oder Bootstrap-Verfahren (selten: Münchhausenmethode) ist in der Statistik eine Methode des Resampling.
Beim Bootstrapping-Verfahren ist die Grundannahme, dass die vorliegende Zufallsstichprobe „repräsentativ“ für die Grundgesamtheit ist, aus der sie gezogen wurde. Konzeptionell wird nun diese Grundgesamtheit durch die Stichprobe ersetzt. Durch wiederholtes Ziehen mit Zurücklegen werden neue unabhängige Stichproben (die Stichprobenwiederholungen) erzeugt, auf deren Grundlage dann Statistiken sowie deren Verteilungen berechnet werden können.
Verwendung finden Bootstrap-Methoden, wenn die theoretische Verteilung der interessierenden Statistik nicht bekannt ist. Die Methode wurde erstmals von Bradley Efron 1979 beschrieben und geht aus Überlegungen zur Verbesserung der Jackknife-Methode hervor.
Der Bootstrap ersetzt in der Regel die theoretische Verteilungsfunktion $F$ einer Zufallsvariablen durch die empirische Verteilungsfunktion $F_{n}$ der Stichprobe $x_{1},\ldots ,x_{n}$. Es ist daher offensichtlich, dass Bootstrapping nur dann gut funktioniert, wenn die empirische Verteilungsfunktion die tatsächliche Verteilungsfunktion hinreichend gut approximieren kann, was eine gewisse Größe der ursprünglichen Stichprobe voraussetzt (vergleiche Konvergenzeigenschaften der empirischen Verteilungsfunktion).
Bootstrapping kann als Monte-Carlo-Methode verstanden werden, da es wiederholt zufällige Stichproben einer Verteilung zieht.
Nichtparametrisches Bootstrapping ermöglicht weitestgehend ohne oder mit wenigen Modellannahmen, zuverlässig Verteilungen von Statistiken zu schätzen. Es ist unzuverlässig, falls die zugrundeliegende Verteilung $F$ unendliche Varianz besitzt.
Die Bezeichnung „Bootstrapping“ geht zurück auf die englische Redewendung: „To pull oneself up by one's bootstraps“ (dt. sich am eigenen Schopf aus dem Sumpf ziehen). Dies spielt darauf an, dass beim Bootstrapping-Verfahren aus einer Stichprobe erneut Stichproben gezogen werden. Baron Münchhausen erklärte bekanntlich, sich an den eigenen Haaren aus einem Sumpf gezogen zu haben. Daher der Name „Münchhausenmethode“.
Bootstrapping kann intuitiv als Beobachtung der Realisierungen in Parallelwelten (der Bootstrap-Welt) verstanden werden.

## Anwendungen

Bootstrapping als zufälliges wiederholtes Ziehen kann auf eine Vielzahl von Grundgesamtheiten angewendet werden. Voraussetzung ist nur, dass die Daten (zeit-)unabhängig verwendet werden können. Wenn man bspw. aus einer Reihe von 60 historischen aufeinander folgender Monatsrenditen rj 12 einzelne Monatsrenditen zufällig zieht und die Wachstumsfaktoren (1+rj) zu Jahresrenditen multipliziert und diesen Vorgang wie beim Monte-Carlo-Verfahren sehr häufig wiederholt, so erhält man dadurch eine Verteilungsfunktion der (erwarteten) Jahresrenditen, die man statistisch auswerten kann.
Das Verfahren eignet sich einerseits für deskriptive Kennzahlen wie das arithmetische Mittel oder den Median, aber auch für komplexere Methoden der Inferenzstatistik wie Regressionsmodelle. Durch die Flexibilität des Verfahrens ist es möglich, Standardfehler beliebiger Statistiken zu generieren und somit Inferenzen zu erleichtern.
* Bootstrap-Konfidenzbereiche, Bootstrap-Konfidenzintervalle sind jedoch auch mit Unsicherheiten behaftet, vergleiche Empirisches Quantil
* Bootstrap-Tests
* Bootstrap aggregating

## Verfahren

Es gibt viele Bootstrap-Verfahren, unter anderem Bayesian Bootstrap, Smooth Bootstrap, Parametric Bootstrap, Residual Bootstrap, Gaussian process regression Bootstrap, Wild Bootstrap, Block Bootstrap.

### i.i.d. Bootstrap

Gegeben sei eine Stichprobe $x_{1},...,x_{n}$, die wir als Realisierung von unabhängig und identisch verteilten (i. i. d.) Zufallsvariablen $X_{1},...,X_{n}$ mit unbekannter Verteilungsfunktion $F$ verstehen. Nun werden im einfachsten Fall $B$ Bootstrap-Stichprobenwiederholungen $x_{b}=(x_{1}^{*},\ldots ,x_{n}^{*})\,,b=1,\ldots ,B$ generiert, indem je Ziehung $n$ mal aus der gegebenen Stichprobe ein Wert mit Zurücklegen gezogen wird. Dieses Vorgehen entspricht dem wiederholten Ziehen von Zufallszahlen aus der empirischen Verteilungsfunktion ${\hat {F}}$. Für jede Bootstrap-Stichprobe wird der Wert $T_{b}(x_{1}^{*},\ldots ,x_{n}^{*})=T(x_{b})$ der interessierenden Statistik $T$ berechnet. Die Verteilung von $T(X_{1},\ldots ,X_{n})$ wird schließlich durch die empirische Verteilung der $B$ Werte $T_{b}(x_{1}^{*},\ldots ,x_{n}^{*})$ approximiert. Aus dieser Verteilung der Statistik T kann direkt ein Konfidenzintervall mithilfe der inversen Verteilungsfunktion erzeugt werden. Zudem lassen sich Erwartungswert und Varianz durch den Stichprobenmittelwert und Stichprobenvarianz schätzen.
Die Zahl der möglichen unterschiedlichen Stichprobenwiederholungen (bei Beachtung der Reihenfolge) beim Ziehen mit Zurücklegen ist $\underbrace {n\cdot n\dots n} _{\text{n mal}}=n^{n}$ und steigt somit sehr schnell mit zunehmender Stichprobengröße $n$. Daher beschränkt man sich typischerweise auf eine Monte-Carlo-Simulation, welche eine bestimmte Zahl zufälliger Stichprobenwiederholungen zieht.

### Block-Bootstrap

Block-Bootstrap wird bei zeitlich korrelierten Daten eingesetzt, da i.i.d Bootstrap die zeitliche Korrelation zerstören würde. Beim Block-Bootstrap werden die Daten zunächst in überlappende oder nichtüberlappende, zusammenhängende, Blöcke eingeteilt. Das Signal wird dann z. B. durch Anpassung einer Modellfunktion in einen Trend- und einen Residualanteil aufgeteilt. Nun werden so viele Residualblöcke durch Zurücklegen gezogen und aneinander angehängt, bis die ursprüngliche Länge des Signals erreicht ist. Diese gezogenen Residuuen werden auf die Trendzeitreihe addiert und so wird eine Stichprobenwiederholung erhalten. Dieser Vorgang wird nun oft (z. B. $B=100...1000$) wiederholt. Dann kann auf diesen Stichprobenwiederholungen die gewünschte Statistik (Funktion) berechnet werden.

### Parametrisches Bootstrap

Beim parametrischen Bootstrap wird angenommen, dass die originale Stichprobe einer bekannten Verteilung mit Parametern $\theta$ folgt. Diese Parameter werden zum Beispiel mithilfe der Maximum-Likelihood-Methode geschätzt, sodass man den Schätzwert ${\hat {\theta }}$ erhält. Die geschätzte Verteilungsfunktion ist ${\hat {F}}=F_{\hat {\theta }}$ und aus dieser Verteilung werden wie beim nichtparametrischen Bootstrap wiederholt Stichproben gezogen.

### m-out-of-n Bootstrap

Bei dieser Version des Bootstrap werden kleinere Stichprobenwiederholungen gezogen, dies ist beispielsweise beim bootstrapping von Extremwerten notwendig.

## Bootstrap-Stichprobenverteilungen

Wenn eine hinreichend große Stichprobe repräsentativ für die Grundgesamtheit ist, kann die Stichprobenverteilung für eine beliebige Stichprobenfunktion nichtparametrisch mit Hilfe des Bootstrap-Verfahrens geschätzt werden, ohne dass die Verteilung der Stichprobenvariablen $X_{i}$ bekannt sein muss.

## Beispiel

Efron und Tibshirani geben folgendes Beispiel für den parametrischen Bootstrap: Die Titelseite der New York Times vom 27. Januar 1987 berichtete von einer Studie, nach der das Risiko für einen Herzinfarkt durch die regelmäßige Einnahme kleiner Dosen Aspirin reduziert würde. Folgende Daten wurden erhoben:
| | Herzinfarkt (tödlich und nicht tödlich) | Probanden |
| Aspirin-Gruppe | 104 | 11037 |
| Placebo-Gruppe | 189 | 11034 |
Für die Herzinfarktraten beider Gruppen ergibt sich $104/11037<189/11034$. Der Quotient der Raten beträgt ${\frac {104/11037}{189/11034}}$. Diese Zahl ist $<1$, sodass diese Daten tatsächlich suggerieren, dass die Einnahme von Aspirin das Herzinfarktsrisiko reduziert. Ist diese Erhebung statistisch signifikant und kann auf die Grundgesamtheit übertragen werden oder können diese Ergebnisse durch zufällige Einflüsse erklärt werden? Eine Möglichkeit, dies zu prüfen, bietet der exakte Test nach Fisher. Eine andere Möglichkeit bietet das Bootstrapping-Verfahren. Bezeichne mit $p$ bzw. $q$ die Wahrscheinlichkeit, dass eine Person der Aspiringruppe bzw. Placebo-Gruppe innerhalb des Studienzeitraums einen Herzinfarkt erleidet. Ziel ist es nun, ein approximatives Bootstrap-Konfidenzintervall für $p/q$ zu konstruieren.
Wähle $X\sim \operatorname {Bin} (11037,p)$ und $Y\sim \operatorname {Bin} (11034,q)$. In der Studie wurde die Realisierung $(x,y)=(104,189)$ beobachtet. Ein Schätzer für $p/q$ ist gegeben durch $T={\frac {X/11037}{Y/11034}}$. In der o. g. Studie wurde die Realisierung $0.55$ beobachtet. Um weitere Realisierungen für $T$ zu generieren, benötigt man weitere Realisierungen von $X$ und $Y$. Die Studie könnte wiederholt werden, aber das ist zeitaufwendig und ggf. teuer. Hier hilft die parametrische Bootstrap-Methode. Man schätzt zunächst $p$ und $q$ mit den Daten, die wir beobachtet haben. So erhält man ${\hat {p}}=104/11037$ und ${\hat {q}}=189/11034$. Anstelle von $(X,Y)$ simulieren wir nun mit der Bootstrap-Variante $(X^{*},Y^{*})$, wobei $X^{*}\sim \operatorname {Bin} (11037,{\hat {p}})$ und $Y^{*}\sim \operatorname {Bin} (11034,{\hat {q}})$. Über $t_{i}^{*}={\frac {x_{i}^{*}/11037}{y_{i}^{*}/11034}}$ mit $i=1,2,...,B$ erhält man Bootstrap-Realisierungen $t_{1}^{*},...t_{B}^{*}$ von $T$. Der empirische Mittelwert und die empirische Varianz dieser Datenpunkte sind nun Schätzwerte für den theoretischen Erwartungswert bzw. die theoretische Varianz. Weiterhin lässt sich das gesuchte Konfidenzintervall für $p/q$ über die empirischen Quantile konstruieren.

## Bootstrap-Test

Gegeben zwei Stichproben aus den Verteilungen $F$ und $G$, verläuft ein Bootstrap-Test für die Nullhypothese $H_{0}:F=G$ wie ein Permutationstest, allerdings mit Ziehen mit Zurücklegen aus dem fusionierten Datensatz anstelle von Permutationen.
Bootstrap-Tests können auch die Nullhypothese $H_{0}:F\neq G$ testen und somit für Äquivalenztests benutzt werden.

## Theoretischer Hintergrund

Theoretische ist das Bootstrapping-Verfahren durch den Satz von Gliwenko-Cantelli gestützt.

## Probleme

In hohen Dimensionen ist Residual-Bootstrap (eine Methode zum Bootstrappen von Regressionsmodellen) sehr anti-konservativ bzw. Pair-Bootstrap sehr konservativ.
Bei der Stichprobenwiederholung mit Zurücklegen gilt für eine Stichprobe der Größe $n$, dass die Wahrscheinlichkeit für ein Sample, nicht ausgewählt zu werden, $p=1-1/n$ ist. Somit ist bei einer Stichprobenwiederholung mit Zurücklegen die Wahrscheinlichkeit, dass der Wert n-mal nicht ausgewählt wird (für große Stichprobenumfänge im Limes) $\lim _{n\to \infty }(1-1/n)^{n}=e^{-1}\approx 0.368=1-0.632$. Daher enthält eine Stichprobenwiederholung im Schnitt nur 63,2 % der zugrundeliegenden Werte (wobei diese dann auch mehrfach vorliegen dürfen). Dies führt zu Korrekturen wie dem 632 Bootstrap zum Abschätzen des Generalisierungsfehlers eines gefitteten Modells.
Die Größe der Bootstrap-Stichprobe kann zum Beispiel beim Bootstrapping der Verteilung von Extremwerten Einfluss auf das Ergebnis haben, dort muss die Bootstrap-Stichproben-Größe kleiner sein als die originale Stichprobengröße, um konsistente Ergebnisse zu erhalten.