Montag, 9. Dezember 2013

Ausreißer bei der Regression, Teil 2

Nach dem ich die Antwort auf die Fragen 2 und 3 noch schuldig geblieben bin, hier nun die weiteren Betrachtungen zum Umgang mit Ausreißern bei der Regression....

Wie war nochmal Frage 2? - Soll man die Residuen auf Ausreißer überprüfen?

Antwort: Ja, unbedingt!!!

Das "ja unbedingt" ist genau so gemeint. Man darf einfach keine Regression berechnen, ohne auf die Residuen zu schauen, und im speziellen Fall auf Ausreißer zu untersuchen.

Wobei, auf Ausreißer untersuchen, nicht unbedingt heißt einen Ausreißertest durchzuführen. Ich persönlich neige eher dazu, den Ausreißertest durch Hinsehen zu machen. Der Hintergedanke dazu ist, dass unser Gehirn extrem gut Muster erkennen kann, und speziell Ausreißer werden sehr gut erkannt. Das mag wohl damit zusammenhängen, dass die Erkennung ungewöhnlicher Umstände überlebenswichtig ist und dadurch die Evolution so gesteuert wurde, dass sich diese Eigenschaft sehr gut entwickeln konnte.

Hinsehen hat aber noch einen anderen Vorteil, der sich erst beim zweiten Nachdenken erschließt. Und damit sind wir schon bei der Frage 3: Kann es sein, dass man in den Residuen einen Ausreißer sieht, diesen aber mit einem Test nicht findet?

Antwort: Ja, das kann sein.

Nun, dazu ein Beispiel: Nehmen wir an, wir hätten einen Datensatz, der sich gut mit einer linearen Regression modellieren lässt. Allerdings stört ein weit außen liegender Ausreisser durch den Hebeleffelt so stark, dass die Regressionslinie kippt und in die falsche Richtung geht (Abbildng links). Zeichnet man dazu den Residuenplot (Abb. rechts), so sieht man den Ausreißer natürlich ganz klar (was ja nicht verwunderlich ist). Allerdings, wenn man auf die Residuen einen Ausreißertest anwendet, so wird der Ausreisser nicht erkannt. Der Grund dafür ist im Hebeleffekt zu suchen. Durch das Kippen der Regressionskurve, rückt der Ausreißer so nahe an die anderen Punkte heran, dass er nicht mehr erkannt werden kann.

Ein Ausreißertest untersucht die Residuen ja unabhängig von x, so dass man die Residuen, streng genommen, nur als Punkteplot auftragen sollte (rechte Abbildung unten). Aus dem Punkteplot wird auch unmittelbar klar, dass ein Ausreissertest den roten Punkt (der der Ausreisser ist) nicht als Ausreisser erkennen kann.

Mittwoch, 27. November 2013

Ausreißertests bei der Regression

Momentan bin ich ziemlich eingedeckt mit Korrekturarbeiten einer Lehrveranstaltung zur Biostatistik. Das ist zwar insgesamt eine sehr nervtötende Arbeit, liefert aber dennoch immer wieder nützliche Hinweise, wo Lernende mit einem bestimmten Stoffgebiet Probleme haben. So liefert die Korrekturzeit für mich immer auch Anregungen, bestimmte Aspekte nochmals intensiver oder aus einem anderem Blickwinkel darzustellen.

Diesmal scheint die Regression und in diesem Zusammenhang der Umgang mit Ausreißern ein schwarzes Loch aufgerissen zu haben, das dringend gestopft gehört (im Gegensatz zu schwarzen Löchern irgendwo im Universum, entsteht beim Auffüllen von schwarzen Löchern in den eigenen Grundkenntnissen keine Strahlung, weshalb man beim Lernen nicht leuchtet ;-)

Genug gequatscht, was ist das Thema? Nun das lässt sich am besten durch ein paar Fragen zusammenfassen:

  1. Soll man die Regressionsvariablen auf Ausreißer überprüfen?
  2. Soll man die Residuen auf Ausreißer überprüfen?
  3. Kann es sein, dass man in den Residuen einen Ausreißer sieht, diesen aber mit einem Test nicht findet?

Antwort zu Frage 1: NEIN!!!

