Forest-basierte Klassifizierung und Regression (Spatial Statistics)

Zusammenfassung

Erstellt Modelle und generiert Vorhersagen mithilfe einer Adaption des "Random Forest"-Algorithmus, einer Methode für überwachtes maschinelles Lernen von Leo Breiman. Vorhersagen können sowohl für Kategorievariablen (Klassifizierung) als auch für kontinuierliche Variablen (Regression) getroffen werden. Erklärende Variablen können Felder in der Attributtabelle der Trainings-Features, Raster-Datasets und Entfernungs-Features sein, die verwendet werden, um Nachbarschaftswerte als zusätzliche Werte zu berechnen. Abgesehen von der Validierung der Modell-Performance auf Grundlage der Trainingsdaten können Vorhersagen für Features oder ein Vorhersage-Raster getroffen werden.

Weitere Informationen zur Funktionsweise von Forest-basierter Klassifizierung und Regression

Abbildung

Darstellung des Werkzeugs "Forest-basierte Klassifizierung und Regression"

Verwendung

  • Mit diesem Werkzeug werden Hunderte von Strukturen erstellt, die als Sammlung von Entscheidungsstrukturen bezeichnet werden, und die verwendet werden können, um ein Modell für die Vorhersage zu generieren. Jede Entscheidungsstruktur wird mit zufällig generierten Teilen der ursprünglichen (Trainings-)Daten erstellt. Jede Struktur generiert eine eigene Vorhersage und hat eine Stimme bei Ergebnisabstimmung. Bei dem Forest-Modell werden die Stimmen aller Entscheidungsstrukturen berücksichtigt, um das Ergebnis einer unbekannten Stichprobe vorherzusagen oder zu klassifizieren. Dies ist wichtig, da bei einzelnen Strukturen Probleme durch eine Überanpassung eines Modells entstehen können; die Kombination mehrerer Strukturen in einem Forest löst jedoch dieses Problem der Überanpassung.

  • Dieses Werkzeug kann in drei verschiedenen Vorgangsmodi verwendet werden. Mit der Option Trainieren kann die Performance verschiedener Modelle beim Erkunden unterschiedlicher erklärender Variablen und Werkzeugeinstellungen ausgewertet werden. Nachdem Sie ein gutes Modell gefunden haben, können Sie die Option Features vorhersagen oder Raster vorhersagen verwenden. Dieses Werkzeug ist datenabhängig und eignet sich am besten für große Datasets. Für ein optimales Ergebnis sollte es mit mindestens mehreren hundert Features trainiert werden. Für kleine Datasets ist dieses Werkzeug nicht geeignet.

  • Bei dem Wert des Parameters Eingabe-Trainings-Features kann es sich um Punkte oder Polygone handeln. Dieses Werkzeug funktioniert nicht mit Multipart-Daten.

  • Um Raster als erklärende Variablen zu verwenden oder eine Vorhersage für den Wert einer Ausgabe-Vorhersageoberfläche zu treffen, ist eine ArcGIS Spatial Analyst extension-Lizenz erforderlich.

  • Von diesem Werkzeug werden verschiedene Ausgaben erzeugt. Trainierte Ausgabe-Features enthält alle im erstellten Modell verwendeten Eingabe-Trainings-Features sowie alle im Modell verwendeten erklärenden Variablen (einschließlich verwendeter Eingabefelder, berechneter Entfernungen und extrahierter oder berechneter Raster-Werte). Auch die Vorhersagen für alle Features, die zum Trainieren des Modells verwendet wurden, sind darin enthalten. Dies kann bei der Bewertung der Performance des erstellten Modells hilfreich sein. Bei der Verwendung dieses Werkzeugs für Vorhersagen wird entweder eine neue Feature-Class mit den Werten für Vorhergesagte Ausgabe-Features oder ein neuer Wert für Vorhergesagte Ausgabe-Oberfläche erzeugt, wenn erklärende Raster angegeben werden.

  • Bei Verwendung der Option Features vorhersagen wird eine neue Feature-Class mit den vorhergesagten Ausgabe-Features-Werten erstellt. Bei Verwendung der Option Raster vorhersagen wird ein neuer Wert für Vorhergesagte Ausgabe-Oberfläche erstellt.

  • Mit diesem Werkzeug werden auch Meldungen und Diagramme erstellt, mit denen Sie die Performance des erstellten Modells besser verstehen. Sie können auf diese Meldungen zugreifen, indem Sie mit der Maus auf die Fortschrittsleiste zeigen, auf die Pop-out-Schaltfläche klicken oder den Abschnitt "Meldungen" im Bereich Geoverarbeitung erweitern. Sie können über den Geoverarbeitungsverlauf auch auf die Meldungen einer vorherigen Ausführung des Werkzeugs Forest-basierte Klassifizierung und Regression zugreifen. Die Meldungen enthalten Informationen zu den Modelleigenschaften, Out-of-Bag-Fehlern, der Variablenbedeutung und Validierungsdiagnosen.

    Mit dem Parameter Ausgabetabelle zur Variablenbedeutung können Sie eine Tabelle erstellen, um ein Diagramm der Variablenbedeutung für die Auswertung anzuzeigen. Die höchsten 20 Werte für die Variablenbedeutung werden auch im Meldungsfenster angegeben. Auf das Diagramm kann direkt unterhalb des Layers im Bereich Inhalt zugegriffen werden.

  • Erklärende Variablen können aus Feldern stammen, aus Entfernungs-Features berechnet oder aus Rastern extrahiert werden. Sie können eine beliebige Kombination dieser erklärenden Variablentypen verwenden, mindestens ein Typ ist jedoch erforderlich. Die verwendeten erklärenden Variablen (aus Feldern, Entfernungs-Features oder Rastern) sollten eine Vielzahl von Werten enthalten. Wenn es sich bei der erklärenden Variablen um eine Kategorievariable handelt, muss das Kontrollkästchen Kategorisch aktiviert werden (Variablen des Typs "String" werden automatisch aktiviert). Erklärende Kategorievariablen dürfen höchstens 60 Einzelwerte enthalten, eine geringere Anzahl von Kategorien führt jedoch zu einer besseren Performance des Modells. Je mehr Kategorien eine Variable bei einer bestimmten Datengröße enthält, desto eher dominiert sie das Modell, sodass die Vorhersageergebnisse an Effektivität verlieren.

  • Entfernungs-Features dienen der automatischen Erstellung erklärender Variablen, die eine Entfernung zwischen den Werten für bereitgestellte Features und Eingabe-Trainings-Features darstellen. Entfernungen werden von den einzelnen Eingabewerten für Erklärende Trainings-Entfernungs-Features zu den nächsten Eingabe-Trainings-Features berechnet. Wenn es sich bei den Eingabewerten für Erklärende Trainings-Entfernungs-Features um Polygone oder Linien handelt, werden die Entfernungsattribute als Entfernung zwischen den nächstgelegenen Segmenten des Feature-Paares berechnet. Allerdings werden Entfernungen bei Polygonen und Linien anders berechnet. Weitere Informationen hierzu finden Sie unter So wird die Entfernung mit Proximity-Werkzeugen berechnet.

  • Wenn es sich bei den Werten für Eingabe-Trainings-Features um Punkte handelt und Sie den Parameter Erklärende Trainings-Raster verwenden, führt das Werkzeug einen Drilldown durch, um erklärende Variablen an den einzelnen Punktpositionen zu extrahieren. Bei Multiband-Rastern wird nur das erste Band verwendet.

  • Zwar können Sie im Bereich Inhalt über mehrere Layer mit dem gleichen Namen verfügen, das Werkzeug kann allerdings keine erklärenden Layer mit den gleichen Namen akzeptieren bzw. doppelte Layer-Namen nicht aus den Dropdown-Listen entfernen. Sie können dieses Problem mit eindeutigen Layer-Namen vermeiden.

  • Wenn es sich bei den Werten von Eingabe-Trainings-Features um Polygone handelt, der Wert des Parameters Vorherzusagende Variable kategorisch ist und Sie die Werte von Erklärende Trainings-Raster exklusiv verwenden, ist der Parameter Polygone für Training in Raster-Auflösung konvertieren verfügbar. Wenn Sie diesen Parameter aktivieren, wird das Polygon am Schwerpunkt aller Raster-Zellen, deren Schwerpunkt innerhalb des Polygons liegt, in Punkte unterteilt. Anschließend werden die Raster-Werte an den einzelnen Punktpositionen extrahiert und zum Trainieren des Modells verwendet. Für numerische Variablen wird eine bilineare Stichprobenmethode verwendet, für kategorische Variablen die nächstgelegene Methode. Die Standard-Zellengröße der konvertierten Polygone entspricht der maximalen Zellengröße der Eingabe-Raster. Dies können Sie jedoch über die Umgebungseinstellung "Zellengröße" ändern. Ist der Parameter nicht aktiviert, wird ein Raster-Wert für jedes Polygon im Modell verwendet. Jedem Polygon wird für kontinuierliche Raster der Durchschnittswert und für Kategorie-Raster die Mehrheit zugewiesen.

    Polygone werden in Raster-Auflösung konvertiert (links) oder ihnen wird ein Durchschnittswert zugewiesen (rechts).

  • Die Daten, die für die einzelnen erklärenden Variablen verwendet werden, müssen Variationen aufweisen. Wenn eine Fehlermeldung angezeigt wird, aus der hervorgeht, dass eines der angegebenen Felder oder Raster keine Variationen aufweist, können Sie versuchen, das Werkzeug erneut auszuführen und die betreffende Variable als kategorisch zu markieren. Wenn 95 Prozent der Features über denselben Wert für eine bestimmte Variable verfügen, wird das Fehlen von Variationen für diese Variable gekennzeichnet.

  • Der Parameter Spärliche Kategorien ausgleichen kann verwendet werden, wenn die Variation in den Kategorien nicht ausgeglichen ist. Beispiel: Wenn einige Kategorien in dem Dataset hunderte Male vorkommen, andere dagegen deutlich seltener, wird durch Aktivieren dieses Parameters sichergestellt, dass jede Kategorie in jeder Struktur vertreten ist, um ausgeglichene Modelle zu erstellen.

  • Beim Abgleich von erklärenden Variablen müssen die Felder Prediction und Training den gleichen Typ haben (ein Double-Feld in Training muss mit einem Double-Feld in Prediction abgeglichen werden).

  • Forest-basierte Modelle extrapolieren nicht, mit ihnen kann nur ein Wert klassifiziert oder vorhergesagt werden, für den das Modell trainiert wurde. Bei der Vorhersage eines Wertes, der auf erklärenden Variablen basiert, die viel höher oder niedriger sind als der Bereich des ursprünglichen Trainings-Datasets, schätzt das Modell den Wert um den höchsten oder niedrigsten Wert im ursprünglichen Dataset. Die Performance des Werkzeugs kann eingeschränkt sein, wenn man versucht, Vorhersagen mit erklärenden Variablen zu treffen, die außerhalb des Bereichs der erklärenden Variablen liegen, die zum Trainieren des Modells verwendet werden.

  • Das Werkzeug kann nicht erfolgreich ausgeführt werden, wenn die erklärenden Variablen für die Vorhersage Kategorien enthalten, die in den Trainings-Features nicht vorhanden sind.

  • Zur Verwendung von Mosaik-Datasets als erklärende Variablen führen Sie zunächst das Werkzeug Mosaik-Layer erstellen aus und kopieren den vollständigen Pfad zum Layer in das Werkzeug, oder Sie nutzen das Werkzeug Mosaik-Layer erstellen und Raster-Layer erstellen, um die Verarbeitungsvorlage für das Mosaik-Dataset anzupassen.

  • Der Standardwert für den Parameter Anzahl der Strukturen ist 100. Die Erhöhung der Anzahl von Strukturen im Forest-Modell führt zu einer genaueren Modellvorhersage, für die Berechnung des Modells wird jedoch mehr Zeit benötigt.

  • Wenn Sie den Parameter Unsicherheit berechnen aktivieren, berechnet das Werkzeug für jeden vorhergesagten Wert des Wertes für Vorherzusagende Variable ein Vorhersageintervall von 90 Prozent. Wenn als Vorhersagetyp Nur trainieren oder Features vorhersagen eingestellt ist, werden dem Wert von Trainierte Ausgabe-Features oder dem Wert von Vorhergesagte Ausgabe-Features zwei Felder hinzugefügt. Diese Felder enden auf _P05 und _P95 und stellen die obere und untere Grenze der Vorhersageintervalls dar. Bei neuen Beobachtungen können Sie mit einem Konfidenzniveau von 90 Prozent vorhersagen, dass der Wert der Beobachtung innerhalb des Intervalls liegt, sofern die erklärenden Variablen identisch sind. Bei Verwendung der Option Raster vorhersagen werden zum Bereich Inhalt zwei zusätzliche Raster hinzugefügt, die die obere und untere Grenze des Vorhersageintervalls darstellen.

  • Aus Performance-Gründen ist der Parameter Erklärende Trainings-Entfernungs-Features nicht verfügbar, wenn für den Parameter Vorhersagetyp die Option Raster vorhersagen verwendet wird. Um Entfernungen zu Features als erklärende Variablen einzuschließen, müssen Sie Entfernungsraster mit dem Werkzeug Entfernungsakkumulation berechnen und die Entfernungsraster im Parameter Erklärende Trainings-Raster einschließen.

  • Dieses Werkzeug unterstützt für Vorhersagen die Parallelverarbeitung und nutzt standardmäßig 50 Prozent der verfügbaren Prozessoren. Die Anzahl der Prozessoren kann mit der Umgebung Faktor für parallele Verarbeitung erhöht oder verringert werden.

  • Weitere Informationen zur Funktionsweise dieses Werkzeugs und zu den Ausgabemeldungen und -diagrammen finden Sie unter Verwendung von Forest-basierter Klassifizierung und -Regression.

    Referenzliste:

    • Breiman, Leo. Out-Of-Bag Estimation. 1996.
    • Breiman, L. (1996). Bagging predictors. Machine learning, 24(2), 123-140.
    • Breiman, Leo. "Random Forests". Machine Learning. 45 (1), 5-32. DOI: 10.1023/A:1010933404324. 2001.
    • Breiman, L., J.H. Friedman, R.A. Olshen, C.J. Stone. Classification and regression trees. New York: Routledge. Kapitel 4. 2017.
    • Dietterich, T. G. (Juni 2000). Ensemble methods in machine learning. In International workshop on multiple classifier systems (S. 1-15). Springer, Berlin, Heidelberg.
    • Gini, C. (1912). Variabilità e mutabilità. Nachgedruckt in: Memorie di metodologica statistica (Hrsg. Pizetti E, Salvemini, T). Rom: Libreria Eredi Virgilio Veschi.
    • Grömping, U. (2009). Variable importance assessment in regression: linear regression versus random forest. The American Statistician, 63(4), 308-319.
    • Ho, T. K. (August 1995). Random decision forests. In Document analysis and recognition, 1995., proceedings of the third international conference on Document Analysis and Recognition. (Band 1, S. 278-282). IEEE.
    • James, G., Witten, D., Hastie, T., & Tibshirani, R. (2013). An introduction to statistical learning (Band 112). New York: Springer.
    • LeBlanc, M., & Tibshirani, R. (1996). Combining estimates in regression and classification. Journal of the American Statistical Association, 91(436), 1641-1650.
    • Loh, W. Y., & Shih, Y. S. (1997). Split selection methods for classification trees. Statistica sinica, 815-840.
    • Meinshausen, Nicolai. "Quantile regression forests". Journal of Machine Learning Research 7. Juni (2006): 983-999.
    • Nadeau, C., & Bengio, Y. (2000). Inference for the generalization error. In Advances in neural information processing systems (S. 307-313).
    • Strobl, C., Boulesteix, A. L., Kneib, T., Augustin, T., & Zeileis, A. (2008). Conditional variable importance for random forests. BMC bioinformatics, 9(1), 307.
    • Zhou, Z. H. (2012). Ensemble methods: foundations and algorithms. CRC Press.

