Local Outlier Factor

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Der Local Outlier Factor (LOF, etwa „Lokaler Ausreißerfaktor“) ist ein Algorithmus zur Erkennung von dichtebasierten Ausreißern, der von Markus M. Breunig, Hans-Peter Kriegel, Raymond T. Ng und Jörg Sander im Jahr 2000 vorgeschlagen wurde.[1] Die Kernidee von LOF besteht darin, die Dichte eines Punktes mit den Dichten seiner Nachbarn zu vergleichen. Ein Punkt, der „dichter“ ist als seine Nachbarn, befindet sich in einem Cluster. Ein Punkt mit einer deutlich geringeren Dichte als seine Nachbarn ist hingegen ein Ausreißer.

LOF hat viele Konzepte gemeinsam mit den Clusteranalyse-Algorithmen DBSCAN und OPTICS.

Kernidee von LOF: die lokale Dichte eines Punktes mit der seiner Nachbarn vergleichen.

LOF definiert die „lokale Umgebung“ eines Punktes über seine nächsten Nachbarn. Der Abstand zu diesen wird verwendet, um eine lokale Dichte zu schätzen. In einem zweiten Schritt wird der Quotient aus den lokalen Dichten seiner Nachbarn und der lokalen Dichte des Punktes selbst gebildet. Dieser Wert bewegt sich nahe an wenn ein Punkt in einem Bereich gleichmäßiger Dichte ist. Für Objekte, die aber abgeschieden von einer solchen Fläche sind, wird der Wert deutlich größer und kennzeichnet so Ausreißer.

Die ist die Distanz des Objektes zu seinem k-nächsten Nachbarn. Diese Menge kann gegebenenfalls mehr als k Objekte enthalten, wenn es mehrere Objekte mit dem gleichen Abstand gibt. Wir bezeichnen diese „k-Nachbarschaft“ hier mit .

Illustration der Erreichbarkeitsdistanz. Objekte B und C haben die gleiche Erreichbarkeitsdistanz (k=3), während D kein k-nächster Nachbar ist

Basierend auf dieser Distanz wird die „Erreichbarkeitsdistanz“ definiert:

Die Erreichbarkeitsdistanz eines Objektes von ist also entweder der wahre Abstand, jedoch mindestens die von . Objekte die zu den k-nächsten Nachbarn von gehören werden also als gleich weit entfernt betrachtet. Die Motivation für diese Distanzdefinition ist es, stabilere Ergebnisse zu bekommen. (Es handelt sich hierbei aber nicht mehr um eine Distanzfunktion im mathematischen Sinne, da sie nicht symmetrisch ist.)

Die lokale Erreichbarkeitsdichte („local reachability density“, „lrd“) eines Objektes wird definiert als

Diese Dichte ist also der Kehrwert der durchschnittlichen Erreichbarkeitsdistanz des Objektes von seinen Nachbarn, nicht andersherum die durchschnittliche Erreichbarkeitsdistanz der Nachbarn von , was definitionsgemäß wäre. Bei Duplikaten in einem Datensatz wird die Erreichbarkeitsdichte dieser Objekte unendlich.

Die lokale Erreichbarkeitsdichte wird jetzt mit denen der Nachbarn verglichen:

Der „Local Outlier Factor“ (LOF) ist also die „Durchschnittliche Erreichbarkeitsdichte der Nachbarn“ dividiert durch die Erreichbarkeitsdichte des Objektes selbst. Ein Wert von etwa bedeutet, dass das Objekt eine mit seinen Nachbarn vergleichbare Dichte hat (also kein Ausreißer ist). Ein Wert kleiner als bedeutet sogar eine dichtere Region (was ein sogenannter „Inlier“ wäre), während signifikant höhere Werte als einen Ausreißer kennzeichnen.

LOF-Werte visualisiert mit ELKI. Obwohl der Cluster oben rechts eine mit den Ausreißern unten links vergleichbare Dichte hat, werden sie korrekt klassifiziert.

