Mit Regressionsmodell vorhersagen (Image Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Sagt anhand der Ausgabe des Werkzeugs Regressionsmodell "Random Trees" trainieren Datenwerte vorher.

Verwendung

  • Wenn es sich bei dem Wert für Eingabe-Raster um ein Multiband-Raster handelt, stellt jedes Band eine erklärende Variable dar. Die Reihenfolge der Bänder im Multiband-Raster muss mit den Eingaben, die im Werkzeug Regressionsmodell "Random Trees" trainieren zum Trainieren des Modells verwendet wurden, übereinstimmen.

  • Wenn es sich bei dem Wert für Eingabe-Raster um ein multidimensionales Raster (multidimensionalen Raster-Layer, multidimensionale CRF-Datei oder multidimensionales Mosaik-Dataset) handelt, müssen alle multidimensionalen Variablen Einzelbänder sein und den Dimensionswert StdTime oder StdZ aufweisen. Jede multidimensionale Variable wird als Einflussvariable verarbeitet. Es werden alle multidimensionalen Variablen verwendet.

  • Das Regressionsmodell ist in einer Esri Regressionsdefinitionsdatei (.ecd) definiert. Sie enthält alle Informationen für ein bestimmtes Dataset bzw. verschiedene Datasets sowie ein Regressionsmodell. Die Datei wird von den Trainingswerkzeugen des Regressionsmodells, beispielsweise vom Werkzeug Regressionsmodell "Random Trees" trainieren, generiert.

  • Die Eingabe-Raster müssen in derselben Form wie beim Trainieren des Regressionsmodells vorliegen. Die Eingabe muss beispielsweise dieselbe Anzahl von Elementen in der Liste in derselben Reihenfolge enthalten, und alle Elemente müssen übereinstimmen (einschließlich der Variablen eines multidimensionalen Rasters).

  • Falls eine der erklärenden Variablen an einer Position den Wert "NoData" aufweist, hat auch das entsprechende Pixel in der Ausgabe den Wert "NoData".

  • Die Ausgabe-Zellengröße wird durch das erste Eingabe-Raster oder die Umgebungseinstellungen bestimmt.

  • Wenn die Ausgabe ein multidimensionales Raster ist, müssen Sie das CRF- oder NetCDF-Format verwenden. In anderen Raster-Formaten, z. B. TIFF, kann ein einzelnes Raster-Dataset gespeichert werden. In einem Raster ohne Dimensionen können keine Ausgabeinformationen für multidimensionale Raster gespeichert werden.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster

Die Einzelband-, Multiband- oder multidimensionalen Raster-Datasets bzw. Mosaik-Datasets mit den erklärenden Variablen

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
Eingabe-Regressionsdefinitionsdatei

Eine Datei im JSON-Format, die Attributinformationen, Statistiken oder weitere Daten für das Regressionsmodell enthält. Die Datei weist die Erweiterung ".ecd" auf. Bei der Datei handelt es sich um die Ausgabe des Werkzeugs Regressionsmodell "Random Trees" trainieren.

File
Vorausgesagtes Ausgabe-Raster

Ein Raster der vorhergesagten Werte

Raster Dataset

PredictUsingRegressionModel(in_rasters, in_regression_definition, out_raster_dataset)
NameErläuterungDatentyp
in_rasters
[in_rasters,...]

Die Einzelband-, Multiband- oder multidimensionalen Raster-Datasets bzw. Mosaik-Datasets mit den erklärenden Variablen

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; String
in_regression_definition

Eine Datei im JSON-Format, die Attributinformationen, Statistiken oder weitere Daten für das Regressionsmodell enthält. Die Datei weist die Erweiterung ".ecd" auf. Bei der Datei handelt es sich um die Ausgabe des Werkzeugs Regressionsmodell "Random Trees" trainieren.

File
out_raster_dataset

Ein Raster der vorhergesagten Werte

Raster Dataset

Codebeispiel

PredictUsingRegressionModel – Beispiel 1 (Python-Fenster)

Mit diesem Skript für das Python-Fenster werden unter Verwendung der Ausgabe der Funktion PredictUsingRegressionModel Datenwerte vorhergesagt.

# Import system modules 
import arcpy 
from arcpy.ia import * 

# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 

predicted_raster = arcpy.ia.PredictUsingRegressionModel("weather_variables.crf";"dem.tif", r"c:\data\pm_trained.ecd") 
predicted_raster.save("C:/data/pm2.5_prediction.crf")
PredictUsingRegressionModel – Beispiel 2 (eigenständiges Skript)

Mit diesem eigenständigen Python-Skript werden unter Verwendung der Ausgabe der Funktion PredictUsingRegressionModel Datenwerte vorhergesagt.

# Import system modules 
import arcpy 
from arcpy.ia import *  

# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 

# Define input parameters 
in_weather_variables = "C:/Data/ClimateVariables.crf" 
in_dem_varaible = "C:/Data/dem.tif" 
in_target = "C:/Data/pm2.5_observations.shp" 
target_value_field = "mean_pm2.5" 
Target_date_field = "date_collected" 
Raster_dimension = “StdTime” 
out_model_definition = "C:/Data/pm2.5_trained_model.ecd" 
Out_importance_table = "C:/Data/pm2.5_importance_table.csv" 
max_num_trees = 50 
max_tree_depth = 30 
max_num_samples = 10000    

# Execute - train with random tree regression model 
arcpy.ia.TrainRandomTreesRegressionModel(in_weather_variables;in_dem_varaible, in_target, out_model_definition,  target_value_field, Target_date_field, Raster_dimension, max_num_trees, max_tree_depth, max_num_samples)

Verwandte Themen