Räumliche Ausreißer erkennen (Spatial Statistics)

Zusammenfassung

Erkennt globale oder lokale räumliche Ausreißer in Punkt-Features.

Ein globaler Ausreißer ist ein Punkt, der sich weit entfernt von allen anderen Punkten in einer Feature-Class befindet. Globale Ausreißer werden erkannt, indem die Entfernungen zwischen jedem Punkt und seinem nächsten Nachbarn (der nächste Nachbar ist die Standardeinstellung) geprüft und die Punkte identifiziert werden, bei denen die Entfernung groß ist.

Ein lokaler Ausreißer ist ein Punkt, der weiter von seinen Nachbarn entfernt ist als es die Dichte der Punkte in der Umgebung erwarten ließe. Lokale Ausreißer werden erkannt, indem der lokale Ausreißer-Faktor (Local Outlier Factor, LOF) für die einzelnen Features berechnet wird. Der lokale Ausreißer-Faktor ist ein Messwert, mit dem beschrieben wird, wie isoliert ein Standort im Vergleich zu seinen lokalen Nachbarn ist. Ein höherer Wert für den lokalen Ausreißer-Faktor zeigt eine höhere Isolation an. Darüber hinaus kann mit dem Werkzeug eine vorhergesagte Raster-Oberfläche erstellt werden, mit der geschätzt werden kann, ob neue Features auf der Grundlage der räumlichen Verteilung der Daten als Ausreißer klassifiziert werden.

Weitere Informationen zur Funktionsweise von "Räumliche Ausreißer erkennen"

Abbildung

Abbildung des Werkzeugs "Räumliche Ausreißer erkennen"

Verwendung

  • Mit diesem Werkzeug werden im Parameter Eingabe-Features angegebene Punkte als räumliche Ausreißer oder räumliche Inlier erkannt. Der Parameter Nur räumliche Ausreißer beibehalten kann verwendet werden, um nur als Ausreißer identifizierte Punkte zurückzugeben.

  • Für das Werkzeug wird eine lokale Nachbarschaft um die einzelnen im Parameter Anzahl der Nachbarn angegebenen Features verwendet. Für die Erkennung lokaler Ausreißer werden alle Punkte in der Nachbarschaft verwendet. Der Standardwert wird vom Werkzeug zur Laufzeit geschätzt. Für die Erkennung globaler Ausreißer wird nur der am weitesten entfernte Nachbar in der Nachbarschaft verwendet. Der Standardwert ist 1 (nächster Nachbar). Beispiel: Der Wert 3 gibt an, dass globale Ausreißer auf Basis der Entfernungen zum drittnächsten Nachbarn jedes Punktes erkannt wurden.

  • Zum Erkennen lokaler Ausreißer wird der Parameter Prozentsatz an Positionen, die als Ausreißer gelten verwendet, um einen Schwellenwert für den LOF festzulegen, ab dem ein Punkt-Feature als Ausreißer oder Inlier gilt.

    Hinweis:

    Geringe Unterschiede in den Werten für den Parameter Prozentsatz der Positionen, die als Ausreißer gelten können dazu führen, dass die gleiche Anzahl von Ausgabe-Features als Ausreißer gelten. Das kann vorkommen, wenn Ähnlichkeiten in der räumlichen Verteilung für Features dazu führen, dass mehrere Features denselben LOF-Wert aufweisen.

  • Die Ausgabe-Layer beinhalten zwei Diagramme. Das eine ist ein Balkendiagramm, mit dem die Anzahl der Ausreißer und Inlier dargestellt wird. Das zweite Diagramm ist ein Histogramm. Zum Erkennen lokaler Ausreißer, stellt das Histogramm die Verteilung von LOF-Werten für alle Punkt-Features und den LOF-Schwellenwert dar, mit dem bestimmt wird, ob ein Feature als Ausreißer oder Inlier gilt. Für die Erkennung globaler Ausreißer zeigt das Histogramm die Verteilung der Nachbarentfernungen und den zugehörigen Schwellenwert an.

  • Wenn der Parameterwert Eingabe-Features eine Z-Koordinate aufweist, wird vom Werkzeug die 3D-Eigenschaft der Daten berücksichtigt, indem räumliche Ausreißer im 3D-Raum erkannt werden. Beim Hinzufügen zu einer Szenenansicht werden die Ausgabe-Features zur Visualisierung der räumlichen Ausreißer in 3D dargestellt. Wenn die Einheit (z. B. Meter) der Z-Koordinate in einem vertikalen Koordinatensystem nicht definiert ist, wird davon ausgegangen, dass diese der Einheit der X- und Y-Koordinaten entspricht.

  • Der Parameter Ausgabe-Vorhersage-Raster ist eine optionale Ausgabe, die die Werte, anhand derer bestimmt wurde, ob eine Zelle ein Ausreißer ist, als kontinuierliche Oberfläche im Untersuchungsgebiet anzeigt. Für die Erkennung lokaler Ausreißer enthält das Raster den für die Zelle berechneten LOF-Wert. Für die Erkennung globaler Ausreißer enthält das Raster die Entfernung zum nächsten Nachbarn. Die Ausgabe kann verwendet werden, um zu bestimmen, ob zukünftige Beobachtungen Ausreißer sind, ohne den Wert des neuen Punktes erneut berechnen zu müssen. Die Ausgabe kann nur für 2D-Eingabe-Features erstellt werden.

    Hinweis:

    Die Nachbarentfernungen und LOF-Werte der Punkte stimmen nicht mit den Werten der Rasterzellen unter den einzelnen Punkten überein, auch dann nicht, wenn die Punkte mit einem Zellenmittelpunkt des Rasters lagegleich sind. Das liegt daran, dass das Feature sich nicht selbst als Nachbar verwendet, die Rasterzelle jedoch das Feature als Nachbar verwendet, sodass bei jeder Berechnung unterschiedliche Nachbarn verwendet werden und sich somit unterschiedliche Werte ergeben.

  • Weitere Informationen zum lokalen Ausreißer-Faktor sowie zum Optimieren von Parametern finden Sie in den folgenden Quellen:

    • Breunig, M. M., Kriegel, H. P., Ng, R. T., Sander, J. (2000). "LOF: identifying density-based local outliers." Proceedings of the 2000 ACM SIGMOD international conference on Management of data. (S. 93-104).
    • Xu, Z., Kakde, D., Chaudhuri, A. (2019). "Automatic Hyperparameter Tuning Method for Local Outlier Factor, with Applications to Anomaly Detection." 2019 IEEE International Conference on Big Data. (S. 4201-4207).

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Features