Im Gegensatz zu vielen globalen Verfahren zur Ausreißererkennung kann LOF mit Bereichen unterschiedlicher Dichte in demselben Datensatz umgehen. Punkte mit einer „mittleren“ Dichte in einer Umgebung mit „hoher“ werden von LOF als Ausreißer klassifiziert, während ein Punkt mit „mittlerer“ Dichte in einer „dünnen“ Umgebung explizit nicht als solcher erkannt wird.

Während die geometrische Intuition von LOF nur in niedrigdimensionalen Vektorräumen Sinn ergibt, kann das Verfahren auf beliebigen Daten angewendet werden, auf denen eine „Unähnlichkeit“ definiert werden kann. Es muss sich dabei nicht um eine Distanzfunktion im strengeren mathematischen Sinne handeln, die Dreiecksungleichung wird beispielsweise nicht benötigt. Der Algorithmus wurde erfolgreich auf verschiedensten Datensätzen eingesetzt, beispielsweise zum Erkennen von Angriffen in Computernetzwerken, wo er bessere Erkennungsraten lieferte als die Vergleichsverfahren.[2]

Ein wichtiger Nachteil von LOF ist, dass die Ergebniswerte schwer zu interpretieren sind. Werte um und weniger sind sicher keine Ausreißer, aber es gibt keine klare Regel, ab welchem Wert ein Punkt ein signifikanter Ausreißer ist. In einem sehr gleichmäßigen Datensatz sind Werte von auffällig, in einem Datensatz mit starken Dichteschwankungen kann ein Wert wie noch ein ganz normaler Datenpunkt sein. Im schlimmsten Falle treten solche Unterschiede sogar in unterschiedlichen Teilen desselben Datensatzes auf.

  • Feature Bagging for Outlier Detection[3] wendet LOF in mehreren Projektionen an und kombiniert die Ergebnisse, um in hochdimensionalen Daten bessere Ergebnisse zu erhalten.
  • Local Outlier Probability (LoOP)[4] ist eine von LOF abgeleitete Methode, die die Dichte statistisch schätzt, um weniger abhängig vom genauen Wert von k zu werden. Zusätzlich wird das Ergebnis statistisch in den Wertebereich normalisiert, um besser interpretierbare Werte zu liefern.
  • Interpreting and Unifying Outlier Scores[5] stellt eine Normalisierung für LOF und andere Verfahren vor, die die Scores statistisch in das Intervall normalisiert um die Benutzerfreundlichkeit des Ergebnisses zu verbessern.

Eine Referenzimplementierung ist im Software-Paket ELKI verfügbar, inklusive Implementierungen von Vergleichsverfahren.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. M. M. Breunig, Hans-Peter Kriegel, R.T. Ng, J. Sander: LOF: Identifying Density-based Local Outliers. In: ACM SIGMOD Record. Nr. 29, 2000, S. 93, doi:10.1145/335191.335388 (Online PDF).
  2. Ar Lazarevic, Aysel Ozgur, Levent Ertoz, Jaideep Srivastava, Vipin Kumar: A comparative study of anomaly detection schemes in network intrusion detection. In: Proc. 3rd SIAM International Conference on Data Mining. 2003, S. 25–36 (Online PDF). Online (Memento des Originals vom 17. Juli 2013 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.siam.org
  3. A. Lazarevic, V. Kumar: Feature bagging for outlier detection. In: Proc. 11th ACM SIGKDD international conference on Knowledge Discovery in Data Mining. 2005, S. 157–166, doi:10.1145/1081870.1081891.
  4. Hans-Peter Kriegel, P. Kröger, E. Schubert, A. Zimek: LoOP: Local Outlier Probabilities. In: Proc. 18th ACM Conference on Information and Knowledge Management (CIKM). 2009, S. 1649, doi:10.1145/1645953.1646195 (Online PDF).
  5. Hans-Peter Kriegel, Peer Kröger, Erich Schubert, Arthur Zimek: Interpreting and Unifying Outlier Scores. In: Proc. 11th SIAM International Conference on Data Mining. 2011 (Online PDF).