Mit AutoDL trainieren (GeoAI)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Trainiert ein Deep-Learning-Modell, indem Training-Pipelines erstellt und ein Großteil des Trainingsprozesses automatisiert wird. Dazu gehören Datenerweiterung, Modellauswahl, Hyperparameter-Optimierung und Batch-Größen-Deduktion. Die Ausgaben enthalten Performance-Kennwerte des besten Modells in den Trainingsdaten sowie das trainierte Deep-Learning-Modellpaket (.dlpk), das als Eingabe für das Werkzeug Features mit AI-Modellen extrahieren verwendet werden kann, um Vorhersagen für neue Bilddaten zu treffen.

Weitere Informationen zur Funktionsweise von AutoDL

Verwendung

  • Sie müssen das richtige Deep-Learning-Framework für Python in ArcGIS Pro installieren.

    Informationen zum Installieren von Deep-Learning-Frameworks für ArcGIS

  • Wenn Sie Modelle in einer Umgebung ohne Internetzugang trainieren, finden Sie weitere Informationen unter Zusätzliche Installation für eine Umgebung ohne Internetzugang.

  • Wie lange es dauert, bis das Werkzeug das trainierte Modell erstellt, hängt von den folgenden Faktoren ab:

    • Menge der beim Training bereitgestellten Daten
    • Wert des Parameters AutoDL-Modus
    • Wert des Parameters Limit für Gesamtzeit (Stunden)

    Standardmäßig ist der Timer für alle Modi auf 2 Stunden festgelegt. Im Modus Basis werden die ausgewählten Netzwerke innerhalb der angegebenen Zeit anhand des Standard-Backbones trainiert. Im Modus Erweitert wird die Gesamtzeit in zwei Hälften geteilt. In der ersten Hälfte wird die Modellbewertung durchgeführt. In der zweiten Hälfte werden die beiden Modelle mit der besten Performance für die Bewertung anhand anderer Backbones ausgewählt. Wenn eine große Menge von Daten trainiert werden soll, können innerhalb von 2 Stunden möglicherweise nicht alle ausgewählten Modelle ausgewertet werden. In solchen Fällen wird das Modell, das in 2 Stunden am besten abschneidet, als optimales Modell betrachtet. Sie können entweder dieses Modell verwenden oder das Werkzeug mit einem höheren Wert für den Parameter Limit für Gesamtzeit (Stunden) erneut ausführen.

  • Dieses Werkzeug kann auch zum Optimieren eines bestehenden bereits trainierten Modells eingesetzt werden. Beispielsweise kann für ein vorhandenes Modell, das für Autos trainiert wurde, ein Finetuning durchgeführt werden, um ein Modell für die Identifizierung von Lastwagen zu trainieren.

  • Für die Ausführung dieses Werkzeugs ist ein Computer mit Grafikprozessor (GPU) erforderlich. Bei mehr als einer GPU verwenden Sie die Umgebung GPU-ID.

  • Die Eingabe-Trainingsdaten für dieses Werkzeug müssen die Bilder- und Beschriftungsordner umfassen, die vom Werkzeug Trainingsdaten für Deep Learning exportieren generiert werden.

  • Mögliche Anwendungsfälle für das Werkzeug wären das Trainieren von Modellen für die Objekterkennung und Pixelklassifizierung zum Extrahieren von Features wie Gebäudegrundrissen, Becken, Solarkollektoren, Landnutzungsklassifizierung usw.

  • Weitere Informationen zu den Voraussetzungen für die Ausführung dieses Werkzeugs und eventuell dabei auftretenden Problemen finden Sie unter Häufig gestellte Fragen zu Deep Learning.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Trainingsdaten

Die Ordner mit den Bildschnipseln, Beschriftungen und Statistiken, die zum Trainieren des Modells benötigt werden. Dies ist die Ausgabe des Werkzeugs Trainingsdaten für Deep Learning exportieren. Das Metadatenformat der exportierten Daten muss Classified_Tiles, PASCAL_VOC_rectangles oder KITTI_rectangles lauten.

Folder
Ausgabemodell

Das trainierte Ausgabemodell, das als Deep-Learning-Paket (.dlpk) gespeichert werden soll.

File
Vortrainiertes Modell
(optional)

Ein vortrainiertes Modell, das zum Feintuning des neuen Modells verwendet wird. Die Eingabe ist eine Esri Modelldefinitionsdatei (.emd) oder eine Deep-Learning-Paketdatei (.dlpk).

Für ein vortrainiertes Modell mit ähnlichen Klassen kann ein Finetuning durchgeführt werden, um es auf das neue Modell abzustimmen. Das vortrainierte Modell muss mit dem gleichen Modelltyp und dem gleichen Backbone-Modell trainiert worden sein, das für das Training des neuen Modells verwendet wird.