Die Punkt-Features, die zum Erstellen des Modells zur Erkennung räumlicher Ausreißer verwendet werden. Die einzelnen Punkte werden je nach ihrem lokalen Ausreißer-Faktor als Ausreißer oder Inlier klassifiziert.

Feature Layer
Ausgabe-Features

Die Ausgabe-Feature-Class, die den lokalen Ausreißer-Faktor für die einzelnen Eingabe-Features sowie einen Indikator dafür enthält, ob es sich beim jeweiligen Punkt um einen räumlicher Ausreißer handelt.

Feature Class
Anzahl der Nachbarn
(optional)

Die Anzahl der Nachbarn, die verwendet werden, um räumliche Ausreißer für jeden Eingabepunkt zu erkennen.

Für die Erkennung lokaler Ausreißer muss der Wert mindestens 2 sein, und alle Features in der Nachbarschaft werden als Nachbarn verwendet. Wenn kein Wert angegeben wird, wird ein Wert zur Laufzeit geschätzt und als Geoverarbeitungsmeldung angezeigt.

Für die Erkennung globaler Ausreißer wird nur der am weitesten entfernte Nachbar in der Nachbarschaft verwendet. Der Standardwert ist 1 (nächster Nachbar). Beispiel: Der Wert 3 gibt an, dass globale Ausreißer auf Basis der Entfernungen zum drittnächsten Nachbarn jedes Punktes erkannt wurden.

Long
Prozentsatz der Positionen, die als Ausreißer gelten
(optional)

Der Prozentsatz der Positionen, die durch Festlegen des Schwellenwertes für den lokalen Ausreißer-Faktor als räumliche Ausreißer erkannt werden. Wenn kein Wert angegeben wird, wird ein Wert zur Laufzeit geschätzt und als Geoverarbeitungsmeldung angezeigt. Höchstens 50 Prozent der Features können als räumliche Ausreißer identifiziert werden.

Double
Ausgabe-Vorhersage-Raster
(optional)

Das Ausgabe-Raster, das die lokalen Ausreißer-Faktoren der einzelnen Zellen enthält, die basierend auf der räumlichen Verteilung der Eingabe-Features berechnet werden.

Dieser Parameter ist nur mit einer Desktop Advanced-Lizenz verfügbar.

Raster Dataset
Ausreißertyp
(optional)

