LOF-Anomalieerkennung
Anomalien mit Local Outlier Factor erkennen. Verwendet den Local Outlier Factor (LOF) zur Messung der lokalen Dichteabweichung von Datenpunkten im Vergleich zu…
Verwendet den Local Outlier Factor (LOF) zur Messung der lokalen Dichteabweichung von Datenpunkten im Vergleich zu ihren Nachbarn. Punkte mit deutlich geringerer Dichte werden als Anomalien klassifiziert.
Was ist der Local Outlier Factor (LOF)?
Der Local Outlier Factor (LOF) ist ein dichtebasierter Algorithmus zur Anomalieerkennung, der Ausreißer identifiziert, indem er die lokale Dichte eines Punktes mit den Dichten seiner Nachbarn vergleicht. Anders als globale Verfahren erkennt LOF Ausreißer auch in Datensätzen mit unterschiedlich dichten Clustern — ein Punkt kann in einem dünn besetzten Cluster normal sein, in der Nähe eines dichten Clusters dagegen anomal.
Der Algorithmus berechnet für jeden Punkt anhand seiner k nächsten Nachbarn die Erreichbarkeitsdistanz und die lokale Erreichbarkeitsdichte (LRD). Der LOF-Wert ist das Verhältnis der LRD eines Punktes zur mittleren LRD seiner Nachbarn. LOF ≈ 1 bedeutet eine ähnliche Dichte wie bei den Nachbarn (normal); LOF >> 1 bedeutet eine deutlich geringere Dichte (Anomalie).
Die Anzahl der Nachbarn (k) steuert die Lokalität: Ein kleines k richtet den Blick auf sehr lokale Strukturen, ein großes k glättet über weiträumigere Nachbarschaften hinweg. Das Kontaminationsverhältnis bestimmt, welcher Anteil der Punkte anhand der Rangfolge der LOF-Werte als Anomalie eingestuft wird.
Formula: reach-dist(A,B) = max(k-dist(B), dist(A,B)) LRD(A) = 1 / (Σ reach-dist(A,Oᵢ) / k) LOF(A) = (Σ LRD(Oᵢ) / LRD(A)) / k LOF ≈ 1: normal, LOF >> 1: outlier
Berechnungsbeispiel
Mit k=5 Nachbarn: Punkt P₁ in einem dichten Cluster hat LRD=10, seine 5 Nachbarn haben im Mittel LRD=9.5. LOF = 9.5/10 = 0.95 (normal). Punkt P₂ am Rand des Clusters hat LRD=2, die Nachbarn im Mittel LRD=8. LOF = 8/2 = 4.0 (eindeutiger Ausreißer). Bei Kontamination=0.05 werden die obersten 5 % mit den höchsten LOF-Werten markiert.
Wann diesen Rechner verwenden
- Wenn die Daten Cluster unterschiedlicher Dichte aufweisen — LOF erkennt lokale Anomalien die globale Methoden wie Z-Score oder Isolation Forest übersehen würden
- Bei multivariater Qualitätsprüfung wenn Messungen von verschiedenen Prüfstationen natürliche Cluster mit unterschiedlicher Streuung bilden
- Bei der Analyse von Anlagenschwingungen oder Sensordaten wo normale Betriebsmodi unterschiedliche charakteristische Muster und Dichten haben
- Wenn Isolation-Forest-Ergebnisse Anomalien nahe dichter Cluster zu übersehen scheinen — der dichtebasierte Ansatz von LOF erfasst diesen Fall
- Bei der Prozessfehlerbehebung zur Identifizierung von Datenpunkten die relativ zu ihrer lokalen Nachbarschaft ungewöhnlich sind, selbst wenn sie in globalen Bereichen liegen
Häufige Fehler vermeiden
- k (Nachbarn) zu klein setzen und Empfindlichkeit gegenüber Rauschen verursachen — sehr kleine k-Werte machen den Algorithmus instabil; mit k=20 starten und basierend auf Ergebnissen anpassen
- LOF auf sehr hochdimensionale Daten anwenden — LOF stützt sich auf Abstandsmetriken die in hohen Dimensionen weniger aussagekräftig werden (Fluch der Dimensionalität); zuerst Dimensionsreduktion erwägen
- Alle Punkte mit LOF > 1 als Anomalien behandeln — LOF > 1 bedeutet nur leicht geringere Dichte als Nachbarn; Kontaminationsschwelle oder aussagekräftigen LOF-Cutoff (z.B. LOF > 2) verwenden
- Features vor LOF-Anwendung nicht skalieren — Features mit größeren numerischen Bereichen dominieren die Abstandsberechnung; alle Features auf Mittelwert Null und Einheitsvarianz standardisieren
Ergebnisse interpretieren
- LOF ≈ 1,0 — der Punkt hat ähnliche Dichte wie seine Nachbarn; er ist ein normales Mitglied seines lokalen Clusters
- LOF 1,5-3,0 — der Punkt liegt in einem Bereich mit geringerer Dichte relativ zu seinen Nachbarn; möglicherweise am Rand eines Clusters oder ein milder Ausreißer
- LOF > 3,0 — der Punkt hat viel geringere Dichte als seine Nachbarn; ein starker lokaler Ausreißer der untersucht werden sollte
- LOF < 1,0 — der Punkt liegt in einem dichteren Bereich als seine Nachbarn; typisch für Punkte im Zentrum enger Cluster
- Wenn viele Punkte hohe LOF-Scores haben, könnten die Daten keine klar definierten Cluster aufweisen — prüfen ob LOF die richtige Methode für diesen Datensatz ist
Zugehörige Normen & Referenzen
- Breunig, Kriegel, Ng & Sander (2000), "LOF: Identifying Density-Based Local Outliers", ACM SIGMOD — Die Originalarbeit, die den hier berechneten LOF-Score definiert
- ISO 16269-4 — Statistische Auswertung von Daten: Erkennung und Behandlung von Ausreißern; die Norm für den Umgang mit markierten Beobachtungen
- ASTM E178 — Standardpraxis für den Umgang mit ausreißenden Beobachtungen; die klassische Ergänzung für univariate Ausreißerentscheidungen
- Aggarwal, Outlier Analysis (Springer) — Umfassendes Referenzwerk, das dichtebasierte Verfahren wie LOF mit isolations- und distanzbasierten Alternativen vergleicht
Häufig gestellte Fragen
Wie wähle ich die Anzahl der Nachbarn (k)?
Beginnen Sie mit k=20 als sinnvollem Standardwert. Ein kleineres k (5-10) erkennt sehr lokale Anomalien, reagiert aber empfindlich auf Rauschen. Ein größeres k (50+) liefert glattere Ergebnisse, kann jedoch örtlich begrenzte Anomalien übersehen. Ein praktisches Vorgehen: Testen Sie mehrere k-Werte und prüfen Sie, ob durchgängig dieselben Punkte markiert werden — Ausreißer, die über verschiedene k-Werte hinweg bestehen bleiben, sind mit höherer Wahrscheinlichkeit echte Anomalien.
Wann sollte ich LOF statt Isolation Forest verwenden?
Verwenden Sie LOF, wenn Ihre Daten Cluster unterschiedlicher Dichte enthalten, denn LOF bewertet jeden Punkt relativ zu seiner lokalen Nachbarschaft. Ein Punkt, der weit von einem dichten Cluster entfernt, aber nahe an einem dünn besetzten Cluster liegt, kann normal sein — LOF behandelt dies korrekt, während globale Verfahren ihn möglicherweise markieren würden. Setzen Sie Isolation Forest bei hochdimensionalen Daten oder sehr großen Datensätzen ein, bei denen die Komplexität von O(n²) für LOF untragbar wird.