Vielleicht erscheint Ihnen die Frage unsinnig (nach dem Motto: "wie kommt der Lohninger auf diese blöde Idee?"). Wenn das so ist, dann überspringen Sie die folgenden Zeilen und lesen weiter bei der Antwort zur Frage 2.....

Für den Rest des werten Publikums hier eine ausführliche Antwort: Nun, die Regressionsvariablen einzeln auf Ausreißer zu überprüfen, ist deshalb sinnlos, weil es bei der Regression ja darum geht, den Zusammenhang zwischen zwei Variablen zu modellieren, und da macht die Überprüfung der Einzelvariablen wenig (keinen) Sinn. Ein Beispiel soll dies zeigen:

Im linken Diagramm (y1 aufgetragen gegen x1) sieht man einen klassischen Zusammenhang, der sich mit simpler parabolischer Regression einfach modellieren lässt; im rechten Diagramm (y2 gegen x2) gibt es hingegen ganz offensichtlich einen Ausreißer, der abseits der restlichen Daten liegt (und abseits des eigentlichen Zusammenhangs).

Führt man nun einen Ausreißertest (z.B. den Dean-Dixon-Test) aller Einzelvariablen durch, so findet man nur für die Variable y1 einen Ausreißer, nämlich den Punkt P1 - was natürlich im Licht der Regression Blödsinn ist, da gerade dieser Wert im Zusammenhang mit x1 seine Berechtigung hat und schön brav in der Nähe der Regressionskurve liegt. Andererseits ist der Wert P2 im rechten Diagram mit Sicherheit ein Ausreißer, wird aber beim Test der Einzelvariablen nicht gefunden, da die jeweiligen Koordinaten ja innerhalb der Verteilung der Koordinaten der anderen Punkte liegen.

Einzig richtige Schlussfolgerung aus dem Experiment: Hände weg von Ausreißertests der Einzelvariablen!! Das heißt aber nicht, dass Ausreißer nicht massive Probleme bei der Regression machen können.

Soweit die erste Teilantwort auf Frage 1, die weiteren Antworten folgen in den nächsten Tagen (so bald ich wieder Luft habe und die Arbeiten aus der Biostatistik-Lehrveranstaltung fertig korrigiert sind).

Montag, 18. November 2013

DataLab 3.53

Wie heisst es so schön: es kommt erstens anders, und zweitens als man denkt.... So geschehen auch bei der neuen DataLab-Release, die quasi eine ungeplante Frühgeburt ist.

Die Story dahinter ist eigentlich beschämend für einen großen Internet-Konzern: die Firma Yahoo, die irgendwann vor vielen Jahren unseren Provider in Kalifornien aufgekauft hat, hat vor einiger Zeit ohne die Kunden (also uns) zu informieren das http-Protokoll ihrer Server umgestellt, was unmittelbar dazu führte, dass unser Update-Server vergeblich auf Update-Anforderungen von DataLab wartete. Der Effekt ist bekannt - das Update von DataLab funktionierte nicht mehr.

Nach dem die ersten Kunden meckerten, gingen wir der Sache nach. Eine nette Mail an Yahoo brachte ziemlich genau nichts, da dachte sich wohl Goliath, "was will der kleine David, soll er doch ..." Also zogen wir die Notbremse und portierten unseren Update-Server von Kalifornien nach Köln zu Host Europe (eine tolle Hosting-Firma, wir sind sehr zufrieden seit vielen Jahren). Als Konsequenz musste natürlich auch DataLab entsprechend angepasst werden, was dann mitten in den Programmierarbeiten einiger neuer Features zu einer Zwangseinleitung der Geburt der Version 3.53 führte.

Nun das Baby ist da, und kräht.... Als nette Neuerung gibt es "Ridge Regression" mit im Werkzeugkasten, so dass stark korrelierte Deskriptoren auch für MLR verwendet werden können. Leider ist der "Memory Based Learner" immer noch nicht freigegeben, erste interne Tests zeigen aber bereits, wie mächtig diese aufgemöbelte Uralt-Methode ist.

Dienstag, 12. November 2013

Voraussetzungen von Tests

Kürzlich fragten mich einige Studierende, wie man einen Überblick zu den Voraussetzungen von statistischen Tests bekommt. Da dies in den "Grundlagen der Statistik" nirgends zusammengefasst ist, hier eine Liste der Voraussetzungen der wichtigsten stat. Tests:

