Zusammenfassung
Führt eine generalisierte lineare Regression (GLR) aus, um Vorhersagen zu generieren oder eine abhängige Variable in Hinsicht auf ihre Beziehung zu einem Satz erklärender Variablen zu modellieren. Dieses Werkzeug kann für kontinuierliche (OLS) und binäre (logistische) Modelle sowie für Anzahlmodelle (Poisson) verwendet werden.
Verwendung
Dieses Werkzeug kann in zwei verschiedenen Operationsmodi verwendet werden. Sie können die Performance verschiedener Modelle beim Erkunden unterschiedlicher erklärender Variablen und Werkzeugeinstellungen auswerten. Wenn Sie ein gutes Modell gefunden haben, können Sie das Modell an ein neues Dataset anpassen.
Verwenden Sie den Parameter Eingabe-Features mit einem Feld, das das Phänomen darstellt, das Sie modellieren (der Parameter Abhängige Variable), und einem oder mehreren Feldern, die die erklärenden Variablen darstellen.
Das Werkzeug Generalisierte lineare Regression erzeugt darüber hinaus Ausgabe-Features und Diagnosen. Ausgabe-Feature-Classes werden automatisch zur Karte hinzugefügt, wobei ein Rendering-Schema auf Modellresiduen angewendet wird. Eine vollständige Erklärung jeder Ausgabe wird nachfolgend bereitgestellt.
Es ist wichtig, den richtigen Modelltyp (Kontinuierlich, Binär oder Anzahl) für die Analyse zu verwenden, damit die Regressionsanalyse möglichst genaue Ergebnisse liefert.
Ergebnisse der Modellzusammenfassung und Diagnosen werden in das Meldungsfenster eingegeben, und Diagramme werden unterhalb der Ausgabe-Feature-Class erstellt. Die gemeldeten Diagnosen sind abhängig vom Parameterwert Modelltyp. Die folgenden drei Optionen für den Modelltyp sind verfügbar:
- Verwenden Sie Kontinuierlich (Gauß) als Modelltyp, wenn die abhängige Variable einen großen Wertebereich haben kann, z. B. Temperaturen oder Umsätze. Im Idealfall ist die abhängige Variable normal verteilt.
Verwenden Sie den Modelltyp Binär (Logistisch), wenn die abhängige Variable einen von zwei möglichen Werten annehmen kann, z. B. Erfolg oder Misserfolg, Anwesenheit oder Abwesenheit. Das Feld mit der abhängigen Variable muss entweder ein numerisches Feld oder ein Textfeld sein. Wenn dieses Feld ein numerisches Feld ist, darf es nur Einsen und Nullen enthalten. Wenn dieses Feld ein Textfeld ist, darf es nur zwei eindeutige Werte enthalten. Wenn Sie ein Textfeld verwenden, dann müssen Sie den Parameter Abhängige Variablen zuordnen verwenden, um die eindeutigen Textwerte den Einsen und Nullen zuzuordnen. Ihre Daten sollten Variationen der Einsen und Nullen der eindeutigen Textwerte aufweisen.
Verwenden Sie den Modelltyp Anzahl (Poisson), wenn die abhängige Variable diskontinuierlich ist und die Anzahl eines bestimmten Ereignisses darstellt, z. B. die Anzahl von Straftaten. Anzahlmodelle können auch verwendet werden, wenn die abhängige Variable ein Verhältnis darstellt und es sich bei dem Nenner des Verhältnisses um einen Festwert handelt, z. B. Umsatz pro Monat oder die Anzahl der krebskranken Personen pro 10.000 Einwohner. Das Modell Anzahl geht davon aus, dass der Mittelwert und die Abweichung der abhängigen Variablen gleich sind und die Werte der abhängigen Variablen weder negativ sind noch Dezimalstellen enthalten.
Die Parameterwerte Abhängige Variable und Erklärende Variable sollten numerische Felder sein, die eine Vielzahl von Werten enthalten. Dieses Werkzeug kann keine Berechnung vornehmen, wenn die Variablen alle dieselben Werte aufweisen (wenn beispielsweise alle Werte für ein Feld 9,0 betragen).
Features mit Vorhersage- oder erklärenden Feldern, die mindestens einen NULL-Wert oder eine leere Zeichenfolge aufweisen, werden von der Ausgabe ausgeschlossen. Sie können die Werte bei Bedarf mit dem Werkzeug Feld berechnen ändern.
Überprüfen Sie die zu hohen und zu niedrigen Vorhersagen in den Regressionsresiduen visuell, um festzustellen, ob sie Aufschluss über potenziell fehlende Variablen im Regressionsmodell geben.
Mit dem erstellten Regressionsmodell können Sie Vorhersagen für andere Features treffen. Für diese Vorhersagen ist es erforderlich, dass alle Vorhersage-Features Werte für jede der angegebenen erklärenden Variablen enthalten. Stimmen die Feldnamen aus den Parametern "Eingabe-Features" und "Vorherzusagende Positionen" nicht überein, wird ein Parameter für den Variablenabgleich bereitgestellt. Beim Abgleich der erklärenden Variablen müssen die Felder aus den Eingabe-Features und die Parameter für die Eingabe-Vorhersage-Features den gleichen Typ aufweisen (z. B. müssen Double-Felder mit Double-Feldern abgeglichen werden).
Die GeoAnalytics-Implementierung des Werkzeugs "Generalisierte lineare Regression" (GLR) unterliegt folgenden Beschränkungen:
- Es handelt sich um ein globales Regressionsmodell, in dem die räumliche Verteilung der Daten unberücksichtigt bleibt.
- Bei der Analyse wird der Morans I-Test nicht auf die Residuen angewendet.
- Als Eingabe werden Feature-Datasets (Punkte, Linien, Polygone und Tabellen) unterstützt, jedoch keine Raster.
- Eine Klassifizierung von Werten ist nicht möglich.
Dieses Geoverarbeitungswerkzeug wird unterstützt durch ArcGIS GeoAnalytics Server. Die Analyse wird auf dem GeoAnalytics Server ausgeführt, und die Ergebnisse werden in den eigenen Inhalten in ArcGIS Enterprise gespeichert.
Bei der Ausführung von GeoAnalytics Server-Werkzeugen wird die Analyse auf dem GeoAnalytics Server abgeschlossen. Für eine optimale Performance sollten die Daten dem GeoAnalytics Server über Feature-Layer zur Verfügung stehen, die auf Ihrem ArcGIS Enterprise-Portal gehostet werden. Alternativ können Big-Data-Dateifreigaben verwendet werden. Daten, auf die der GeoAnalytics Server nicht lokal zugreifen kann, werden vor Analysebeginn auf den GeoAnalytics Server verschoben. Dadurch dauert die Ausführung eines Werkzeugs länger. Es kann zudem vorkommen, dass das Verschieben der Daten von ArcGIS Pro zum GeoAnalytics Server fehlschlägt. Die Wahrscheinlichkeit eines Fehlers hängt dabei von der Netzwerkgeschwindigkeit sowie der Größe und Komplexität der Daten ab. Daher wird empfohlen, dass Sie Ihre Daten stets freigeben oder eine Big-Data-Dateifreigabe erstellen.
Weitere Informationen zum Freigeben von Daten in Ihrem Portal
Weitere Informationen zum Erstellen einer Big-Data-Dateifreigabe über Server Manager
Syntax
arcpy.geoanalytics.GeneralizedLinearRegression(input_features, dependent_variable, model_type, explanatory_variables, output_features_name, {generate_coefficient_table}, {input_features_to_predict}, {explanatory_variables_to_match}, {dependent_variable_mapping}, {data_store})
Parameter | Erklärung | Datentyp |
input_features | Der Layer, der die abhängigen und unabhängigen Variablen enthält. | Record Set |
dependent_variable | Das numerische Feld mit den beobachteten Werten, die modelliert werden sollen. | Field |
model_type | Gibt den Typ der Daten an, die modelliert werden.
| String |
explanatory_variables [explanatory_variables,...] | Eine Liste von Feldern, die unabhängige erklärende Variablen im Regressionsmodell darstellen. | Field |
output_features_name | Der Name der erstellten Feature-Class mit den Schätzungen und Residuen abhängiger Variablen. | String |
generate_coefficient_table (optional) | Gibt an, ob eine Ausgabetabelle mit Koeffizientenwerten (booleschen Werten) generiert wird.
| Boolean |
input_features_to_predict (optional) | Ein Layer mit Features, die Positionen darstellen, an denen Schätzungen berechnet werden sollen. Jedes Feature im Dataset sollte Werte für alle angegebenen erklärenden Variablen enthalten. Die abhängige Variable für diese Features wird anhand des Modells geschätzt, das für die Daten des Eingabe-Layers kalibriert wurde. | Record Set |
explanatory_variables_to_match [[Field from Prediction Locations, Field from Input Features],...] (optional) | Gleicht die erklärenden Variablen im Parameter input_features_to_predict mit den entsprechenden erklärenden Variablen des Parameters input_features ab, Beispiel: [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]]. | Value Table |
dependent_variable_mapping [dependent_variable_mapping,...] (optional) | Zwei Zeichenfolgen für die Werte, die bei der binären Regression 0 (nicht vorhanden) und 1 (vorhanden) zugeordnet werden. Standardmäßig werden 0 und 1 verwendet. Um beispielsweise eine Verhaftung anhand der Felder mit den Werten "Verhaftung" und "Keine Verhaftung" vorherzusagen, geben Sie "Keine Verhaftung" für den Wert "False" (0) und "Verhaftung" für den Wert "True" (1) ein. | Value Table |
data_store (optional) | Gibt den ArcGIS Data Store für das Speichern der Ausgabe an. Die Standardeinstellung ist SPATIOTEMPORAL_DATA_STORE. Alle in einem Big Data Store vom Typ "spatiotemporal" gespeicherten Ergebnisse werden im WGS84 gespeichert. Ergebnisse, die in einem Data Store vom Typ "relational" gespeichert werden, behalten ihr Koordinatensystem bei.
| String |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
output | Der Ausgabe-Feature-Service mit den Schätzungen der abhängigen Variablen für alle Eingabe-Features. | Datensatz |
output_predicted_features | Ein Ausgabe-Layer mit den Eingabevariablen und vorhergesagten erklärenden Werten. | Datensatz |
coefficient_table | Ausgabetabelle mit Koeffizientenwerten. | Datensatz |
Codebeispiel
Im folgenden eigenständigen Skript wird veranschaulicht, wie das Werkzeug GeneralizedLinearRegression verwendet wird.
In diesem Skript wird ein Modell erstellt und vorhergesagt, ob eine Verhaftung wegen bestimmter Straftaten vorgenommen wurde.
# Name: GeneralizedLinearRegression.py
# Description: Run GLR on crime data and predict if an arrest was made for a crime reporting.
#
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
trainingDataset = "https://analysis.org.com/server/rest/services/Hosted/old_crimes/FeatureServer/0"
predictionDataset = "https://analysis.org.com/server/rest/services/Hosted/new_crimes/FeatureServer/0"
outputTrainingName = "training"
# Execute GLR
arcpy.geoanalytics.GeneralizedLinearRegression(
trainingDataset, "ArrestMade", "BINARY", "CRIME_TYPE; WARD; DAY_OF_MONTH", outputTrainingName,
"NO_TABLE", predictionDataset, "CRIME_TYPE CRIME_TYPE;WARD WARD;DAY_OF_MONTH DAY_OF_MON",
"Arrest NoArrest", "SPATIOTEMPORAL_DATA_STORE")
Umgebungen
- Ausgabe-Koordinatensystem
Das Koordinatensystem, das für die Analyse verwendet wird. Die Analyse wird im Eingabe-Koordinatensystem ausgeführt, sofern nicht anders durch diesen Parameter angegeben. Für GeoAnalytics Tools werden die Endergebnisse im Data Store vom Typ "spatiotemporal" in WGS84 gespeichert.
Lizenzinformationen
- Basic: Erfordert ArcGIS GeoAnalytics Server
- Standard: Erfordert ArcGIS GeoAnalytics Server
- Advanced: Erfordert ArcGIS GeoAnalytics Server