Parameter

BeschriftungErläuterungDatentyp
Vorhersagetyp

Gibt den Operationsmodus des Werkzeugs an. Das Werkzeug kann ausgeführt werden, um ein Modell ausschließlich für die Bewertung der Performance zu trainieren, Features vorherzusagen oder eine vorhergesagte Oberfläche zu erstellen.

  • Nur trainierenEin Modell wird trainiert, es werden jedoch keine Vorhersagen generiert. Prüfen Sie die Genauigkeit des Modells mit dieser Option, bevor Sie Vorhersagen generieren. Mit dieser Option werden Modelldiagnosen im Meldungsfenster und ein Diagramm der Variablenbedeutung ausgegeben. Hierbei handelt es sich um die Standardeinstellung.
  • Features vorhersagenEs werden Vorhersagen oder Klassifizierungen für Features generiert. Sowohl für die Trainings-Features als auch für die vorherzusagenden Features müssen erklärende Variablen angegeben werden. Die Ausgaben dieser Option sind eine Feature-Class, eine Modelldiagnose im Meldungsfenster und optional eine Tabelle und ein Diagramm der Variablenbedeutung.
  • Raster vorhersagenFür den Bereich, in dem sich die erklärenden Raster überschneiden, wird ein Vorhersage-Raster generiert. Erklärende Raster müssen sowohl für die Trainings-Fläche als auch für die vorherzusagenden Flächen angegeben werden. Die Ausgaben dieser Option sind eine vorhergesagte Oberfläche, eine Modelldiagnose im Meldungsfenster und optional eine Tabelle und ein Diagramm der Variablenbedeutung.
