Willkommen zurück zu meiner Blogserie über Ausreißer. In die erste Folge haben wir uns mit der Definition und visuellen Identifizierung von Ausreißern befasst. In die zweite Folge haben wir Quantile (über Box- und Whisker-Diagramme) verwendet, um Ausreißer in einer Dimension zu identifizieren.
In dieser Folge befassen wir uns mit der Identifizierung von Ausreißern in mehreren Dimensionen mithilfe der Mahalanobis-Distanz. Wir werfen auch einen kurzen Blick auf T 2 , was eine einfache Erweiterung der Mahalanobis-Distanz ist.
Mehrdimensionale Ausreißer
Abbildung 1 ist eine Reproduktion einer der Figuren aus Episode 1 und zeigt ein zweidimensionales Diagramm von 1.000 Datenpunkten mit einem deutlichen Ausreißer (markiert mit dem roten Quadrat):
Figure 1: 1,000 data points in two dimensions, outlier marked in redFigure 1: 1,000 data points in two dimensions, outlier marked in redFigure 1: 1,000 data points in two dimensions, outlier marked in redFigure 1: 1,000 data points in two dimensions, outlier marked in redAbbildung 1: 1.000 Datenpunkte in zwei Dimensionen, Ausreißer rot markiert
Das Streudiagramm in Abbildung 1 ermöglicht es uns, Ausreißer einfach visuell in zwei Dimensionen zu bestimmen, selbst wenn der Ausreißer aus den univariaten Histogrammverteilungen nicht ersichtlich ist. Also die Box & Whisker (Quantil)-Techniken, die in beschrieben werden Episode 2 sind bei der Analyse mehrdimensionaler Daten nicht immer zuverlässig. Und visuelle Identifizierung von Ausreißern (wie in Episode 1 ) wird mit zunehmender Anzahl der Dimensionen schwieriger. Wie können wir diese mehrdimensionalen Ausreißer zuverlässiger erkennen?
Die Mahalanobis-Distanz
Die Mahalanobis-Distanz (D M ) gibt uns eine numerische Methode zur Identifizierung mehrdimensionaler Ausreißer. Es ist nach seinem Schöpfer, dem indischen Statistiker Prasanta Chandra Mahalanobis (1893-1972), benannt. Für weitere Informationen über Dr. Mahalanobis verweise ich Sie an dieser Wikipedia-Artikel .
ANZEIGE M Das Diagramm für den in Abbildung 1 gezeigten Datensatz ist unten dargestellt:
Figure 2: Mahalanobis Distance plot for 1,000 data points from Figure 1Figure 2: Mahalanobis Distance plot for 1,000 data points from Figure 1Figure 2: Mahalanobis Distance plot for 1,000 data points from Figure 1Figure 2: Mahalanobis Distance plot for 1,000 data points from Figure 1Abbildung 2: Diagramm der Mahalanobis-Distanz für 1.000 Datenpunkte aus Abbildung 1
Abbildung 2 zeigt alle Datenpunkte in der Zeilenreihenfolge im Vergleich zu D M auf der Y-Achse. Der Wert von D M denn jeder Punkt stellt den standardisierten „Abstand“ jedes Punkts vom Schwerpunkt aller Datenpunkte dar. Der rote Datenpunkt hebt sich deutlich von den übrigen Punkten ab und würde daher als Ausreißer weitere Untersuchungen rechtfertigen.
Wie funktioniert diese Berechnung?
Die allgemeine Methode
Nehmen wir an, wir haben eine zweidimensionale Verteilung von 1.000 Punkten. In jeder Dimension werden 999 Punkte aus einer normalverteilten Grundgesamtheit mit einem Mittelwert von Null und einer Standardabweichung von 1,0 gezogen. Dann habe ich als letzten Punkt in der Stichprobe einen Ausreißerpunkt hinzugefügt. Wenn wir ein XY-Streudiagramm erstellen, erhalten wir möglicherweise Folgendes:
Figure 3: Scatterplot of 1,000 uncorrelated data points, with one marked outlier (red)Figure 3: Scatterplot of 1,000 uncorrelated data points, with one marked outlier (red)Figure 3: Scatterplot of 1,000 uncorrelated data points, with one marked outlier (red)Figure 3: Scatterplot of 1,000 uncorrelated data points, with one marked outlier (red)Abbildung 3: Streudiagramm von 1.000 unkorrelierten Datenpunkten, mit einem markierten Ausreißer (rot)
Beachten Sie den roten Punkt von Interesse in Abbildung 3. Wir können den Mittelwert und die Standardabweichung der 1.000-Punkte-Stichprobe in jeder Dimension leicht berechnen und den euklidischen Abstand vom roten Punkt zum Schwerpunkt der Punkte mithilfe des Satzes des Pythagoras berechnen. Für Mehrdimensionalität:

Tatsächlich können wir Kreise zeichnen, die auf dem Schwerpunkt zentriert sind und gleiche Abstände vom Schwerpunkt darstellen, wie in Abbildung 4:
Figure 4: Scatterplot of 1,000 uncorrelated data points, with equidistant circles from centroid overlaidFigure 4: Scatterplot of 1,000 uncorrelated data points, with equidistant circles from centroid overlaidFigure 4: Scatterplot of 1,000 uncorrelated data points, with equidistant circles from centroid overlaidFigure 4: Scatterplot of 1,000 uncorrelated data points, with equidistant circles from centroid overlaidAbbildung 4: Streudiagramm von 1.000 unkorrelierten Datenpunkten mit überlagerten äquidistanten Kreisen vom Schwerpunkt
In Abbildung 4 stellen die Kreise Abstände von 1, 2, 3 und 4 Einheiten (vom kleinsten zum größten) zum Schwerpunkt der Punkte dar. Hier ist deutlich zu erkennen, dass der rote Punkt am weitesten vom Schwerpunkt der Punkte entfernt ist. Sein Abstand wird durch „d“ dargestellt.
Dies funktioniert gut, wenn wir ähnlich skalierte Verteilungen haben (dh die Standardabweichungen sind gleich).Was aber, wenn wir unterschiedliche Maßstäbe haben, wie in Abbildung 5 dargestellt?
Figure 5: Scatterplot of 1,000 uncorrelated data points, having different means and standard deviations in each dimension.Figure 5: Scatterplot of 1,000 uncorrelated data points, having different means and standard deviations in each dimension.Figure 5: Scatterplot of 1,000 uncorrelated data points, having different means and standard deviations in each dimension.Figure 5: Scatterplot of 1,000 uncorrelated data points, having different means and standard deviations in each dimension.Abbildung 5: Streudiagramm von 1.000 unkorrelierten Datenpunkten mit unterschiedlichen Mittelwerten und Standardabweichungen in jeder Dimension.
Hier haben wir zwei Probleme. Erstens ist der Mittelwert der Punkte in der X3-Dimension ungleich Null. Das lässt sich ganz einfach beheben, indem man einfach den Mittelwert von allen Datenpunkten subtrahiert.
Das zweite Problem besteht darin, dass die Standardabweichung in der X3-Dimension viel größer ist als in der X1-Dimension. Dies macht eine Entfernungsberechnung hinfällig, es sei denn, wir können die Unterschiede ausgleichen. Auch das ist problemlos möglich. Nachdem wir die mittlere Verschiebung von Null korrigiert haben, dividieren wir einfach jede Dimension durch ihre Standardabweichung. Dies normalisiert alle Abweichungen bei den Standardabweichungen. Die mehrdimensionale Gleichung zur Bewertung dieser Entfernung lautet:

wobei m und s den Mittelwert und die Standardabweichung in jeder Dimension darstellen. Wenn wir diese Berechnungen durchführen und die standardisierten Daten erneut darstellen, erhalten wir die folgende Abbildung:
Figure 6: Data from Figure 5 after transforming to correct for mean and standard deviation of each dimensionFigure 6: Data from Figure 5 after transforming to correct for mean and standard deviation of each dimensionFigure 6: Data from Figure 5 after transforming to correct for mean and standard deviation of each dimensionFigure 6: Data from Figure 5 after transforming to correct for mean and standard deviation of each dimensionAbbildung 6: Daten aus Abbildung 5 nach der Transformation zur Korrektur des Mittelwerts und der Standardabweichung jeder Dimension
Jetzt haben wir eine Möglichkeit, die Daten für Mittelwerte ungleich Null und ungleiche Standardabweichungen anzupassen. Das funktioniert gut, solange die Daten in jeder Dimension unabhängig voneinander (also unkorreliert) sind. Wenn es aber eine Korrelation wie in Abbildung 1 gibt, was machen wir dann?
Eine Möglichkeit, dies zu erreichen, wäre, mithilfe von Hauptkomponenten neue Achsen festzulegen, die an den Trends in den Daten ausgerichtet sind, und dann die oben beschriebenen Vorgänge auszuführen. Dafür sind aber viele Klicks nötig. (Wenn Sie daran interessiert sind, wie dies funktionieren könnte, lesen Sie Anhang A.)
Glücklicherweise gibt uns Dr. Mahalanobis eine einfache und elegante Möglichkeit, diese Entfernung zu berechnen!
Mahalanobis-Gleichung zur Berechnung von Entfernungen
Die elegante Gleichung von Dr. Mahalanobis zur Berechnung des D M Ist:
Wo:

ist ein Vektor von Werten der N Dimensionen des i Th einzelner beobachteter Datenpunkt.
N = die Anzahl der interessierenden Dimensionen (oder Spalten).
T gibt den Transpose-Vorgang an.