TestVoraussetzungen
1-Stichproben χ2-TestNormalverteilung der Stichprobe
F-TestNormalverteilung beider Stichproben
1-Stichproben t-TestNormalverteilung der Stichprobe
2-Stichproben t-TestNormalverteilung beider Stichproben
gleiche Varianz der Stichproben
Differenzen t-TestNormalverteilung der Differenzen
Mann-Whitney-U-Testgleiche Verteilungsform der Stichproben
Shapiro-Wilk-Testi.i.d.(1)
Welch-TestNormalverteilung beider Stichproben
einfaktorielle ANOVANormalverteilung aller Gruppen
Gleichheit der Varianz aller Gruppen

Ich hoffe, das klärt vorerst die wichtigsten Fragen und ich werde diese Tabelle bei der nächsten Gelegenheit ins Lehrbuch einfügen.


(1)i.i.d. = "independent and identically distributed" --> alle Beobachtungen sind unabhängig voneinander und stammen von der gleichen Verteilung

Sonntag, 10. November 2013

Kritische Grenzen

Eine Frage, die immer wieder für Verwirrung sorgt, ist die Art und Weise wie man bei statistischen Tests zu einer Entscheidung findet. Die einen schwören auf den Einsatz kritischer Grenzen, bei deren Über- bzw. Unterschreiten eine Nullhypothese abzulehnen ist, die anderen verwenden lieber den p-Wert, der sich aus der Testgröße ergibt.

Neulich hatte ich allerdings das sonderbare Vergnügen, einen Bericht zu lesen bei dem die Testgröße direkt mit dem Signifikanzniveau verglichen wurde, was dem "Paper" (so heißen Forschungsberichte auf Neuhochdeutsch) eine besondere Note verlieh, und der Erstellerin dank meiner Rückmeldung hoffentlich die Erkenntnis, dass man "größer" und "kleiner"-Zeichen nicht überall zur Anwendung bringen sollte.

Worum ging es: ein simpler Test auf Normalverteilung (Lilliefors) wurde durchgeführt, dabei ergaben sich folgende Werte:

TestgrößeLF = 0.2387
zugeordnete Irrtumswahrscheinlichkeitp = 0.021
kritische Grenze für ein Signifikanzniveau von 0.050.2205

Die Autorin des Papers stellte fest, dass die Normalverteilungshypothese abgelehnt werden muss, da die Testgröße (0.2387) größer als 0.05 (das angenommene Signifikanzniveau) ist.

So was tut natürlich weh, da vergleicht einer Äpfel mit Birnen und zieht daraus dann messerscharf einen (zufällig richtigen) Schluss. Warum Äpfel und Birnen? Naja, die Testgröße ist ein Skalar, eine nichtssagende bloße Nummer, das Signifikanzniveau aber eine Wahrscheinlichkeit....

Also nochmals zum Mitschreiben: Entweder man vergleicht die Testgröße mit der kritischen Grenze, oder aber die errechnete Irrtumswahrscheinlichkeit mit dem Signifikanzniveau.


P.S.: Ich muss zugeben, dass das in DataLab nicht konsistent gelöst ist. Bei den Normalverteilungstests werden zwar die kritischen Grenzen angegeben, in der Handlungsanleitung wird aber der p-Wert verglichen. Bei den anderen Tests bezieht sich die Handlungsanleitung auf die Testgrößen und die zugeordneten kritischen Grenzen. Diese Inkonsistenz in der Handlungsanleitung mag gerade Anfänger verwirren, wir werden das ändern. Versprochen.

Montag, 7. Oktober 2013

Regression und Residuen

Haben Sie schon mal überlegt wie groß der Einfluss nicht normalverteilter Residuen auf das Ergebnis einer linearen Regression ist? Wenn nein, dann sollten Sie weiterlesen....

Um diese Frage auf sehr einfachem Niveau zu untersuchen, machen wir den folgenden experimentellen Ansatz: Man nehme 100 Datenpunkte xi in regelmäßigem Abstand (z.B. Werte von 1 bis 100), setze diese in eine beliebige lineare Formel y=kx+d ein und addiere normalverteite Zufallszahlen, so dass man y-Werte bekommt, deren Zusammenhang zu x man kennt, die aber "verrauscht" sind, z.B.:

yi = 5*xi + 7 + 10*gauss

"gauss" ist eine Funktion die normalverteilte Zufallszahlen mit Mittelwert null und Standardabweichung 1 liefert. Auf die Wertepaare {xi,yi} wird nun die lineare Regression angewendet.

Klarerweise sollten sich dann als Parameter der Regression für k etwa 5 und für d etwa 7 ergeben, die Residuen entsprechen dann annähernd der Funktion 10*gauss. Bei diesem Experiment (nennen wir es "ideal") werden die Annahmen der Regression erfüllt, die Ergebnisse sollten sich also den "wirklichen" Werten annähern.

Nun wandeln wir das Experiment ab, in dem wir statt des Terms "10*gauss" einmal den Term "10*abs(gauss)" und einmal den Term 10*sqr(gauss) verwenden. In Worten: Wir erzeugen Residuen, die nicht symmetrisch sind, in dem wir einmal den Absolutwert der normalverteilten Zufallszahlen verwenden, und einmal das Quadrat dieser Zufallszahlen.

Die Ergebnisse der Regression sprechen eine klare Sprache:

ExperimentSteigung kOffset d
ideal5.027+/-0.0366.11+/-2.07
abs5.054+/-0.02412.24+/-1.37
sqr4.979+/-0.04317.19+/-2.5

Während beim idealen Datensatz die Ergebnisse sehr gut mit der "Wirklichkeit" übereinstimmen, gibt des bei den Datensätzen "abs" und "sqr" deutliche Verschiebungen des Offsets d. Was man auch schön sieht, ist, dass das Vertrauensintervall des geschätzten Offsets nicht mehr den wirklichen Wert enthält. Das Ergebnis ist also tatsächlich falsch und nicht bloß "mit statistischen Abweichungen" behaftet.

Schlussfolgerung: Machen Sie genau das, was ich schon immer predige (Sie können gerne zu mir in die Vorlesung kommen um sich die Predigt anzuhören...): Das Wichtigste bei der Regression ist die Analyse der Residuen.

Sieht man sich die Verteilung der Residuen für die drei Experimente an, so schrillen beim geübten Statistiker sofort die Alarmglocken - die Residuen sind nämlich deutlich sichtbar nicht symmetrisch verteilt:

Die Residuenplots wurden mit DataLab gemacht. Falls Sie das Experiment selber durchführen möchten, können Sie die Daten aus dem Data Repository von DataLab laden (Datensatz "Residuen"). Die erste Spalte des Datensatzes enthält die x-Werte, die restlichen Spalten die jeweiligen y-Werte der drei Modelle.

Donnerstag, 29. August 2013

Standardabweichung der Residuen bei MLR

Haben Sie schon mal die Standardabweichung der Residuen bei einer MLR (multiplen linearen Regression) nachgerechnet? Wenn man das naiv (im besten Sinne des Wortes) macht, so nimmt man einfach die Residuen und berechnet daraus die Standardabweichung - fertig. Oder doch nicht?

Na ja, wenn ich schon so blöd frag, dann wird's wohl doch nicht ganz so einfach sein. Sieht man nämlich die naiv berechnete Standardabweichung der Residuen als Schätzwert für die wirkliche (aber unbekannte) Standardabweichung an, so kann man mit ein paar einfachen Experimenten feststellen, dass der naiv berechnete Wert "viel zu gut" ist; d.h. dieser Wert gaukelt ein Modell vor, das besser zu sein scheint als es tatsächlich ist.