String
Eingabe-Trainings-Features

Die Feature-Class mit dem Parameterwert für Vorherzusagende Variable und optional den erklärenden Trainings-Variablen aus Feldern.

Feature Layer
Vorherzusagende Variable
(optional)

Die Variable aus dem Parameter Eingabe-Trainings-Features mit den Werten, die zum Trainieren des Modells verwendet werden sollen. Dieses Feld enthält bekannte (Trainings-)Werte der Variablen, mit denen eine Vorhersage an unbekannten Positionen getroffen wird.

Field
Variable als kategorisch behandeln
(optional)

Gibt an, ob es sich bei dem Wert für Vorherzusagende Variable um eine Kategorievariable handelt.

  • Aktiviert: Der Wert für Vorherzusagende Variable ist eine Kategorievariable, es wird eine Klassifizierung vom Werkzeug vorgenommen.
  • Deaktiviert: Der Wert für Vorherzusagende Variable ist eine kontinuierliche Variable, es wird eine Regression vom Werkzeug ausgeführt. Dies ist die Standardeinstellung.
Boolean
Erklärende Trainingsvariablen
(optional)

Eine Liste der Felder, die erklärende Variablen darstellen und die Vorhersage des Wertes oder der Kategorie des Wertes für Vorherzusagende Variable unterstützen. Aktivieren Sie das Kontrollkästchen Kategorisch für alle Variablen, die Klassen oder Kategorien darstellen (z. B. Landbedeckung oder Anwesenheit oder Abwesenheit).

