🗓 Save the Date KI-Snack Week 2026 – Das KI-Event für Macher & Entscheider · 09.–13. November 2026 · München + Online Jetzt anmelden →
Tipps & Tricks

Fünf wesentliche Methoden zur robusten Erkennung von Ausreißern

4 min Lesezeit
Fünf wesentliche Methoden zur robusten Erkennung von Ausreißern

Die Erkennung und Handhabung von Ausreißern ist entscheidend für den Erfolg jeder Datenanalyse.

Ausreißer können die Leistung von prädiktiven Analysemodellen erheblich beeinträchtigen. Daher ist es von großer Bedeutung, diese in jedem Datenprojekt robust zu erkennen und zu behandeln. Der folgende Artikel stellt fünf wesentliche Ansätze zur Erkennung von Ausreißern vor und vergleicht deren Effektivität.

1. Die Z-Score-Methode

Die Berechnung des Z-Scores ist eine einfache Methode, die am besten für normalverteilte Datenvariablen geeignet ist. Sie misst, wie viele Standardabweichungen jeder Punkt vom Mittelwert entfernt ist. Ein Datenpunkt mit einem Z-Score von 3 oder höher (oder -3 oder niedriger) wird als Ausreißer gekennzeichnet, was bedeutet, dass der Abstand mehr als drei Standardabweichungen vom Mittelwert beträgt. Trotz ihrer Einfachheit hat diese Methode den Nachteil, dass Mittelwerte und Standardabweichungen sehr empfindlich auf extreme Werte reagieren.

import numpy as np
from scipy import stats
data = np.array([10, 12, 11, 13, 12, 11, 10, 12, 11, 13, 250])
z_scores = np.abs(stats.zscore(data))
outliers = data[z_scores > 3]
print(outliers)

Ausgabe: [250]

2. Die Interquartilsbereich (IQR)-Methode

Wenn Ihre Datenvariablen nicht normalverteilt sind, ist der IQR eine bessere und robustere Wahl als die Z-Score-Berechnung. Diese Methode verwendet Perzentile, indem sie die Spannweite zwischen dem ersten Quartil (Q1, 25. Perzentil) und dem dritten Quartil (Q3, 75. Perzentil) bestimmt. Grenzwerte, die 1,5-mal den IQR unter Q1 und über Q3 liegen, werden berechnet und fungieren als „Zaun“. Punkte, die außerhalb dieser beiden Zäune liegen, werden als Ausreißer gekennzeichnet. Der Vorteil des IQR liegt in seiner Robustheit, da extreme Werte die Quartile nicht so beeinflussen wie Mittelwerte und Standardabweichungen.

import numpy as np
data = np.array([10, 12, 11, 13, 12, 11, 10, 12, 11, 13, 250])
q1, q3 = np.percentile(data, [25, 75])
iqr = q3 - q1
lower_fence = q1 - 1.5 * iqr
upper_fence = q3 + 1.5 * iqr
outliers = data[(data < lower_fence) | (data > upper_fence)]
print(outliers)

Ausgabe: [250]

3. Isolation Forests

Bei der Verarbeitung komplexer Datensätze mit hoher Dimensionalität sind traditionelle Methoden wie Z-Scores und der IQR oft nicht mehr effektiv. Hier kommen Isolation Forests ins Spiel, eine Technik des maschinellen Lernens, die darauf abzielt, Anomalien von „normalen“ Daten zu isolieren. Das Konzept ähnelt klassischen Entscheidungsbäumen für Klassifikation und Regression: Ausreißer sind seltene Datenpunkte, sodass sie durch Baumpartitionen leichter isoliert werden können. Wenn ein Punkt vom Baumalgorithmus sehr leicht von anderen getrennt wird, ist die Wahrscheinlichkeit hoch, dass es sich um einen Ausreißer handelt.

import numpy as np
from sklearn.ensemble import IsolationForest
data = np.array([10, 12, 11, 13, 12, 11, 10, 12, 11, 13, 250]).reshape(-1, 1)
model = IsolationForest(contamination=0.1, random_state=42)
predictions = model.fit_predict(data)
outliers = data[predictions == -1]
print(outliers)

Ausgabe: [[250]]

4. Median Absolute Deviation (MAD)

Diese Methode stellt eine deutlich robustere Version des Z-Scores dar: MAD verwendet den Median, der unempfindlich gegenüber extremen Werten ist, und absolute Abweichungen davon, um einen verbesserten „Z-Score“ zu berechnen. Es ist jedoch zu beachten, dass MAD normalerweise auf eindimensionalen Daten angewendet wird, also eine univariate Technik ist.

import numpy as np
from scipy.stats import median_abs_deviation
data = np.array([10, 12, 11, 13, 12, 11, 10, 12, 11, 13, 250])
mad = median_abs_deviation(data, scale="normal")
median = np.median(data)
modified_z_scores = np.abs(data - median) / mad
outliers = data[modified_z_scores > 3]
print(outliers)

Ausgabe: [250]

5. Dichtebasiertes Clustering: DBSCAN

Diese Methode eignet sich hervorragend zur Identifizierung von Ausreißern in räumlichen Daten oder Datensätzen mit komplexen Gruppierungen. Der DBSCAN-Algorithmus bildet Gruppen um Punkte, die in Bereichen hoher Dichte nahe beieinander liegen. Während seiner Anwendung werden Datenpunkte, die in Bereichen mit niedriger Dichte isoliert sind, automatisch als Rauschen, also als Ausreißer, identifiziert. Ähnlich wie bei der dritten Methode (Isolation Forests) handelt es sich um eine multivariate Technik, die es ermöglicht, mehrdimensionale Datenpunkte im Prozess der Ausreißerdetektion zu bewerten.

import numpy as np
from sklearn.cluster import DBSCAN
data = np.array([10, 12, 11, 13, 12, 11, 10, 12, 11, 13, 250]).reshape(-1, 1)
model = DBSCAN(eps=5, min_samples=2)
labels = model.fit_predict(data)
outliers = data[labels == -1]
print(outliers)

Ausgabe: [250]

Zusammenfassung

Die Wahl der richtigen Methode zur Ausreißerdetektion hängt vom Verständnis der eigenen Daten ab. Die Z-Score- und IQR-Methoden sind schnelle, einfache Optionen für univariate Daten, wobei der IQR die sicherere Wahl ist, wenn die Variablen nicht normalverteilt sind. MAD bietet eine robustere univariate Alternative für Fälle, in denen extreme Werte das Ergebnis verzerren könnten. Bei mehrdimensionalen oder komplex strukturierten Daten erweitern Isolation Forests und DBSCAN die Ausreißerdetektion über einfache statistische Schwellenwerte hinaus und erfassen Beziehungen, die einfachere Methoden möglicherweise übersehen. Es gibt keinen universell besten Ansatz, sondern nur den, der am besten zur Form und Skala Ihrer Daten passt.

„`


Quellen: kdnuggets

Bildquelle: KI generiert

🚀
KI-Snack Week 2026 · 09.–13. November
Das KI-Event für Macher & Entscheider
2 Tage live in München + 3 Tage Online-Masterclasses · Jetzt Ticket sichern
Mehr erfahren →
KI Snack