File
Limit für Gesamtzeit (Stunden)
(optional)

Das Limit für die Gesamtzeit des AutoDL-Modelltrainings in Stunden. Der Standardwert liegt bei 2 Stunden.

Double
AutoDL-Modus
(optional)

Gibt an, welcher AutoDL-Modus verwendet und mit welcher Intensität die AutoDL-Suche durchgeführt werden soll.

  • BasicEs wird der Basismodus verwendet. Dieser Modus dient zum Trainieren aller ausgewählten Netzwerke ohne Hyperparameter-Optimierung.
  • ErweitertEs wird der erweiterte Modus verwendet. Mit diesem Modus wird eine Hyperparameter-Optimierung für die beiden Modelle mit der besten Performance durchgeführt.
String
Neuronale Netzwerke
(optional)

Gibt die Architekturen an, die zum Trainieren des Modells verwendet werden sollen.

Standardmäßig werden alle Netzwerke verwendet.

  • SingleShotDetectorDie SingleShotDetector-Architektur wird zum Trainieren des Modells verwendet. SingleShotDetector wird für die Objekterkennung eingesetzt.
  • RetinaNetDie Architektur "RetinaNet" wird zum Trainieren des Modells verwendet. RetinaNet wird für die Objekterkennung eingesetzt.
  • FasterRCNNDie FasterRCNN-Architektur wird zum Trainieren des Modells verwendet. FasterRCNN wird für die Objekterkennung eingesetzt.
  • YOLOv3Die YOLOv3-Architektur wird zum Trainieren des Modells verwendet. YOLOv3 wird für die Objekterkennung eingesetzt.
  • HRNetDie HRNet-Architektur wird zum Trainieren des Modells verwendet. HRNet wird für die Pixelklassifizierung eingesetzt.
  • ATSSDie ATSS-Architektur wird zum Trainieren des Modells verwendet. ATSS wird für die Objekterkennung eingesetzt.
  • CARAFEDie CARAFE-Architektur wird zum Trainieren des Modells verwendet. CARAFE wird für die Objekterkennung eingesetzt.
  • CascadeRCNNDie CascadeRCNN-Architektur wird zum Trainieren des Modells verwendet. CascadeRCNN wird für die Objekterkennung eingesetzt.
  • CascadeRPNDie CascadeRPN-Architektur wird zum Trainieren des Modells verwendet. CascadeRPN wird für die Objekterkennung eingesetzt.
  • DCNDie DCN-Architektur wird zum Trainieren des Modells verwendet. DCN wird für die Objekterkennung eingesetzt.
  • DeepLabDie DeepLab-Architektur wird zum Trainieren des Modells verwendet. DeepLab wird für die Pixelklassifizierung eingesetzt.
  • UnetClassifierDie UnetClassifier-Architektur wird zum Trainieren des Modells verwendet. UnetClassifier wird für die Pixelklassifizierung eingesetzt.
  • DeepLabV3PlusDie DeepLabV3Plus-Architektur wird zum Trainieren des Modells verwendet. DeepLabV3Plus wird für die Pixelklassifizierung eingesetzt.
  • PSPNetClassifierDie PSPNetClassifier-Architektur wird zum Trainieren des Modells verwendet. PSPNetClassifier wird für die Pixelklassifizierung eingesetzt.
  • ANNDie ANN-Architektur wird zum Trainieren des Modells verwendet. ANN wird für die Pixelklassifizierung eingesetzt.
  • APCNetDie APCNet-Architektur wird zum Trainieren des Modells verwendet. APCNet wird für die Pixelklassifizierung eingesetzt.
  • CCNetDie CCNet-Architektur wird zum Trainieren des Modells verwendet. CCNet wird für die Pixelklassifizierung eingesetzt.
  • CGNetDie CGNet-Architektur wird zum Trainieren des Modells verwendet. CGNet wird für die Pixelklassifizierung eingesetzt.
  • DETRegDie DETReg-Architektur wird zum Trainieren des Modells verwendet. DETReg wird für die Objekterkennung eingesetzt.
  • DynamicRCNNDie DynamicRCNN-Architektur wird zum Trainieren des Modells verwendet. DynamicRCNN wird für die Objekterkennung eingesetzt.
  • EmpiricalAttentionDie EmpiricalAttention-Architektur wird zum Trainieren des Modells verwendet. EmpiricalAttention wird für die Objekterkennung eingesetzt.
  • FCOSDie FCOS-Architektur wird zum Trainieren des Modells verwendet. FCOS wird für die Objekterkennung eingesetzt.
  • FoveaBoxDie FoveaBox-Architektur wird zum Trainieren des Modells verwendet. FoveaBox wird für die Objekterkennung eingesetzt.
  • FSAFDie FSAF-Architektur wird zum Trainieren des Modells verwendet. FSAF wird für die Objekterkennung eingesetzt.
  • GHMDie GHM-Architektur wird zum Trainieren des Modells verwendet. GHM wird für die Objekterkennung eingesetzt.
  • LibraRCNNDie LibraRCNN-Architektur wird zum Trainieren des Modells verwendet. LibraRCNN wird für die Objekterkennung eingesetzt.
  • PaFPNDie PaFPN-Architektur wird zum Trainieren des Modells verwendet. PaFPN wird für die Objekterkennung eingesetzt.
  • Res2NetDie Res2Net-Architektur wird zum Trainieren des Modells verwendet. Res2Net wird für die Objekterkennung eingesetzt.
  • SABLDie SABL-Architektur wird zum Trainieren des Modells verwendet. SABL wird für die Objekterkennung eingesetzt.
  • VFNetDie VFNet-Architektur wird zum Trainieren des Modells verwendet. VFNet wird für die Objekterkennung eingesetzt.
  • DMNetDie DMNet-Architektur wird zum Trainieren des Modells verwendet. DMNet wird für die Pixelklassifizierung eingesetzt.
  • DNLNetDie DNLNet-Architektur wird zum Trainieren des Modells verwendet. DNLNet wird für die Pixelklassifizierung eingesetzt.
  • FastSCNNDie FastSCNN-Architektur wird zum Trainieren des Modells verwendet. FastSCNN wird für die Pixelklassifizierung eingesetzt.
  • FCNDie FCN-Architektur wird zum Trainieren des Modells verwendet. FCN wird für die Pixelklassifizierung eingesetzt.
  • GCNetDie GCNet-Architektur wird zum Trainieren des Modells verwendet. GCNet wird für die Pixelklassifizierung eingesetzt.
  • MobileNetV2Die MobileNetV2-Architektur wird zum Trainieren des Modells verwendet. MobileNetV2 wird für die Pixelklassifizierung eingesetzt.
  • NonLocalNetDie NonLocalNet-Architektur wird zum Trainieren des Modells verwendet. NonLocalNet wird für die Pixelklassifizierung eingesetzt.
  • OCRNetDie OCRNet-Architektur wird zum Trainieren des Modells verwendet. OCRNet wird für die Pixelklassifizierung eingesetzt.
  • PSANetDie PSANet-Architektur wird zum Trainieren des Modells verwendet. PSANet wird für die Pixelklassifizierung eingesetzt.
  • SemFPNDie SemFPN-Architektur wird zum Trainieren des Modells verwendet. SemFPN wird für die Pixelklassifizierung eingesetzt.
  • UperNetDie UperNet-Architektur wird zum Trainieren des Modells verwendet. UperNet wird für die Pixelklassifizierung eingesetzt.
  • MaskRCNNDie MaskRCNN-Architektur wird zum Trainieren des Modells verwendet. MaskRCNN wird für die Objekterkennung eingesetzt.