Value Table
Erklärende Trainings-Entfernungs-Features
(optional)

Die erklärenden Trainings-Entfernungs-Features. Erklärende Variablen werden automatisch durch Berechnung einer Entfernung zwischen den bereitgestellten Features und Werten von Eingabe-Trainings-Features erstellt. Entfernungen werden von den einzelnen Eingabewerten für Erklärende Trainings-Entfernungs-Features zu den nächsten Eingabe-Trainings-Features berechnet. Wenn es sich bei den Eingabewerten für Erklärende Trainings-Entfernungs-Features um Polygone oder Linien handelt, werden die Entfernungsattribute als Entfernung zwischen den nächstgelegenen Segmenten des Feature-Paares berechnet.

Feature Layer
Erklärende Trainings-Raster
(optional)

Die aus Rastern extrahierten erklärenden Trainingsvariablen. Erklärende Trainingsvariablen werden automatisch durch Extrahieren von Raster-Zellenwerten erstellt. Der Wert der Raster-Zelle wird für jedes Feature in dem Parameter Eingabe-Trainings-Features an der genauen Position extrahiert. Beim Extrahieren des Raster-Werts für kontinuierliche Raster wird bilineares Resampling verwendet. Beim Extrahieren eines Raster-Werts aus Kategorie-Rastern wird ein Nächster-Nachbar-Resampling durchgeführt. Aktivieren Sie das Kontrollkästchen Kategorie für alle Raster, die Klassen oder Kategorien darstellen, z. B. Landbedeckung oder Anwesenheit oder Abwesenheit.

Value Table
Eingabe-Vorhersage-Features
(optional)

Eine Feature-Class, die Positionen darstellt, an denen Vorhersagen getroffen werden. Diese Feature-Class muss auch erklärende Variablen enthalten, die als Felder bereitgestellt wurden und den von den Trainingsdaten verwendeten Feldern entsprechen.

Feature Layer
Vorhergesagte Ausgabe-Features
(optional)

Die Ausgabe-Feature-Class mit den Vorhersageergebnissen.

Feature Class
Vorhergesagte Ausgabe-Oberfläche
(optional)

Das Ausgabe-Raster mit den Vorhersageergebnissen. Die Standard-Zellengröße entspricht der maximalen Zellengröße der Raster-Eingaben. Um eine andere Zellengröße festzulegen, verwenden Sie die Umgebungseinstellung Zellengröße.

Raster Dataset
Erklärende Variablen abgleichen
(optional)

Eine Liste der angegebenen Werte für Erklärende Variablen aus den Eingabe-Trainings-Features rechts und den ihnen entsprechenden Feldern aus den Eingabe-Vorhersage-Features links.

Value Table
Entfernungs-Features abgleichen
(optional)

Eine Liste der angegebenen Werte für Erklärende Entfernungs-Features für den Parameter Eingabe-Trainings-Features rechts und den entsprechenden Feature-Sets aus dem Parameter Eingabe-Vorhersage-Features links.

Die Werte für Erklärende Entfernungs-Features, die angemessener für den Parameter Eingabe-Vorhersage-Features sind, können angegeben werden, wenn sich die für das Training verwendeten Features auf ein anderes Untersuchungsgebiet oder einen anderen Zeitraum beziehen.

Value Table
Erklärende Raster abgleichen
(optional)

Eine Liste der angegebenen Werte für Erklärende Raster für den Parameter Eingabe-Trainings-Features rechts und den entsprechenden Rastern aus dem Parameter Eingabe-Vorhersage-Features oder dem Parameter Vorhersageoberfläche, der erstellt werden soll, links.

Werte für Erklärende Raster, die angemessener für den Parameter Eingabe-Vorhersage-Features sind, können angegeben werden, wenn sich die für das Training verwendeten Features auf ein anderes Untersuchungsgebiet oder einen anderen Zeitraum beziehen.

Value Table
Trainierte Ausgabe-Features
(optional)

Die für das Training verwendeten erklärenden Variablen (einschließlich Sample-Raster-Werte und Entfernungsberechnungen) sowie das beobachtete Feld Vorherzusagende Variable und die zugehörigen Vorhersagen, mit denen die Performance des trainierten Modells weiter geprüft werden kann.

Feature Class
Ausgabetabelle zur Variablenbedeutung
(optional)

Die Tabelle, in der die Informationen zur Beschreibung der einzelnen, im erstellten Modell verwendeten erklärenden Variablen (Felder, Entfernungs-Features und Raster) enthalten sind. Auf das Diagramm, das über diese Tabelle erstellt wird, können Sie im Bereich Inhalt zugreifen.

Table
Polygone für Training in Raster-Auflösung konvertieren
(optional)

Gibt an, wie Polygone beim Trainieren des Modells behandelt werden, wenn es sich bei den Werten für Eingabe-Trainings-Features um Polygone mit einem kategorischen Wert für Vorherzusagende Variable handelt und nur Werte für Erklärende Trainings-Raster angegeben wurden.

  • Aktiviert: Das Polygon wird in alle Raster-Zellen mit Schwerpunkt innerhalb des Polygons geteilt. Anschließend werden die Raster-Werte an den einzelnen Schwerpunkten extrahiert und zum Trainieren des Modells verwendet. Das Modell wird nicht länger am Polygon trainiert, sondern an den für die einzelnen Zellenschwerpunkte extrahierten Raster-Werten. Dies ist die Standardeinstellung.
    In Raster-Zellen geteiltes Polygon
  • Deaktiviert: Jedem Polygon wird der Durchschnittswert der zugrunde liegenden kontinuierlichen Raster und die Mehrheit für zugrunde liegende Kategorie-Raster zugewiesen.
    Polygonwert als Durchschnittswert oder Mehrheit zugewiesen

Boolean
Anzahl der Strukturen
(optional)

