Wann wendet man ein Bootstrap an?

Wann wendet man ein Bootstrap an?

Beitragvon Statistik-Interessierter » Sa 14. Sep 2013, 20:17

Hallo zusammen,

erstmal, ich hoffe ich habe das Thema im richtigen Bereich erstellt. Bin mir nicht sicher, ich denke es gehört eher zu nicht parametrischen Tests oder Regressionsanalyse!? Aber da in diesem Bereich bereits über Bootstrap geredet wurde, dacht ich mir, ich bleib dabei. Ich muss mich seit kurzem mit Bootstrapping beschäftigen, aber so richtig steig ich nicht dahinter, da ich kein Intuitives Beispiel finde. Ich finde wenn dann immer nur Zahlenbeispiele, aber ohne eine Interpretation steig ich bei sowas nur schwer dahinter.

Was der Bootstrap theoretisch leisten soll, kann ich halbwegs nachvollziehen, aber wie der funktioniert versteh ich nicht. Ich hab mir mal ein Beispiel ausgedacht:

Angenommen ich will untersuchen, ob exotische Früchte (Litschi, Sternenfrucht, ...) besser oder schlechter schmecken als bekannte Früchte (Äpfel, Birnen, Bananen, ...). D.h. das Ziel ist quasi zu schauen, ob es einen signifikanten Einfluss auf die Geschmackswahrnehmung hat, ob es eine untypische Frucht für die jeweilige Region ist. Dazu habe ich eine Stichprobengröße von 500 Datensätzen. Ein Spalteneintrag der Daten Datensätze beschreibt dann beispielsweise, ist es eine exotische Frucht die grade beschrieben wird oder nicht (d.h. hier stehen nur 0 oder 1 drin) und ein anderer Spalteneintrag beschreibt wie gut die Frucht geschmeckt hat (hier stehen Werte von 0 für "gar nicht gut" bis 1 "sehr gut" drin). Angenommen in der Stichprobe sind nur 13 Einträge, die eine exotische Frucht beschreiben, der Rest der Einträge sind entsprechend bekannte Früchte. Eine einfaktorielle Anova Analyse liefert, dass hier kein signifikanter Zusammenhang zwischen der Art Frucht und dem Geschmacksempfinden besteht. Aber da die eine Teilgruppe nur aus 13 Einträgen besteht, ist das ganze nicht aussagekräftig.
Um statistisch auswertbarere Daten zu bekommen und die Anzahl der exotischen Frucht-Beschreibungen zu erhöhen, würde es sich anbieten ein Bootstrap drüber zu legen?! Ist das richtig oder ist da bereits ein grundlegender Fehler im Verständnis?

Und wenn es richtig ist, wie würde man das machen? Ich würde das quasi mit R umsetzen, hab mir das Paket da grundsätzlich auch schon mal angeschaut. Da gibt es jedoch ein Argument, das lautet: "es handelt sich um eine Funktion, welche, wenn sie auf die Daten angewendet wird, eine Vektor wiedergibt, der die Statistik von Interesse enthält." Aber was ist denn die Statistik von Interesse in dem oben beschriebenen Problem, das versteh ich irgendwie nicht?
Statistik-Interessierter
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: Sa 14. Sep 2013, 19:49
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Wann wendet man ein Bootstrap an?

Beitragvon Holgonaut » So 15. Sep 2013, 10:27

Hi,

ich kenne zwei Situationen, in denen man bootstrapping betreibt:
a) Berechnung des Standardfehlers eines indirekten Effekts
b) Um einen Chi-Quadrattest in einem SEM zu erhalten, wenn Multi-normalverteilungen nicht erfüllt sind (google mal nach Bollen-Stine)