String
Ausgewertete Modelle speichern
(optional)

Gibt an, ob alle ausgewerteten Modelle gespeichert werden sollen.

  • Aktiviert: Alle ausgewerteten Modelle werden gespeichert.
  • Deaktiviert: Nur das Modell mit der besten Performance wird gespeichert. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-Modelldatei

Die Ausgabe-Modelldatei.

File

arcpy.geoai.TrainUsingAutoDL(in_data, out_model, {pretrained_model}, {total_time_limit}, {autodl_mode}, {networks}, {save_evaluated_models})
NameErläuterungDatentyp
in_data

Die Ordner mit den Bildschnipseln, Beschriftungen und Statistiken, die zum Trainieren des Modells benötigt werden. Dies ist die Ausgabe des Werkzeugs Trainingsdaten für Deep Learning exportieren. Das Metadatenformat der exportierten Daten muss Classified_Tiles, PASCAL_VOC_rectangles oder KITTI_rectangles lauten.

Folder
out_model

Das trainierte Ausgabemodell, das als Deep-Learning-Paket (.dlpk) gespeichert werden soll.

File
pretrained_model
(optional)

Ein vortrainiertes Modell, das zum Feintuning des neuen Modells verwendet wird. Die Eingabe ist eine Esri Modelldefinitionsdatei (.emd) oder eine Deep-Learning-Paketdatei (.dlpk).