Die Anzahl der Strukturen, die im Forest-Modell erstellt werden sollen. Eine höhere Anzahl von Strukturen führt zu einer genaueren Modellvorhersage, für die Berechnung des Modells wird jedoch mehr Zeit benötigt. Die Standardzahl von Strukturen beträgt 100.

Long
Minimale Elementgröße
(optional)

Die minimale Anzahl der Beobachtungen, die mindestens erforderlich sind, um ein Element (also den Endpunkt einer Struktur, der keine weiteren Verzweigungen hat) beizubehalten. Das Standardminimum ist 5 für die Regression und 1 für die Klassifizierung. Bei sehr großen Daten führt eine Erhöhung dieser Zahlen zu einer Erhöhung der Laufzeit des Werkzeugs.

Long
Maximale Strukturtiefe
(optional)

Die maximale Anzahl von Teilungen entlang einer Struktur. Je größer die maximale Tiefe, desto mehr Teilungen werden erstellt. Dadurch steigt das Risiko einer Überanpassung des Modells. Die Standardeinstellung ist datenabhängig und abhängig von der Anzahl der erstellten Strukturen und der berücksichtigten Variablen.

Long
Pro Struktur verfügbare Daten (%)
(optional)

Der Prozentsatz der Werte von Eingabe-Trainings-Features, die für jede Entscheidungsstruktur verwendet werden sollen. Die Standardeinstellung liegt bei 100 Prozent der Daten. Samples für jede Struktur werden nach dem Zufallsprinzip aus zwei Dritteln der angegebenen Daten entnommen.

Alle Entscheidungsbäume im Wald werden mithilfe einer zufälligen Stichprobe oder einer zufälligen Teilmenge (etwa zwei Drittel) der verfügbaren Trainingsdaten erstellt. Durch die Verwendung eines niedrigeren Prozentsatzes der Eingabedaten für die einzelnen Entscheidungsstrukturen wird die Geschwindigkeit des Werkzeugs bei sehr großen Datasets beschleunigt.

Long
Anzahl der nach dem Zufallsprinzip erfassten Variablen
(optional)

Die Anzahl der erklärenden Variablen, die zum Erstellen der einzelnen Entscheidungsstrukturen verwendet werden sollen.

Alle Entscheidungsstrukturen in der Gesamtstruktur werden mithilfe einer zufälligen Teilmenge der erklärenden Variablen erstellt. Durch eine Erhöhung der Anzahl der in den einzelnen Entscheidungsbäumen verwendeten Variablen steigt die Wahrscheinlichkeit einer Überanpassung des Modells, vor allem dann, wenn dominante Variablen vorhanden sind. Eine gängige Praxis besteht darin, die Quadratwurzel aus der Gesamtzahl der erklärenden Variablen (Felder, Entfernungen und Raster) zu ziehen, wenn der Wert für Vorherzusagende Variable numerisch ist, oder die Gesamtzahl der erklärenden Variablen (Felder, Entfernungen und Raster zusammengenommen) durch 3 zu teilen, wenn der Wert für Vorherzusagende Variable kategorisch ist.

Long
% der Trainingsdaten für die Validierung ausgeschlossen
(optional)

Der Prozentsatz (zwischen 10 und 50 Prozent) der Werte von Eingabe-Trainings-Features, die als Test-Dataset für die Validierung reserviert werden sollen. Das Modell wird ohne diese zufällige Teilmenge der Daten trainiert, und die beobachteten Werte für diese Features werden mit den vorhergesagten Werten verglichen. Der Standardwert ist 10 Prozent.

Double
Ausgabetabelle für Klassifizierungs-Performance (Konfusionsmatrix)
(optional)

Eine Konfusionsmatrix für die Klassifizierung, die die Performance des erstellten Modells zusammenfasst. Mit dieser Tabelle können zusätzlich zu den Kennzahlen für Genauigkeit und Empfindlichkeit andere Diagnosen berechnet werden, die das Werkzeug in den Ausgabemeldungen berechnet.

Table
Ausgabetabelle der Validierung
(optional)

Wenn der Wert für Anzahl der ausgeführten Validierungen größer als 2 ist, erstellt diese Tabelle für jedes Modell ein Diagramm der Verteilung von R2. Mit dieser Verteilung können Sie die Stabilität fes Modells bewerten.

Table
Spärliche Kategorien ausgleichen
(optional)

Gibt an, ob jede Kategorie im Trainings-Dataset ungeachtet ihrer Häufigkeit in jeder Struktur dargestellt werden soll.

  • Aktiviert: Jede Struktur enthält jede Kategorie, die im Trainings-Dataset vertreten ist.
  • Deaktiviert: Jede Struktur wird basierend auf einer zufälligen Stichprobe der Kategorien im Trainings-Dataset erstellt. Dies ist die Standardeinstellung.

Boolean
Anzahl der ausgeführten Validierungen
(optional)

Die Anzahl der Iterationen des Werkzeugs. Die Verteilung von R2 für jede Ausführung kann mit dem Parameter Ausgabetabelle der Validierung angezeigt werden. Wenn diese Option festgelegt ist und Vorhersagen generiert werden, wird nur das Modell, das den höchsten R2-Wert erzeugt, für Vorhersagen verwendet.

Long
Unsicherheit berechnen
(optional)

Gibt an, ob beim Trainieren oder beim Vorhersagen von Features oder Rastern die Vorhersageunsicherheit berechnet wird.

  • Aktiviert: Es wird ein Vorhersageunsicherheitsintervall berechnet.
  • Deaktiviert: Es wird keine Unsicherheit berechnet. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-Unsicherheits-Raster-Layer

Wenn Sie den Parameter Unsicherheit berechnen aktivieren, berechnet das Werkzeug für jeden vorhergesagten Wert des Parameters Vorherzusagende Variable ein Vorhersageintervall von 90 Prozent.

Raster Layer

arcpy.stats.Forest(prediction_type, in_features, {variable_predict}, {treat_variable_as_categorical}, {explanatory_variables}, {distance_features}, {explanatory_rasters}, {features_to_predict}, {output_features}, {output_raster}, {explanatory_variable_matching}, {explanatory_distance_matching}, {explanatory_rasters_matching}, {output_trained_features}, {output_importance_table}, {use_raster_values}, {number_of_trees}, {minimum_leaf_size}, {maximum_depth}, {sample_size}, {random_variables}, {percentage_for_training}, {output_classification_table}, {output_validation_table}, {compensate_sparse_categories}, {number_validation_runs}, {calculate_uncertainty})
NameErläuterungDatentyp
prediction_type