Zu a: Ein indirekter Effekt setzt sich multiplikativ aus zwei direkten zusammen. Angenommen du hast ein Modell X ---a---> M ---b----> Y
dann ergibt sich der indirekte Effekt ab eben aus a*b. Das ist einfach un manuell ausrechenbar. Was nicht so klar ist, ist wie der SE
von ab ist. Da gibts z.B. den sog. Sobel-Test, nach dem man den SE_ab ausrechnen kann.
Und eine andere Form, um ihn zu erhalten ist eben bootstrapping. Erinnere dich, dass eine Stichprobenverteilung von a (oder b) alle
Stichprobenschätzungen (und eben ihre Varianz/Verteilung) von a illustriert. Diese ist Grundlage des Signifikanztests (das ist
dir alles hoffentlich bekannt). Was man im bootstrapping macht, ist, eine künstliche Stichprobenverteilung anzulegen, in dem mann ca.
5000x *aus der tatsächlichen Stichprobe* Sub-Stichproben mit Zurücklegen zieht und in jeder dieses Stichproben ab berechnet. Ergebnis
ist eine Grundlage zur Beurteilung des indirekten Effekts.

Das von dir gewählte Beispiel ist allerdings falsch. Man kann keine Daten erzeugen (schön wärs ;) )

Gruß
Holger
Holgonaut
Foren-Unterstützer
Foren-Unterstützer
 
Beiträge: 767
Registriert: Do 2. Jun 2011, 18:20
Danke gegeben: 3
Danke bekommen: 207 mal in 198 Posts

Re: Wann wendet man ein Bootstrap an?

Beitragvon Statistik-Interessierter » Mo 16. Sep 2013, 10:36

Vielen Dank Holger.

Ich hab jetzt dazu mal noch ein bissel weiter recherchiert.
Wenn ich das richtig verstanden habe, passiert bei einem bootstrap mit 1.000 Replikationen folgendes: Sagen wir, ich habe eine Stichprobe mit Umfang 20. Dann ziehe ich 1.000 Stichproben des Umfangs 20 durch ziehen mit zurücklegen aus den ursprünglichen Werten. Für jede dieser Stichproben errechne ich den Mittelwert und die Varianz (oder auch die Standardabweichung, halt irgendein Streuungsmaß). D.h. mein Ergebnis ist quasi ein Vektor der die 1.000 Mittelwerte enthält und ein Vektor, der die 1.000 Varianzen enthält. Aus diesen beiden Vektoren kann ich dann quasi eine Verteilungsfunktion für meinen Mittelwert der ursprünglichen Stichprobe erzeugen und basierend darauf schätze ich meinen Mittelwert und erhalten gleichzeitig noch ein recht gutes Konfidenzintervall für ihn.

Hab ich das so richtig verstanden?

Was ich nicht ganz nachvollziehen kann, wie kann man daraus einen Signifikanztest machen? Kann man das überhaupt? Also Angenommen ich habe eine reine X --> Y Beziehung und will nun wissen, ob X einen signifikanten Einfluss hat (beispielsweise im Anfangsbeispiel die Exotithek auf den Geschmack).

BG
Torsten
Statistik-Interessierter
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: Sa 14. Sep 2013, 19:49
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Wann wendet man ein Bootstrap an?

Beitragvon Holgonaut » Mo 16. Sep 2013, 10:47

Hi,

ja, das hast du korrekt verstanden. Einen Signifikanztest kannst du mache, wenn du entweder die Standarabweichung als empirisches Maß des erwünschten Standardfehlers berechnest und den
Parameter durch diesen teilst (ergibt einen t - oder z-wert) oder das Konfidenzintervall berechnest und schaust, ob dein Parameter darin ist oder außerhalb.

Gruß
Holger
Holgonaut
Foren-Unterstützer
Foren-Unterstützer
 
Beiträge: 767
Registriert: Do 2. Jun 2011, 18:20
Danke gegeben: 3
Danke bekommen: 207 mal in 198 Posts

Re: Wann wendet man ein Bootstrap an?

Beitragvon Statistik-Interessierter » Sa 9. Nov 2013, 21:55

Vielen Dank Holger,