Nun der Grund für die zu guten Werte liegt in der Tatsache, dass die mit dem MLR-Modell geschätzten y-Werte ja zumindest auf zwei (meist aber mehr) Deskriptoren beruhen (sonst wär's ja keine MLR). Und generell gilt, je mehr Deskriptoren ich habe, desto eher wird das MLR-Modell sich an die fehlerbehafteten Daten anpassen - und damit die Residuen künstlich verkleinern.

Möchte man also den "wahren" Wert der Residuen kennen, so ist bei der Berechnung eine Korrektur anzubringen, die die Zahl der Deskriptoren (p) berücksichtigt. Und genau das passiert bei einer korrekt berechneten MLR: Die Standardabweichung der Residuen ist eben nicht der naiv berechnete Wert, sondern einer der um den Faktor

größer ist (mit n = Zahl der Beobachtungen, p = Zahl der Deskriptoren).

Montag, 25. März 2013

"Focus" mag meinen Kommentar nicht

Haha! Die Redaktion von "Focus" ist ja ziemlich fix: Mein Versuch, einen Kommentar zu einem Zypern-Artikel anzubringen, wurde innerhalb weniger Minuten mit folgender Begründung abgelehnt:

Hallo Hans Lohninger,

Ihr Beitrag:

... und schon wieder ein Durchschnitt
Durchschnittliche Sparguthaben anzugeben (Zypern: 85000 EUR) ist aus der Sicht des Statistikers eine mehr als fragwürdige Angelegenheit. Sie erzeugen damit einen grob falschen Eindruck. Besser wäre der Median der Sparguthaben. Mehr dazu ist hier zu lesen: http://developing-datalab.blogspot.co.at/2013/03/durchschnittliches-sparguthaben-in.html

wurde von uns nach Prüfung durch einen Administrator nicht veröffentlicht.

Die Gründe, die zu dieser Entscheidung geführt haben können, entnehmen Sie bitte unserer Netiquette: http://www.focus.de/community/netiquette

Eine Erläuterung der Ablehnung ist aus personellen und zeitlichen Gründen nicht möglich.

Ihr FOCUS-Online-Administrationsteam

Bleibt nur noch die Frage, ob die Focus-Redaktion grundsätzlich nur Jubelmeldungen als Kommentar zulässt....

Durchschnittliches Sparguthaben in Zypern

Die dramatischen Ereignisse in Zypern hinterlassen Spuren.... bei mir zwar keine finanziellen Kratzer am Sparbuch, dafür aber einigen Ärger im Gehirn....

So schreibt "Focus", wie viele andere Medien auch, dass das durchschnittliche Sparguthaben in Zypern mit 85000 EUR viermal so hoch ist wie in Deutschland - hm.... - da beginnt auch schon der Ärger:

Wieso lernen Journalisten nicht wenigstens so viel elementare Statistik, um zu wissen, dass der Mittelwert bei schiefen Verteilungen ziemlich weit weg von der "Wahrheit" liegt und dadurch die Berichterstattung total verzerrt wird. Man bekommt da den Eindruck, dass die Zyprioten extrem reich sind (und sich somit den Finanzschnitt ohnehin locker leisten können). Die Wahrheit ist aber, dass das zypriotische Lohnniveau - gemessen an der Kaufkraft - um ca. 30% niedriger als das Lohnniveau in Deutschland ist, und sich somit der "durchschnittliche Zypriote" wohl kaum 85000 EUR ersparen kann.

Gut ausgebildete Journalisten würden an dieser Stelle wohl den Median der Sparguthaben anführen, was nicht nur den Vorteil hätte, dass man diese Zahl wesentlich besser interpretieren könnte (50% aller Sparguthaben liegen unterhalb des Medians, 50% darüber), sondern auch eine weniger verzerrte Berichterstattung ermöglichen würde.

Zur Erklärung ein kleines Experiment, durchgeführt mit dem Zufallszahlengenerator von DataLab: Betrachten wir jeweils 100000 Sparguthaben und füllen sie mit zufälligen virtuellen Guthaben im Bereich zwischen 1000 und 100000 EUR (nehmen wir also die in den letzten Tagen vielbeschriebenen Kleinsparer an), wobei eine leicht rechtsschiefe Verteilung angenommen wird. Beim zweiten Teil des Experiments nehmen wir an, dass 5% der "Sparer" Leute mit viel Geld sind (aus welchen Quellen auch immer). Wir wählen also zufällig 5000 aus den 100000 Sparkonten aus und verpassen diesen Glückspilzen zufällige Beträge zwischen 100000 und 100 Millionen EUR.

So, und nun berechnen wir sowohl den Mittelwert als auch den Median dieser Sparkonten:

                                  95% Kleinsparer
         100% Kleinsparer      5% Leute mit viel Geld
         --------------------------------------------
Mittelw.     52817 EUR               303368 EUR
Median       51734 EUR                52372 EUR
         --------------------------------------------
Wie man leicht erkennen kann, täuscht der Mittelwert eine extrem wohlhabende zypriotische Bevölkerung vor, obwohl grade mal 5% der Sparguthaben "reichen Leuten" gehören (der Mittelwert ist fast 6-mal so hoch wie der Median)....

Da taucht in meinem verärgerten Gehirn ein Satz auf, den manche ältere Semester wohl so ähnlich von prominenter Seite in Erinnerung haben: "Lernen'S a bisserl Statistik, Herr Reporter" (frei nach Bruno Kreisky, 24.2.1981)

Freitag, 15. März 2013

DataLab Release 3.51

Manchmal geht nicht alles nach Plan ... diesmal wollte ich eigentlich, dass der Memory Based Learner (aka KNN) wieder in DataLab zur Verfügung steht - alleine die Programmiergötter waren gegen uns. Also heißt es weiter warten auf der einen Seite des Rubicon und weiter schuften auf der anderen Seite....

Wie auch immer, die neue Release ist sicher einen Versuch Wert. Mehr dazu findet sich auf den DataLab-Seiten.

Nett finde ich den 2D-Datendesigner, mit dem man sich schnell mal zweidimensionale Datensätze "zusammenklicken" kann - was gerade beim Erlernen neuer Methoden sehr hilfreich sein kann.

Freitag, 25. Januar 2013

Signifikanz des Korrelationskoeffizienten

Gestern wurde in einem Forumbeitrag die Frage gestellt, wie man die Signifikanz des Korrelationskoeffizienten nach Spearman berechnet. Zu meiner Antwort direkt im Forum hier noch ein paar praktische Anmerkungen:

1) Die im Posting des Forums erwähnte Umformung in einen t-Wert gilt nur für den Fall, dass man die Korrelation gegen 0 prüfen will, für die Prüfung gegen einen anderen Wert ist eine etwas andere Umformung zu verwenden, die eine normalverteilte Testgröße liefert (siehe letzte Formel auf der entsprechenden Seite in den "Grundlagen der Statistik").