Für ein vortrainiertes Modell mit ähnlichen Klassen kann ein Finetuning durchgeführt werden, um es auf das neue Modell abzustimmen. Das vortrainierte Modell muss mit dem gleichen Modelltyp und dem gleichen Backbone-Modell trainiert worden sein, das für das Training des neuen Modells verwendet wird.

File
total_time_limit
(optional)

Das Limit für die Gesamtzeit des AutoDL-Modelltrainings in Stunden. Der Standardwert liegt bei 2 Stunden.

Double
autodl_mode
(optional)

Gibt an, welcher AutoDL-Modus verwendet und mit welcher Intensität die AutoDL-Suche durchgeführt werden soll.

  • BASICEs wird der Basismodus verwendet. Dieser Modus dient zum Trainieren aller ausgewählten Netzwerke ohne Hyperparameter-Optimierung.
  • ADVANCEDEs wird der erweiterte Modus verwendet. Mit diesem Modus wird eine Hyperparameter-Optimierung für die beiden Modelle mit der besten Performance durchgeführt.
String
networks
[networks,...]
(optional)

Gibt die Architekturen an, die zum Trainieren des Modells verwendet werden sollen.

  • SingleShotDetectorDie SingleShotDetector-Architektur wird zum Trainieren des Modells verwendet. SingleShotDetector wird für die Objekterkennung eingesetzt.
  • RetinaNetDie Architektur "RetinaNet" wird zum Trainieren des Modells verwendet. RetinaNet wird für die Objekterkennung eingesetzt.
  • FasterRCNNDie FasterRCNN-Architektur wird zum Trainieren des Modells verwendet. FasterRCNN wird für die Objekterkennung eingesetzt.
  • YOLOv3Die YOLOv3-Architektur wird zum Trainieren des Modells verwendet. YOLOv3 wird für die Objekterkennung eingesetzt.
  • HRNetDie HRNet-Architektur wird zum Trainieren des Modells verwendet. HRNet wird für die Pixelklassifizierung eingesetzt.
  • ATSSDie ATSS-Architektur wird zum Trainieren des Modells verwendet. ATSS wird für die Objekterkennung eingesetzt.
  • CARAFEDie CARAFE-Architektur wird zum Trainieren des Modells verwendet. CARAFE wird für die Objekterkennung eingesetzt.
  • CascadeRCNNDie CascadeRCNN-Architektur wird zum Trainieren des Modells verwendet. CascadeRCNN wird für die Objekterkennung eingesetzt.
  • CascadeRPNDie CascadeRPN-Architektur wird zum Trainieren des Modells verwendet. CascadeRPN wird für die Objekterkennung eingesetzt.
  • DCNDie DCN-Architektur wird zum Trainieren des Modells verwendet. DCN wird für die Objekterkennung eingesetzt.
  • DeepLabDie DeepLab-Architektur wird zum Trainieren des Modells verwendet. DeepLab wird für die Pixelklassifizierung eingesetzt.
  • UnetClassifierDie UnetClassifier-Architektur wird zum Trainieren des Modells verwendet. UnetClassifier wird für die Pixelklassifizierung eingesetzt.
  • DeepLabV3PlusDie DeepLabV3Plus-Architektur wird zum Trainieren des Modells verwendet. DeepLabV3Plus wird für die Pixelklassifizierung eingesetzt.
  • PSPNetClassifierDie PSPNetClassifier-Architektur wird zum Trainieren des Modells verwendet. PSPNetClassifier wird für die Pixelklassifizierung eingesetzt.
  • ANNDie ANN-Architektur wird zum Trainieren des Modells verwendet. ANN wird für die Pixelklassifizierung eingesetzt.
  • APCNetDie APCNet-Architektur wird zum Trainieren des Modells verwendet. APCNet wird für die Pixelklassifizierung eingesetzt.
  • CCNetDie CCNet-Architektur wird zum Trainieren des Modells verwendet. CCNet wird für die Pixelklassifizierung eingesetzt.
  • CGNetDie CGNet-Architektur wird zum Trainieren des Modells verwendet. CGNet wird für die Pixelklassifizierung eingesetzt.
  • DETRegDie DETReg-Architektur wird zum Trainieren des Modells verwendet. DETReg wird für die Objekterkennung eingesetzt.
  • DynamicRCNNDie DynamicRCNN-Architektur wird zum Trainieren des Modells verwendet. DynamicRCNN wird für die Objekterkennung eingesetzt.
  • EmpiricalAttentionDie EmpiricalAttention-Architektur wird zum Trainieren des Modells verwendet. EmpiricalAttention wird für die Objekterkennung eingesetzt.
  • FCOSDie FCOS-Architektur wird zum Trainieren des Modells verwendet. FCOS wird für die Objekterkennung eingesetzt.
  • FoveaBoxDie FoveaBox-Architektur wird zum Trainieren des Modells verwendet. FoveaBox wird für die Objekterkennung eingesetzt.
  • FSAFDie FSAF-Architektur wird zum Trainieren des Modells verwendet. FSAF wird für die Objekterkennung eingesetzt.
  • GHMDie GHM-Architektur wird zum Trainieren des Modells verwendet. GHM wird für die Objekterkennung eingesetzt.
  • LibraRCNNDie LibraRCNN-Architektur wird zum Trainieren des Modells verwendet. LibraRCNN wird für die Objekterkennung eingesetzt.
  • PaFPNDie PaFPN-Architektur wird zum Trainieren des Modells verwendet. PaFPN wird für die Objekterkennung eingesetzt.
  • Res2NetDie Res2Net-Architektur wird zum Trainieren des Modells verwendet. Res2Net wird für die Objekterkennung eingesetzt.
  • SABLDie SABL-Architektur wird zum Trainieren des Modells verwendet. SABL wird für die Objekterkennung eingesetzt.
  • VFNetDie VFNet-Architektur wird zum Trainieren des Modells verwendet. VFNet wird für die Objekterkennung eingesetzt.
  • DMNetDie DMNet-Architektur wird zum Trainieren des Modells verwendet. DMNet wird für die Pixelklassifizierung eingesetzt.
  • DNLNetDie DNLNet-Architektur wird zum Trainieren des Modells verwendet. DNLNet wird für die Pixelklassifizierung eingesetzt.
  • FastSCNNDie FastSCNN-Architektur wird zum Trainieren des Modells verwendet. FastSCNN wird für die Pixelklassifizierung eingesetzt.
  • FCNDie FCN-Architektur wird zum Trainieren des Modells verwendet. FCN wird für die Pixelklassifizierung eingesetzt.
  • GCNetDie GCNet-Architektur wird zum Trainieren des Modells verwendet. GCNet wird für die Pixelklassifizierung eingesetzt.
  • MobileNetV2Die MobileNetV2-Architektur wird zum Trainieren des Modells verwendet. MobileNetV2 wird für die Pixelklassifizierung eingesetzt.
  • NonLocalNetDie NonLocalNet-Architektur wird zum Trainieren des Modells verwendet. NonLocalNet wird für die Pixelklassifizierung eingesetzt.
  • OCRNetDie OCRNet-Architektur wird zum Trainieren des Modells verwendet. OCRNet wird für die Pixelklassifizierung eingesetzt.
  • PSANetDie PSANet-Architektur wird zum Trainieren des Modells verwendet. PSANet wird für die Pixelklassifizierung eingesetzt.
  • SemFPNDie SemFPN-Architektur wird zum Trainieren des Modells verwendet. SemFPN wird für die Pixelklassifizierung eingesetzt.
  • UperNetDie UperNet-Architektur wird zum Trainieren des Modells verwendet. UperNet wird für die Pixelklassifizierung eingesetzt.
  • MaskRCNNDie MaskRCNN-Architektur wird zum Trainieren des Modells verwendet. MaskRCNN wird für die Objekterkennung eingesetzt.