tschuldigung, dass ich so spät wieder darauf bezug nehme, in den letzten beiden Monaten ist meine Arbeit dazwischen gekommen, so dass ich für diese "Privatvergnügen" keine Zeit hatte. Ich habe mich dann heute endlich mal wieder mit dem Problem beschäftigt.
So ganz versteh ich deinen Vorschlag nicht. Mir sind zwei Varianten eingefallen, wie ich mit meinem Problem umgehe, ich bin mir nur nicht sicher ob das so funktioniert wie ich mir das denke.

Meine Stichprobe hat den Umfang n = 480. Ich habe drei Gruppen, Gruppe 1 hat die Größe n = 12, Gruppe 2 hat die Größe n = 15 und für Gruppe 3 gilt n = 453. Kruskal Wallis H Test liefert keine Signifikanz (auch andere Tests, aber auf die Stichprobe her, passt der Kruskal Wallis H Test am besten), der p-Wert ist 0,2145506 > 0,05.

Variante 1:

Ich übergebe an den Bootstrap einen Vektor (Untersuchungsgröße, Gruppierungsgröße), hieraus soll der Bootstrap seine Stichprobe der Größe n=480 ziehen, dann einen Kruskal Wallis H Test durchführen und den p-Wert zurückgeben. Das ganze soll 1.000 mal gemacht werden, dadurch erhalte ich eine Verteilung für den p-Wert.

Als Ergebnis für den p-Wert erhalte ich:
original = 0,2145506
bias = 0,006350263
std. error = 0,2510791

Der Standardfehler ist recht hoch, doch der Mittelwert der 1.000 Bootstraps des p-Wertes beträgt 0,2209009.

Kann man da jetzt sagen, dass der Unterschied zwischen den Gruppen nicht signifikant ist? Ist das sinnvoll den Bootstrap derart auszulegen?

Variante 2:

Ich nehme nicht mehr die gesamte Stichprobe von n=480 sondern zerlege sie in drei vektoren, in einem sind nur die 12 Zielgrößen der Gruppe 1 enthalten, im nächsten sind die 15 Zielgrößen der Gruppe 2 enthalten und im dritten der Rest.

Nun wende ich auf jeden dieser Vektoren einen Bootstrap mit R = 1.000 an, welcher mir die Mittelwerte und Standardabweichung einer zufälligen Stichprobe der jeweiligen Gruppe zurückgibt. D.h. ich bekomme für jede Gruppe 1.000 mögliche Mittelwerte. Diese 3.000 Mittelwerte packe ich dann zu einem Vektor zusammen und weise jedem Mittelwert seine Gruppenvariable zu. Auf diesen neuen Vektor wende ich eine ANOVA an (weil aufgrund des Bootstraps die der neue Vektor Normalverteilt ist und alle Bedingungen einer ANOVA erfüllt). Der erhaltene p-Wert ist hoch signifikant. Also wenn ich das noch detaillierter Untersuche, sind Gruppe 2 und 3 nicht signifikant unterschiedlich voneinander, aber Gruppe 1 besitzt eine hohe Signifikanz.

Aber was mich an der Variante stört: Gruppe 3, die ja einen hohen Stichprobenumfang besitzt, hat relativ stabile Mittelwerte nach dem Bootstrap, was logisch ist, einfach aufgrund der enormen Größe der Stichprobe, die Mittelwerte der beiden anderen Gruppen haben eine recht hohe Standardabweichung, was aufgrund ihres geringen Stichprobenumfangs ebenfalls logisch ist. Aber gerade diese beiden Effekte, die ja vorhersehbar sind, lassen mich daran zweifeln, dass diese Variante wirklich sinnvoll ist, um eine Signifikanzaussage zu treffen ...

Ich würde gerne mal eure beiden Meinung von beiden Varianten hören :-)

Vielen Dank im Vorraus schon einmal
Statistik-Interessierter
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: Sa 14. Sep 2013, 19:49
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Pfadanalyse, Strukturgleichungsmodelle & CFA

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste

cron