Gibt den Typ des Ausreißers an, der erkannt wird. Ein globaler Ausreißer ist ein Punkt, der sich weit entfernt von allen anderen Punkten in der Feature-Class befindet. Ein lokaler Ausreißer ist ein Punkt, der weiter von seinen Nachbarn entfernt ist als es die Dichte der Punkte in der Umgebung erwarten ließe.

  • GlobalGlobale Ausreißer von Eingabepunkten werden erkannt. Dies ist die Standardeinstellung.
  • LokalLokale Ausreißer von Eingabepunkten werden erkannt.
String
Erkennungsempfindlichkeit
(optional)

Gibt die Empfindlichkeitsstufe an, die zur Erkennung globaler Ausreißer verwendet wird. Je höher die Empfindlichkeit, desto mehr Punkte werden als Ausreißer erkannt.

Der Empfindlichkeitswert bestimmt den Schwellenwert, und jeder Punkt in einer Nachbarschaftsentfernung, die diesen Schwellenwert überschreitet, wird als globaler Ausreißer identifiziert. Die Schwellenwerte werden anhand der Boxplot-Regel bestimmt, bei der der Schwellenwert für hohe Empfindlichkeit einen Interquartil-Bereich oberhalb des dritten Quartils liegt. Für mittlere Empfindlichkeit liegt der Schwellenwert 1,5 Interquartil-Bereiche oberhalb des dritten Quartils. Für niedrige Empfindlichkeit liegt der Schwellenwert zwei Interquartil-Bereiche oberhalb des dritten Quartils.

  • NiedrigFür die Erkennung von Ausreißern wird die niedrige Empfindlichkeitsstufe verwendet. Bei dieser Option werden die wenigsten Ausreißer erkannt.
  • MittelFür die Erkennung von Ausreißern wird die mittlere Empfindlichkeitsstufe verwendet. Dies ist die Standardeinstellung.
  • HochFür die Erkennung von Ausreißern wird die hohe Empfindlichkeitsstufe verwendet. Bei dieser Option werden die meisten Ausreißer erkannt.
String
Nur räumliche Ausreißer beibehalten
(optional)

Gibt an, ob die Ausgabe-Features alle Eingabe-Features oder nur als räumliche Ausreißer identifizierte Features enthalten.

  • Aktiviert: Die Ausgabe-Features enthalten nur Features, die als räumliche Ausreißer erkannt wurden.
  • Deaktiviert: Die Ausgabe-Features enthalten alle Eingabe-Features. Dies ist die Standardeinstellung.

Boolean

arcpy.stats.SpatialOutlierDetection(in_features, output_features, {n_neighbors}, {percent_outlier}, {output_raster}, {outlier_type}, {sensitivity}, {keep_type})
NameErläuterungDatentyp
in_features

Die Punkt-Features, die zum Erstellen des Modells zur Erkennung räumlicher Ausreißer verwendet werden. Die einzelnen Punkte werden je nach ihrem lokalen Ausreißer-Faktor als Ausreißer oder Inlier klassifiziert.

Feature Layer
output_features

Die Ausgabe-Feature-Class, die den lokalen Ausreißer-Faktor für die einzelnen Eingabe-Features sowie einen Indikator dafür enthält, ob es sich beim jeweiligen Punkt um einen räumlicher Ausreißer handelt.

Feature Class
n_neighbors
(optional)

Die Anzahl der Nachbarn, die verwendet werden, um räumliche Ausreißer für jeden Eingabepunkt zu erkennen.

Für die Erkennung lokaler Ausreißer muss der Wert mindestens 2 sein, und alle Features in der Nachbarschaft werden als Nachbarn verwendet. Wenn kein Wert angegeben wird, wird ein Wert zur Laufzeit geschätzt und als Geoverarbeitungsmeldung angezeigt.

Für die Erkennung globaler Ausreißer wird nur der am weitesten entfernte Nachbar in der Nachbarschaft verwendet. Der Standardwert ist 1 (nächster Nachbar). Beispiel: Der Wert 3 gibt an, dass globale Ausreißer auf Basis der Entfernungen zum drittnächsten Nachbarn jedes Punktes erkannt wurden.

Long
percent_outlier
(optional)

Der Prozentsatz der Positionen, die durch Festlegen des Schwellenwertes für den lokalen Ausreißer-Faktor als räumliche Ausreißer erkannt werden. Wenn kein Wert angegeben wird, wird ein Wert zur Laufzeit geschätzt und als Geoverarbeitungsmeldung angezeigt. Höchstens 50 Prozent der Features können als räumliche Ausreißer identifiziert werden.

Double
output_raster
(optional)

Das Ausgabe-Raster, das die lokalen Ausreißer-Faktoren der einzelnen Zellen enthält, die basierend auf der räumlichen Verteilung der Eingabe-Features berechnet werden.

Dieser Parameter ist nur mit einer Desktop Advanced-Lizenz verfügbar.