Gibt den Operationsmodus des Werkzeugs an. Das Werkzeug kann ausgeführt werden, um ein Modell ausschließlich für die Bewertung der Performance zu trainieren, Features vorherzusagen oder eine vorhergesagte Oberfläche zu erstellen.

  • TRAINEin Modell wird trainiert, es werden jedoch keine Vorhersagen generiert. Prüfen Sie die Genauigkeit des Modells mit dieser Option, bevor Sie Vorhersagen generieren. Mit dieser Option werden Modelldiagnosen im Meldungsfenster und ein Diagramm der Variablenbedeutung ausgegeben. Hierbei handelt es sich um die Standardeinstellung.
  • PREDICT_FEATURESEs werden Vorhersagen oder Klassifizierungen für Features generiert. Sowohl für die Trainings-Features als auch für die vorherzusagenden Features müssen erklärende Variablen angegeben werden. Die Ausgaben dieser Option sind eine Feature-Class, eine Modelldiagnose im Meldungsfenster und optional eine Tabelle und ein Diagramm der Variablenbedeutung.
  • PREDICT_RASTERFür den Bereich, in dem sich die erklärenden Raster überschneiden, wird ein Vorhersage-Raster generiert. Erklärende Raster müssen sowohl für die Trainings-Fläche als auch für die vorherzusagenden Flächen angegeben werden. Die Ausgaben dieser Option sind eine vorhergesagte Oberfläche, eine Modelldiagnose im Meldungsfenster und optional eine Tabelle und ein Diagramm der Variablenbedeutung.
String
in_features

Die Feature-Class mit dem Parameterwert variable_predict und optional den erklärenden Trainings-Variablen aus Feldern.

Feature Layer
variable_predict
(optional)

Die Variable aus dem Parameter in_features mit den Werten, die zum Trainieren des Modells verwendet werden sollen. Dieses Feld enthält bekannte (Trainings-)Werte der Variablen, mit denen eine Vorhersage an unbekannten Positionen getroffen wird.

Field
treat_variable_as_categorical
(optional)
  • CATEGORICALDer Wert variable_predict ist eine Kategorievariable, es wird eine Klassifizierung vom Werkzeug vorgenommen.
  • NUMERICDer Wert variable_predict ist eine kontinuierliche Variable, es wird eine Regression vom Werkzeug ausgeführt. Hierbei handelt es sich um die Standardeinstellung.
Boolean
explanatory_variables
[[Variable, Categorical],...]
(optional)

Eine Liste der Felder, die erklärende Variablen darstellen und die Vorhersage des Wertes oder der Kategorie des Wertes variable_predict unterstützen. Verwenden Sie den Parameter treat_variable_as_categorical für alle Variablen, die Klassen oder Kategorien darstellen (z. B. Landbedeckung oder Anwesenheit oder Abwesenheit). Geben Sie für alle Werte der Variablen, die Klassen oder Kategorien wie Landbedeckung oder Anwesenheit oder Abwesenheit darstellen, CATEGORICAL an und NUMERIC, wenn es sich um eine kontinuierliche Variable handelt.

Value Table
distance_features
[distance_features,...]
(optional)

Die erklärenden Trainings-Entfernungs-Features. Erklärende Variablen werden automatisch durch Berechnung einer Entfernung zwischen den bereitgestellten Features und Werten von in_features erstellt. Entfernungen werden von den einzelnen Eingabewerten für distance_features zu den nächsten Werten für in_features berechnet. Wenn es sich bei distance_features der Eingabe um Polygone oder Linien handelt, werden die Entfernungsattribute als Entfernung zwischen den nächstgelegenen Segmenten des Feature-Paares berechnet.

Feature Layer
explanatory_rasters
[[Variable, Categorical],...]
(optional)

Die aus Rastern extrahierten erklärenden Trainingsvariablen. Erklärende Trainingsvariablen werden automatisch durch Extrahieren von Raster-Zellenwerten erstellt. Der Wert der Raster-Zelle wird für jedes Feature in dem Parameter in_features an der genauen Position extrahiert. Beim Extrahieren des Raster-Werts wird bilineares Raster-Resampling verwendet, es sei denn, "Kategorisch" wurde angegeben. In diesem Fall wird das Nächster-Nachbar-Resampling verwendet. Geben Sie für das Raster CATEGORICAL an, wenn es Klassen oder Kategorien wie Landbedeckung oder Anwesenheit oder Abwesenheit darstellt, und NUMERIC, wenn es sich um ein kontinuierliches Raster handelt.

Value Table
features_to_predict
(optional)

Eine Feature-Class, die Positionen darstellt, an denen Vorhersagen getroffen werden. Diese Feature-Class muss auch erklärende Variablen enthalten, die als Felder bereitgestellt wurden und den von den Trainingsdaten verwendeten Feldern entsprechen.

Feature Layer
output_features
(optional)

Die Ausgabe-Feature-Class mit den Vorhersageergebnissen.

Feature Class
output_raster
(optional)

Das Ausgabe-Raster mit den Vorhersageergebnissen. Die Standard-Zellengröße entspricht der maximalen Zellengröße der Raster-Eingaben. Um eine andere Zellengröße festzulegen, verwenden Sie die Umgebungseinstellung Zellengröße.

Raster Dataset
explanatory_variable_matching
[[Prediction, Training],...]
(optional)

Eine Liste der angegebenen Werte für explanatory_variables aus dem Parameter in_features rechts und den entsprechenden Feldern aus dem Parameter features_to_predict links, z. B. [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]].

Value Table
explanatory_distance_matching
[[Prediction, Training],...]
(optional)

Eine Liste der angegebenen Werte für distance_features für den Parameter in_features rechts und den entsprechenden Feature-Sets aus dem Parameter features_to_predict links.

Die Werte für explanatory_distance_features, die angemessener für den Parameter features_to_predict sind, können angegeben werden, wenn sich die für das Training verwendeten Features auf ein anderes Untersuchungsgebiet oder einen anderen Zeitraum beziehen.

Value Table
explanatory_rasters_matching
[[Prediction, Training],...]
(optional)