Standardmäßig werden alle Netzwerke verwendet.

String
save_evaluated_models
(optional)

Gibt an, ob alle ausgewerteten Modelle gespeichert werden sollen.

  • SAVE_ALL_MODELSAlle ausgewerteten Modelle werden gespeichert.
  • SAVE_BEST_MODELNur das Modell mit der besten Performance wird gespeichert. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
output_model_file

Die Ausgabe-Modelldatei.

File

Codebeispiel

TrainUsingAutoDL (Python-Fenster)

In diesem Beispiel wird gezeigt, wie die Funktion TrainUsingAutoDL verwendet wird.

# Name: TrainUsingAutoDL.py
# Description: Train a deep learning model on imagery data with
# automatic hyperparameter selection.
  
# Import system modules
import arcpy
import os

# Set local variables

datapath = "path_to_training_data" 
out_path = "path_to_trained_model"

out_model = os.path.join(out_path, "mymodel")

# Run Train Using AutoML Model
arcpy.geoai.TrainUsingAutoDL(
    datapath, out_model, None, 2, "BASIC", 
    ["ATSS", "DCN", "FasterRCNN", "RetinaNet", "SingleShotDetector", "YOLOv3"], 
    "SAVE_BEST_MODEL")

Umgebungen

Lizenzinformationen

  • Basic: Nein
  • Standard: Nein
  • Advanced: Erfordert Image Analyst