Raster Dataset
outlier_type
(optional)

Gibt den Typ des Ausreißers an, der erkannt wird. Ein globaler Ausreißer ist ein Punkt, der sich weit entfernt von allen anderen Punkten in der Feature-Class befindet. Ein lokaler Ausreißer ist ein Punkt, der weiter von seinen Nachbarn entfernt ist als es die Dichte der Punkte in der Umgebung erwarten ließe.

  • GLOBALGlobale Ausreißer von Eingabepunkten werden erkannt. Dies ist die Standardeinstellung.
  • LOCALLokale Ausreißer von Eingabepunkten werden erkannt.
String
sensitivity
(optional)

Gibt die Empfindlichkeitsstufe an, die zur Erkennung globaler Ausreißer verwendet wird. Je höher die Empfindlichkeit, desto mehr Punkte werden als Ausreißer erkannt.

Der Empfindlichkeitswert bestimmt den Schwellenwert, und jeder Punkt in einer Nachbarschaftsentfernung, die diesen Schwellenwert überschreitet, wird als globaler Ausreißer identifiziert. Die Schwellenwerte werden anhand der Boxplot-Regel bestimmt, bei der der Schwellenwert für hohe Empfindlichkeit einen Interquartil-Bereich oberhalb des dritten Quartils liegt. Für mittlere Empfindlichkeit liegt der Schwellenwert 1,5 Interquartil-Bereiche oberhalb des dritten Quartils. Für niedrige Empfindlichkeit liegt der Schwellenwert zwei Interquartil-Bereiche oberhalb des dritten Quartils.

  • LOWFür die Erkennung von Ausreißern wird die niedrige Empfindlichkeitsstufe verwendet. Bei dieser Option werden die wenigsten Ausreißer erkannt.
  • MEDIUMFür die Erkennung von Ausreißern wird die mittlere Empfindlichkeitsstufe verwendet. Dies ist die Standardeinstellung.
  • HIGHFür die Erkennung von Ausreißern wird die hohe Empfindlichkeitsstufe verwendet. Bei dieser Option werden die meisten Ausreißer erkannt.
String
keep_type
(optional)

Gibt an, ob die Ausgabe-Features alle Eingabe-Features oder nur als räumliche Ausreißer identifizierte Features enthalten.

  • KEEP_OUTLIERDie Ausgabe-Features enthalten nur Features, die als räumliche Ausreißer erkannt wurden.
  • KEEP_ALLDie Ausgabe-Features enthalten alle Eingabe-Features. Dies ist die Standardeinstellung.
Boolean

Codebeispiel

SpatialOutlierDetection – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie Sie die Funktion SpatialOutlierDetection verwenden.

arcpy.stats.SpatialOutlierDetection("Transaction_Locations", 
            "Transactions_SpatialOutliers", 20, 5, 
            "Transactions_OutliersPredictionSurface")
SpatialOutlierDetection – Beispiel 2 (eigenständiges Skript)

Im folgenden eigenständigen Python-Skript wird veranschaulicht, wie Sie die Funktion SpatialOutlierDetection verwenden.

# Import system modules.
import arcpy

try:
    # Set the workspace and input features.
    arcpy.env.workspace = 'C:\\SpatialOutlierDetection\\MyData.gdb'
    inputFeatures = "PM25_AirQualityStations"

    # Set the name of the output features
    outputFeatures = "AirQualityStations_SpatialOutliers"

    # Set the number of neighbors
    numberNeighbors = 8

    # Set the percentage of locations considered outliers
    pcntLocationsAsOutliers = 10

    # Set the output prediction raster
    outputPredictionRaster = airQualityStations_OutPredictionRaster


    # Run the Spatial Outlier Detection tool
    arcpy.stats.SpatialOutlierDetection(inputFeatures, outputFeatures, 
            numberNeighbors, pcntLocationsAsOutliers, outputPredictionRaster)

except arcpy.ExecuteError:
    # If an error occurred when running the tool, print the error message.
    print(arcpy.GetMessages())

Umgebungen

Sonderfälle

Zellengröße

Diese Umgebung wirkt sich nur auf das Ausgabe-Raster aus.

Maske

Diese Umgebung wirkt sich nur auf das Ausgabe-Raster aus.

Fang-Raster

Diese Umgebung wirkt sich nur auf das Ausgabe-Raster aus.

Ausdehnung

Diese Umgebung wirkt sich nur auf das Ausgabe-Raster aus.

Lizenzinformationen

  • Basic: Begrenzt
  • Standard: Begrenzt
  • Advanced: Begrenzt

Verwandte Themen