2) Die Überprüfung gegen Null kann man im DataLab direkt machen, in dem man die Korrelationstabelle aufruft und auf den Einstellregler "Level of Signif." klickt. Wie man aus der folgenden Abbildung erkennen kann, ist also der Korrelationskoeffizient des Beispiels im Forum auf dem 5%-Niveau nicht signifikant (sonst würde das Feld mit dem Korrelationskoeffizienten rot aufleuchten)

3) Wer sich das Problem der Verteilung des Korrelationskoeffizienten bei unterschiedlichen Populationswerten klarer machen möchten, dem sei das kleine Simulationsprogramm empfohlen, das ich vor einigen Jahren geschrieben habe, um meinen Studierenden die Situation klarer zu machen (aber dazu sollte ich wohl noch einen gesonderten Blogeintrag schreiben...).

4) Wer nun meint, dass meine Diskussion sich großteils auf den Pearson'schen Koeffizienten bezieht, während im Forum die Frage nach dem Spearman'schen Koeffizienten gestellt wurde, und mir damit eine Themenverfehlung diagnositiziert, der sei darauf hingewiesen, dass sich die beiden Korrelationskoeffizienten nicht unterscheiden, falls keine Bindungen vorliegen (was in diesem Beispiel der Fall ist).

Montag, 7. Januar 2013

DataLab Release 3.506

Manchmal sind kleine Schritte unscheinbar, aber doch irgendwie groß.... so geschehen bei der neuen DataLab-Release. Das gute Stück hat sich in den letzten 5 Monaten um ganze 6 Tausendstel Versionsnummern bewegt (von 3.500 auf 3.506) und trotzdem haben sich wesentliche Dinge ganz deutlich zum Besseren entwickelt. Die umfangreiche Liste der Verbesserungen lässt das Understatement der Versionsnummern nur erahnen.

Einziger Wermutstropfen: KNN (k-Nearest Neighbors) ist vorübergehend vom Mitspielen ausgeschlossen, wird aber als MBL (memory based learner) eine Wiederbelebung erfahren. Mehr zu MBL dann in einem späteren Beitrag.