Eine Liste der angegebenen Werte für explanatory_rasters für den Parameter in_features rechts und den entsprechenden Rastern aus dem Parameter features_to_predict oder dem Parameter output_raster, der erstellt werden soll, links.

Die Werte für explanatory_rasters, die angemessener für den Parameter features_to_predict sind, können angegeben werden, wenn sich die für das Training verwendeten Features auf ein anderes Untersuchungsgebiet oder einen anderen Zeitraum beziehen.

Value Table
output_trained_features
(optional)

Die für das Training verwendeten erklärenden Variablen (einschließlich Sample-Raster-Werte und Entfernungsberechnungen) sowie das beobachtete Feld variable_to_predict und die zugehörigen Vorhersagen, mit denen die Performance des trainierten Modells weiter geprüft werden kann.

Feature Class
output_importance_table
(optional)

Die Tabelle, in der die Informationen zur Beschreibung der einzelnen, im erstellten Modell verwendeten erklärenden Variablen (Felder, Entfernungs-Features und Raster) enthalten sind.

Table
use_raster_values
(optional)

Gibt an, wie Polygone beim Trainieren des Modells behandelt werden, wenn es sich bei den Werten von in_features um Polygone mit einem kategorischen Wert von variable_predict handelt und nur Werte für explanatory_rasters angegeben wurden.

  • TRUEDas Polygon wird in alle Raster-Zellen mit Schwerpunkt innerhalb des Polygons geteilt. Anschließend werden die Raster-Werte an den einzelnen Schwerpunkten extrahiert und zum Trainieren des Modells verwendet. Das Modell wird nicht länger am Polygon trainiert, sondern an den für die einzelnen Zellenschwerpunkte extrahierten Raster-Werten. Dies ist die Standardeinstellung.
  • FALSEJedem Polygon wird der Durchschnittswert der zugrunde liegenden kontinuierlichen Raster und die Mehrheit für zugrunde liegende Kategorie-Raster zugewiesen.
Boolean
number_of_trees
(optional)

Die Anzahl der Strukturen, die im Forest-Modell erstellt werden sollen. Eine höhere Anzahl von Strukturen führt zu einer genaueren Modellvorhersage, für die Berechnung des Modells wird jedoch mehr Zeit benötigt. Die Standardzahl von Strukturen beträgt 100.

Long
minimum_leaf_size
(optional)

Die minimale Anzahl der Beobachtungen, die mindestens erforderlich sind, um ein Element (also den Endpunkt einer Struktur, der keine weiteren Verzweigungen hat) beizubehalten. Das Standardminimum ist 5 für die Regression und 1 für die Klassifizierung. Bei sehr großen Daten führt eine Erhöhung dieser Zahlen zu einer Erhöhung der Laufzeit des Werkzeugs.

Long
maximum_depth
(optional)

Die maximale Anzahl von Teilungen entlang einer Struktur. Je größer die maximale Tiefe, desto mehr Teilungen werden erstellt. Dadurch steigt das Risiko einer Überanpassung des Modells. Die Standardeinstellung ist datenabhängig und abhängig von der Anzahl der erstellten Strukturen und der berücksichtigten Variablen.

Long
sample_size
(optional)

Der Prozentsatz der Werte von in_features, die für jede Entscheidungsstruktur verwendet werden sollen. Die Standardeinstellung liegt bei 100 Prozent der Daten. Samples für jede Struktur werden nach dem Zufallsprinzip aus zwei Dritteln der angegebenen Daten entnommen.

Alle Entscheidungsbäume im Wald werden mithilfe einer zufälligen Stichprobe oder einer zufälligen Teilmenge (etwa zwei Drittel) der verfügbaren Trainingsdaten erstellt. Durch die Verwendung eines niedrigeren Prozentsatzes der Eingabedaten für die einzelnen Entscheidungsstrukturen wird die Geschwindigkeit des Werkzeugs bei sehr großen Datasets beschleunigt.

Long
random_variables
(optional)

Die Anzahl der erklärenden Variablen, die zum Erstellen der einzelnen Entscheidungsstrukturen verwendet werden sollen.

Alle Entscheidungsstrukturen in der Gesamtstruktur werden mithilfe einer zufälligen Teilmenge der erklärenden Variablen erstellt. Durch eine Erhöhung der Anzahl der in den einzelnen Entscheidungsbäumen verwendeten Variablen steigt die Wahrscheinlichkeit einer Überanpassung des Modells, vor allem dann, wenn dominante Variablen vorhanden sind. Eine gängige Praxis besteht darin, die Quadratwurzel aus der Gesamtzahl der erklärenden Variablen (Felder, Entfernungen und Raster) zu ziehen, wenn der Wert für variable_predict numerisch ist, oder die Gesamtzahl der erklärenden Variablen (Felder, Entfernungen und Raster zusammengenommen) durch 3 zu teilen, wenn der Wert für variable_predict kategorisch ist.

Long
percentage_for_training
(optional)

Der Prozentsatz (zwischen 10 und 50 Prozent) der Werte von in_features, die als Test-Dataset für die Validierung reserviert werden sollen. Das Modell wird ohne diese zufällige Teilmenge der Daten trainiert, und die beobachteten Werte für diese Features werden mit dem vorhergesagten Wert verglichen. Der Standardwert ist 10 Prozent.

Double
output_classification_table
(optional)

Eine Konfusionsmatrix für die Klassifizierung, die die Performance des erstellten Modells zusammenfasst. Mit dieser Tabelle können zusätzlich zu den Kennzahlen für Genauigkeit und Empfindlichkeit andere Diagnosen berechnet werden, die das Werkzeug in den Ausgabemeldungen berechnet.

Table
output_validation_table
(optional)

Wenn der Wert für Anzahl der ausgeführten Validierungen größer als 2 ist, erstellt diese Tabelle für jedes Modell ein Diagramm der Verteilung von R2. Mit dieser Verteilung können Sie die Stabilität fes Modells bewerten.

Table
compensate_sparse_categories
(optional)

Gibt an, ob jede Kategorie im Trainings-Dataset ungeachtet ihrer Häufigkeit in jeder Struktur dargestellt werden soll.

  • TRUEJede Struktur enthält jede Kategorie, die im Trainings-Dataset vertreten ist.
  • FALSEJede Struktur wird basierend auf einer zufälligen Stichprobe der Kategorien im Trainings-Dataset erstellt. Dies ist die Standardeinstellung.