ist ein Vektor der Mittelwerte jeder der N interessierenden Dimensionen (oder Spalten).
S -1 ist die Umkehrung der NxN-Kovarianzmatrix für alle Datenpunkte (verfügbar auf der Multivariate-Plattform in JMP).
Das Einsetzen geeigneter Werte in die obige Gleichung ergibt D M aus dem i Th Punkt auf den Schwerpunkt aller Punkte im Datensatz. Wenn Sie daran interessiert sind, wie diese Berechnung funktioniert, bearbeiten Sie in Anhang B ein kleines Beispielproblem.
Die Mahalanobis-Handlung in JMP
D M allein nützt uns wenig. Es hat nur dann Bedeutung, wenn es mit anderen Datenpunkten verglichen wird. Das Mahalanobis-Diagramm in JMP zeigt diese Ergebnisse.
Wir können das Mahalanobis-Diagramm erstellen, indem wir zu Analyse/Multivariate Methoden/Multivariat gehen, die Spalten auswählen und dann aus der roten Dropdown-Liste Ausreißeranalyse/Mahalanobis-Abstand auswählen. Für den Beispieldatensatz aus Abbildung 1 ergibt sich daraus:
Figure 7: Mahalanobis distances for 1,000 data point sample (repeat of Figure 2)Figure 7: Mahalanobis distances for 1,000 data point sample (repeat of Figure 2)Figure 7: Mahalanobis distances for 1,000 data point sample (repeat of Figure 2)Figure 7: Mahalanobis distances for 1,000 data point sample (repeat of Figure 2)Abbildung 7: Mahalanobis-Abstände für eine Stichprobe von 1.000 Datenpunkten (Wiederholung von Abbildung 2)
Hier sehen wir, dass der Datenpunkt in Zeile 1 der Datentabelle den größten Abstand hat (D M ), was bedeutet, dass er von allen 10 Datenpunkten am weitesten vom Schwerpunkt entfernt ist. Die blaue Linie stellt eine 95 %ige obere Konfidenzgrenze (UCL) dar, ob wir dem D glauben M ist deutlich von Null verschieden. Der rote Punkt liegt deutlich über der UCL und erfordert daher als Ausreißer weitere Untersuchungen.
Allerdings sind die Ausreißer nicht immer so offensichtlich zu erkennen, insbesondere bei kleinen Datensätzen. Im Beispiel in Anhang B zeige ich Beispielberechnungen für einen kleinen Datensatz (10 Datenpunkte in drei Dimensionen). Dieser Datensatz generiert ein D M Plot wie unten gezeigt:
Figure 8: Mahalanobis distances for 10 data point sample in Appendix BFigure 8: Mahalanobis distances for 10 data point sample in Appendix BFigure 8: Mahalanobis distances for 10 data point sample in Appendix BFigure 8: Mahalanobis distances for 10 data point sample in Appendix BAbbildung 8: Mahalanobis-Abstände für eine Stichprobe mit 10 Datenpunkten in Anhang B
Das D M Plot hat Punkt 1 als Ausreißer identifiziert. Aber wir sehen auch, dass D M denn Zeile 1 unterscheidet sich nicht allzu sehr von D M für Reihe 7! Warum ist das? Auf die Antwort auf diese Frage müssen Sie auf die nächste Folge warten!
Eine kurze Anmerkung zu T 2
JMP bietet auch eine Option für ein T 2 Berechnung unter Analyse/Multivariate Methoden/Multivariat und dann Ausreißeranalyse. T 2 ist einfach das Quadrat von D M . Manche Leute nutzen es gerne, um eine stärkere visuelle Trennung zwischen den Ausreißern und dem Großteil der Daten zu erzwingen, aber T 2 enthält wirklich die gleichen Informationen wie D M .
Nächste Folge
In der nächsten Folge befassen wir uns mit der Jackknife-Distanz, die eine andere Art der Betrachtung von Ausreißern darstellt und die den Ausreißer aus dem obigen Beispieldatensatz hervorhebt.
Alle Beiträge dieser Serie finden Sie unter Ausreißer verstehen .
Anhang A: Verwendung von Hauptkomponenten zur Identifizierung von Ausreißern
Es wäre schön, wenn wir eine Möglichkeit hätten, die Achsen in Abbildung 1 so zu drehen, dass sie mit dem Datentrend übereinstimmen, etwa so:
Figure 9: Conceptual rotation of axes for two-dimensional data setFigure 9: Conceptual rotation of axes for two-dimensional data setFigure 9: Conceptual rotation of axes for two-dimensional data setFigure 9: Conceptual rotation of axes for two-dimensional data setAbbildung 9: Konzeptionelle Achsendrehung für zweidimensionalen Datensatz
Dann könnten wir die zuvor beschriebenen Techniken zur Standardisierung der Daten verwenden, um Ausreißer zu erkennen.
Eine Möglichkeit hierfür ist die Hauptkomponentenanalyse (PCA). PCA findet den Satz orthogonaler (gegeneinander senkrechter) Achsen, der am besten zu den Daten passt. Sie können so viele Hauptkomponenten haben, wie Sie Originaldimensionen (Spalten) in Ihrem Datensatz haben. In JMP ist PCA an zwei Stellen zu finden: entweder unter Analysieren/Multivariate Methoden/Hauptkomponenten oder unter Analysieren/Multivariate Methoden/Multivariat. Wählen Sie dann im roten Dropdown-Menü neben „Multivariat“ die Option „Hauptkomponenten/Korrelationen“ aus. Das rote Dropdown-Menü bietet auch die Möglichkeit, die Hauptkomponenten wieder in der Datentabelle zu speichern. Sobald Sie dies getan haben, können Sie die oben beschriebenen Methoden zur Korrektur von Mittelwerten und Standardabweichungen verwenden, um den Abstand vom Schwerpunkt zu bestimmen.
Anhang B: D M Berechnungen für einen Beispieldatensatz
Nehmen wir an, wir haben einen Beispieldatensatz mit drei Spalten und 10 Zeilen:
Figure 10: Small sample data set used for DM example calculationsFigure 10: Small sample data set used for DM example calculationsFigure 10: Small sample data set used for DM example calculationsFigure 10: Small sample data set used for DM example calculationsAbbildung 10: Kleiner Beispieldatensatz, der für DM-Beispielberechnungen verwendet wird
In JMP können wir Analysis/Multivariate Methods/Multivariate für diese drei Spalten ausführen, um die folgende Streudiagrammmatrix zu erstellen:
Figure 11: Scatterplot matrix for example dataFigure 11: Scatterplot matrix for example dataFigure 11: Scatterplot matrix for example dataFigure 11: Scatterplot matrix for example dataAbbildung 11: Streudiagrammmatrix für Beispieldaten
In Abbildung 11 sehen wir, dass die Daten der Zeile 1 (rot hervorgehoben) beim Vergleich in den Dimensionen
Wir wollen die Mahalanobis-Distanz für den ersten Punkt berechnen. Füllen Sie also die Vektoren und Matrizen im obigen D aus M Gleichung beginnen wir mit dem Punkt von Interesse:

Die Mittelwerte jeder Spalte können auf verschiedene Arten ermittelt werden. Lassen Sie uns den Cols/Column Viewer verwenden und dann Zusammenfassung anzeigen:
Figure 12: Summary statistics for example three-dimensional 10-point data setFigure 12: Summary statistics for example three-dimensional 10-point data setFigure 12: Summary statistics for example three-dimensional 10-point data setFigure 12: Summary statistics for example three-dimensional 10-point data setAbbildung 12: Zusammenfassende Statistiken für einen dreidimensionalen 10-Punkt-Datensatz
Der Mittelwertvektor wird also zu:

Als nächstes benötigen wir die Kovarianzmatrix, die unter Analyse/Multivariate Methoden zu finden ist. Wählen Sie „Kovarianzmatrix“ aus dem roten Dropdown-Dreieck aus:
Figure 13: Covariance matrix for example three-dimensional 10-point data setFigure 13: Covariance matrix for example three-dimensional 10-point data setFigure 13: Covariance matrix for example three-dimensional 10-point data setFigure 13: Covariance matrix for example three-dimensional 10-point data setAbbildung 13: Kovarianzmatrix für einen beispielhaften dreidimensionalen 10-Punkte-Datensatz
Wir benötigen auch die Umkehrung der Kovarianzmatrix S -1 . JMP stellt uns diese Informationen nicht über das Menüsystem zur Verfügung, aber wir können sie einfach wie folgt aus einem benutzerdefinierten Skript abrufen:
Figure 14: JMP JSL script to find inverse of a matrixFigure 14: JMP JSL script to find inverse of a matrixFigure 14: JMP JSL script to find inverse of a matrixFigure 14: JMP JSL script to find inverse of a matrixAbbildung 14: JMP-JSL-Skript zum Ermitteln der Umkehrung einer Matrix
Das führt zu:
S -1 =

Dann stecken wir einfach ein und lösen die Matrixgleichung:





Die Mahalanobis-Distanz (D M ) beträgt 2,814 für die in Zeile 1 des Beispieldatensatzes angezeigten Daten.
Figure 15: Mahalanobis plot for example data set (repeat of Figure 8)Figure 15: Mahalanobis plot for example data set (repeat of Figure 8)Figure 15: Mahalanobis plot for example data set (repeat of Figure 8)Figure 15: Mahalanobis plot for example data set (repeat of Figure 8)Abbildung 15: Mahalanobis-Plot für Beispieldatensatz (Wiederholung von Abbildung 8)