Boolean
number_validation_runs
(optional)

Die Anzahl der Iterationen des Werkzeugs. Die Verteilung von R2 für jede Ausführung kann mit dem Parameter Ausgabetabelle der Validierung angezeigt werden. Wenn diese Option festgelegt ist und Vorhersagen generiert werden, wird nur das Modell, das den höchsten R2-Wert erzeugt, für Vorhersagen verwendet.

Long
calculate_uncertainty
(optional)

Gibt an, ob beim Trainieren oder beim Vorhersagen von Features oder Rastern die Vorhersageunsicherheit berechnet wird.

  • TRUEEs wird ein Vorhersageunsicherheitsintervall berechnet.
  • FALSEEs wird keine Unsicherheit berechnet. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
output_uncertainty_raster_layers

Wenn calculate_uncertainty auf TRUE festgelegt ist, berechnet das Werkzeug für jeden Wert des Parameters variable_to_predict ein Vorhersageintervall von 90 Prozent.

Raster Layer

Codebeispiel

Forest-Beispiel 1 (Python-Fenster)

Das folgende Python-Skript veranschaulicht, wie die Funktion Forest verwendet wird.

import arcpy
arcpy.env.workspace = r"c:\data"

# Forest-based model using only the training method and all data
# comes from a single polygon feature class. The tool excludes 10% of the 
# input features from training and uses these values to validate the model.

prediction_type = "TRAIN"
in_features = r"Boston_Vandalism.shp"
variable_predict = "VandCnt"
explanatory_variables = [["Educat", "false"], ["MedAge", "false"], 
    ["HHInc", "false"], ["Pop", "false"]]
output_trained_features = "TrainingFeatures.shp"
number_of_trees = 100
sample_size = 100
percentage_for_training = 10

arcpy.stats.Forest(prediction_type, in_features, variable_predict, None,
    explanatory_variables, None, None, None, None, None, None, None, None,
    output_trained_features, None, True, number_of_trees, None, None, sample_size, 
    None, percentage_for_training)
Forest-Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie Sie die Funktion Forest zur Vorhersage von Features verwenden.

# Import system modules
import arcpy

# Set property to overwrite existing outputs
arcpy.env.overwriteOutput = True

# Set the work space to a gdb
arcpy.env.workspace = r"C:\Data\BostonCrimeDB.gdb"

# Forest-based model taking advantage of both distance features and 
# explanatory rasters. The training and prediction data has been manually
# split so the percentage to exclude parameter was set to 0. A variable importance
# table is created to help assess results and advanced options have been used
# to fine tune the model.

prediction_type = "PREDICT_FEATURES"
in_features = r"Boston_Vandalism_Training"
variable_predict = "Vandalism_Count"
treat_variable_as_categorical = None
explanatory_variables = [["EduClass", "true"], ["MedianAge", "false"],
    ["HouseholdIncome", "false"], ["TotalPopulation", "false"]]
distance_features = r"Boston_Highways"
explanatory_rasters = r"LandUse true"
features_to_predict = r"Boston_Vandalism_Prediction"
output_features = r"Prediction_Output"
output_raster = None
explanatory_variable_matching = [["EduClass", "EduClass"], ["MedianAge", "MedianAge"], 
    ["HouseholdIncome", "HouseholdIncome"], ["TotalPopulation", "TotalPopulation"]]
explanatory_distance_matching = [["Boston_Highways", "Boston_Highways"]]
explanatory_rasters_matching = [["LandUse", "LandUse"]]
output_trained_features = r"Training_Output"
output_importance_table = r"Variable_Importance"
use_raster_values = True
number_of_trees = 100
minimum_leaf_size = 2
maximum_level = 5
sample_size = 100
random_sample = 3
percentage_for_training = 0

arcpy.stats.Forest(prediction_type, in_features, variable_predict,
    treat_variable_as_categorical, explanatory_variables, distance_features,
    explanatory_rasters, features_to_predict, output_features, output_raster,
    explanatory_variable_matching, explanatory_distance_matching, 
    explanatory_rasters_matching, output_trained_features, output_importance_table,
    use_raster_values, number_of_trees, minimum_leaf_size, maximum_level,
    sample_size, random_sample, percentage_for_training)
Forest-Beispiel 3 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie Sie die Funktion Forest zum Erstellen einer vorhergesagten Oberfläche verwenden.

# Import system modules
import arcpy

# Set property to overwrite existing outputs
arcpy.env.overwriteOutput = True

# Set the work space to a gdb
arcpy.env.workspace = r"C:\Data\Landsat.gdb"

# Using a forest-based model to classify a landsat image. The TrainingPolygons feature 
# class was created manually and is used to train the model to 
# classify the remainder of the landsat image.

prediction_type = "PREDICT_RASTER"
in_features = r"TrainingPolygons"
variable_predict = "LandClassName"
treat_variable_as_categorical = "CATEGORICAL" 
explanatory_variables = None
distance_features = None
explanatory_rasters = [["Band1", "false"], ["Band2", "false"], ["Band3", "false"]]
features_to_predict = None
output_features = None
output_raster = r"PredictionSurface"
explanatory_variable_matching = None
explanatory_distance_matching = None
explanatory_rasters_matching = [["Band1", "Band1"], ["Band2", "Band2"], ["Band3", "Band3"]]
output_trained_features = None
output_importance_table = None
use_raster_values = True
number_of_trees = 100
minimum_leaf_size = None
maximum_level = None
sample_size = 100
random_sample = None
percentage_for_training = 10

arcpy.stats.Forest(prediction_type, in_features, variable_predict,
    treat_variable_as_categorical, explanatory_variables, distance_features,
    explanatory_rasters, features_to_predict, output_features, output_raster,
    explanatory_variable_matching, explanatory_distance_matching, 
    explanatory_rasters_matching, output_trained_features, output_importance_table,
    use_raster_values, number_of_trees, minimum_leaf_size, maximum_level,
    sample_size, random_sample, percentage_for_training)

Umgebungen

Sonderfälle

Zufallszahlengenerator

Der verwendete Zufallsgeneratortyp ist stets Mersenne Twister.

Faktor für parallele Verarbeitung

Parallele Verarbeitung wird nur beim Treffen von Vorhersagen verwendet.

Lizenzinformationen

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

Verwandte Themen