Deep-Learning-Modell trainieren (Image Analyst)

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Trainiert ein Deep-Learning-Modell mit der Ausgabe des Werkzeugs Trainingsdaten für Deep Learning exportieren.

Verwendung

  • Dieses Werkzeug trainiert ein Deep-Learning-Modell in Deep-Learning-Umgebungen.

  • Informationen zum Einrichten des Computers für Deep-Learning-Frameworks in ArcGIS Pro finden Sie unter Installieren von Deep-Learning-Frameworks for ArcGIS.

  • Weitere Informationen zum Trainieren von Modellen in einer nicht verbundenen Umgebung finden Sie unter Additional Installation for Disconnected Environment.

  • Dieses Werkzeug kann auch zur Optimierung eines vorhandenen trainierten Modells verwendet 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.

  • Wenn Sie dieses Werkzeug mit dem Grafikprozessor ausführen möchten, legen Sie die Umgebungsvariable Prozessortyp auf GPU fest. Wenn Sie mehrere Grafikprozessoren haben, legen Sie stattdessen die Umgebungsvariable GPU ID fest.

  • 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.

  • 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.

  • Weitere Informationen zu Deep Learning finden Sie unter Deep Learning in ArcGIS Pro.

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.

Wenn die folgenden Bedingungen erfüllt sind, werden mehrere Eingabeordner unterstützt:

  • Das Metadatenformat muss "Klassifizierte Kacheln", "Beschriftende Kacheln", "Kacheln mit mehreren Beschriftungen", "PASCAL Visual Object Classes" oder "RCNN-Masken" sein.
  • Alle Trainingsdaten müssen im selben Metadatenformat vorliegen.
  • Alle Trainingsdaten müssen dieselbe Anzahl an Bändern aufweisen.
  • Alle Trainingsdaten müssen dieselbe Kachelgröße aufweisen.

Folder
Ausgabemodell

Der Speicherort des Ausgabeordners, in dem das trainierte Modell gespeichert wird.

Folder
Max. Epochen
(optional)

Die maximale Anzahl von Epochen, für die das Modell trainiert wird. Eine maximale Epoche von eins bedeutet, dass das Dataset einmal vorwärts und einmal rückwärts durch das neuronale Netz geleitet wird. Der Standardwert ist 20.

Long
Modelltyp
(optional)

Gibt den Modelltyp an, der zum Trainieren des Deep-Learning-Modells verwendet wird.

  • Single Shot Detector (Objekterkennung)Die Architektur "Single Shot Detector (SSD)" wird zum Trainieren des Modells verwendet. SSD wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Pascal Visual Object Classes-Metadatenformat verwendet.
  • U-Net (Pixelklassifizierung)Die Architektur "U-Net" wird zum Trainieren des Modells verwendet. U-Net wird für die Pixelklassifizierung verwendet.
  • Feature Classifier (Objektklassifizierung)Die Architektur "Feature Classifier" wird zum Trainieren des Modells verwendet. Dies wird für die Objekt- oder Bildklassifizierung verwendet.
  • Pyramid Scene Parsing Network (Pixelklassifizierung)Die Architektur "Pyramid Scene Parsing Network (PSPNET)" wird zum Trainieren des Modells verwendet. PSPNET wird für die Pixelklassifizierung verwendet.
  • RetinaNet (Objekterkennung)Die Architektur "RetinaNet" wird zum Trainieren des Modells verwendet. RetinaNet wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Pascal Visual Object Classes-Metadatenformat verwendet.
  • MaskRCNN (Objekterkennung)Die Architektur "MaskRCNN" wird zum Trainieren des Modells verwendet. MaskRCNN wird für die Objekterkennung eingesetzt. Dieser Ansatz wird für die Instanzsegmentierung verwendet, d. h. zur genauen Abgrenzung von Objekten in einem Bild. Dieser Modelltyp kann zur Erkennung von Gebäudegrundrissen verwendet werden. Er verwendet das MaskRCNN-Metadatenformat für die Trainingsdaten als Eingabe. Klassenwerte für Eingabe-Trainingsdaten müssen bei 1 beginnen. Dieser Modelltyp kann nur mit einer CUDA-aktivierten GPU trainiert werden.
  • YOLOv3 (Objekterkennung)Die Architektur "YOLOv3" wird zum Trainieren des Modells verwendet. Für die Objekterkennung wird YOLOv3 verwendet.
  • DeepLabV3 (Pixelklassifizierung)Die Architektur "DeepLabV3" wird zum Trainieren des Modells verwendet. DeepLab wird für die Pixelklassifizierung verwendet.
  • FasterRCNN (Objekterkennung)Die Architektur "FasterRCNN" wird zum Trainieren des Modells verwendet. FasterRCNN wird für die Objekterkennung eingesetzt.
  • BDCN Edge Detector (Pixelklassifizierung)Die Architektur "Bi-Directional Cascade Network" (BDCN) wird zum Trainieren des Modells verwendet. Der BDCN Edge Detector wird für der Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Verbesserung der Kantenerkennung für Objekte in unterschiedlichen Maßstäben.
  • HED Edge Detector (Pixelklassifizierung)Die Architektur "Holistically-Nested Edge Detection" (HED) wird zum Trainieren des Modells verwendet. Der HED Edge Detector wird für der Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Kanten- und Objektgrenzenerkennung.
  • Multi Task Road Extractor (Pixelklassifizierung)Die Architektur "Multi Task Road Extractor" wird zum Trainieren des Modells verwendet. Der Multi Task Road Extractor wird für die Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Extraktion von Straßennetzen aus Satellitenbildern.
  • ConnectNet (Pixelklassifizierung)Die Architektur "ConnectNet" wird zum Trainieren des Modells verwendet. ConnectNet wird für die Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Extraktion von Straßennetzen aus Satellitenbildern.
  • Pix2Pix (Bild-zu-Bild-Übersetzung)Die Architektur "Pix2Pix" wird zum Trainieren des Modells verwendet. Pix2Pix wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • CycleGAN (Bild-zu-Bild-Übersetzung)Die Architektur "CycleGAN" wird zum Trainieren des Modells verwendet. CycleGAN wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. Dies ist der einzige Ansatz, bei dem die zu trainierenden Bilder nicht überlappen müssen. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das CycleGAN-Metadatenformat verwendet.
  • Super-Resolution (Bild-zu-Bild-Übersetzung)Die Architektur "Super-Resolution" wird zum Trainieren des Modells verwendet. Super-Resolution wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem die Auflösung erhöht und die Bildqualität verbessert wird. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • Change Detector (Pixelklassifizierung)Die Architektur "Change Detector" wird zum Trainieren des Modells verwendet. Change Detector wird für die Pixelklassifizierung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, bei dem unter Verwendung von zwei räumlich-zeitlichen Bildern ein klassifiziertes Raster der Änderung erstellt wird. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Klassifizierte Kacheln" verwendet.
  • Image Captioner (Bild-zu-Bild-Übersetzung)Die Architektur "Image Captioner" wird zum Trainieren des Modells verwendet. Image Captioner wird für die Bild-zu-Text-Übersetzung verwendet. Mit diesem Ansatz wird ein Modell erstellt, das Bildunterschriften für Bilder generiert.
  • Siam Mask (Objekt-Tracker)Die Architektur "Siam Mask" wird zum Trainieren des Modells verwendet. Siam Mask wird für die Objekterkennung in Videos verwendet. Das Modell wird mit Videobildern trainiert und erkennt die Klassen und umgebenden Rechtecke der Objekte in den einzelnen Bildern. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das MaskRCNN-Metadatenformat verwendet.
  • MMDetection (Objekterkennung)Die Architektur "MMDetection" wird zum Trainieren des Modells verwendet. MMDetection wird für die Objekterkennung eingesetzt. Unterstützte Metadatenformate sind PASCAL Visual Object Classes-Rechtecke und KITTI-Rechtecke.
  • MMSegmentation (Pixelklassifizierung)Die Architektur "MMSegmentation" wird zum Trainieren des Modells verwendet. MMDetection wird für die Pixelklassifizierung verwendet. Als Metadatenformat werden klassifizierte Kacheln unterstützt.
  • Deep Sort (Objekt-Tracker)Die Architektur "Deep Sort" wird zum Trainieren des Modells verwendet. Deep Sort wird für die Objekterkennung in Videos verwendet. Das Modell wird mit Videobildern trainiert und erkennt die Klassen und umgebenden Rechtecke der Objekte in den einzelnen Bildern. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Imagenet-Metadatenformat verwendet. Während Siam Mask bei der Nachverfolgung eines Objekts hilfreich ist, eignet sich Deep Sort für das Trainieren eines Modells zur Nachverfolgung mehrerer Objekte.
  • Pix2PixHD (Bild-zu-Bild-Übersetzung)Die Architektur "Pix2PixHD" wird zum Trainieren des Modells verwendet. Pix2PixHD wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • MaX-DeepLab (panoptische Segmentierung)Die Architektur "MaX-DeepLab" wird zum Trainieren des Modells verwendet. "MaX-DeepLab" wird für die panoptische Segmentierung verwendet. Bei diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern und Features Modellobjekte generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Panoptische Segmentierung" verwendet.
  • DETReg (Objekterkennung)Die Architektur "DETReg" wird zum Trainieren des Modells verwendet. DETReg wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird "Pascal Visual Object Classes" verwendet. Dieser Modelltyp ist GPU-intensiv. Er erfordert eine dedizierte GPU mit mindestens 16 GB Speicher, damit er ordnungsgemäß ausgeführt wird.
  • PSETAE (Pixelklassifizierung)Die PSETAE-Architektur (Pixel-Set Encoders and Temporal Self-Attention) wird verwendet, um ein Modell für die Zeitserienklassifizierung zu trainieren. Die für diese Methode verwendeten vorläufigen Daten sind multidimensionale Daten. PSETAE wird für die Pixelklassifizierung verwendet.
String
Batch-Größe
(optional)

Die Anzahl der Trainingstichproben, die für das Training gleichzeitig bearbeitet werden müssen.

Durch größere Batches kann die Leistung des Werkzeugs erhöht werden. Aber größere Batches belegen mehr Arbeitsspeicher. Wird die Fehlermeldung "Nicht genügend Arbeitsspeicher" angezeigt, verwenden Sie kleinere Batches.

Long
Modellargumente
(optional)

Die Funktionsargumente werden in der Python-Raster-Funktionsklasse definiert. Hier geben Sie zusätzliche Deep-Learning-Parameter und Argumente für Experimente und Verfeinerungen wie den Konfidenzschwellenwert zur Anpassung der Empfindlichkeit an. Die Namen der Argumente werden durch Lesen des Python-Moduls aufgefüllt.

Wenn Sie Single Shot Detector (Objekterkennung) als Parameterwert Modelltyp wählen, wird der Parameter Modellargumente mit folgenden Argumenten befüllt:

  • grids: Die Anzahl der Gitternetze, in die das Bild für die Verarbeitung aufgeteilt wird. Das Festlegen des Arguments auf 4 bedeutet, dass das Bild in 4 x 4 bzw. 16 Gitterzellen aufgeteilt wird. Wenn kein Wert angegeben wird, wird der optimale Gitternetzwert auf der Grundlage der Eingabe-Bilddaten berechnet.
  • zooms: Die Anzahl der Zoomstufen, die jede Zelle hoch- oder herunterskaliert wird. Das Festlegen des Arguments auf 1 bedeutet, dass alle Gitterzellen die gleiche Größe oder Zoomstufe beibehalten. Eine Zoomstufe von 2 bedeutet, dass alle Gitterzellen zwei Mal so groß werden (um 100 Prozent vergrößert). Die Bereitstellung einer Liste von Zoomstufen bedeutet, dass alle Gitterzellen mit allen Zahlen in der Liste skaliert werden. Der Standardwert ist 1,0.
  • ratios: Die Liste der für die Ankerboxen zu verwendenden Seitenverhältnisse. Bei der Objekterkennung stellt eine Ankerbox die ideale Position, Form und Größe des vorhergesagten Objekts dar. Das Festlegen dieses Arguments auf [1,0,1,0], [1,0, 0,5] bedeutet, die Ankerbox ist ein Quadrat (1:1) oder ein Rechteck, bei dem die horizontale Seite halb so groß wie die vertikale Seite ist (1:0,5). Die Standardeinstellung ist [1,0, 1,0].
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und average_precision. Die Standardeinstellung ist valid_loss.

Wenn Sie ein Pixelklassifizierungsmodell wie Pyramid Scene Parsing Network (Pixelklassifizierung), U-Net (Pixelklassifizierung) oder DeepLabv3 (Pixelklassifizierung) als Wert für den Parameter Modelltyp auswählen, wird der Parameter Modellargumente mit folgenden Argumenten ausgefüllt:

  • use_net: Gibt an, ob der U-Net-Decoder zum Wiederherstellen von Daten verwendet wird, nachdem das Pyramiden-Pooling abgeschlossen ist. Der Standardwert ist true. Dieses Argument gilt speziell für das Pyramid Scene Parsing Network-Modell.
  • pyramid_sizes: Die Anzahl und Größe der Faltungs-Layer, die auf die verschiedenen Unterregionen anzuwenden sind. Die Standardeinstellung ist [1,2,3,6]. Dieses Argument gilt speziell für das Pyramid Scene Parsing Network-Modell.
  • mixup: Gibt an, ob Zu- und Abnahme des Mixups verwendet werden. Die Standardeinstellung ist False.
  • class_balancing: Gibt an, ob der Kreuzentropie-Verlust umgekehrt proportional zur Pixelhäufigkeit pro Klasse ausgeglichen wird. Die Standardeinstellung ist False.
  • focal_loss: Gibt an, ob Fokusverlust verwendet wird. Die Standardeinstellung ist False.
  • ignore_classes: Enthält die Liste der Klassenwerte, bei denen das Modell keinen Verlust verzeichnen wird.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und accuracy. Die Standardeinstellung ist valid_loss.

Wenn Sie RetinaNet (Objekterkennung) als Parameterwert für Modelltyp wählen, wird der Parameter Modellargumente mit den folgenden Argumenten befüllt:

  • scales: Die Anzahl der Maßstabsebenen, die jede Zelle hoch- oder herunterskaliert wird. Die Standardeinstellung ist [1, 0,8, 0,63].
  • ratios: Das Seitenverhältnis der Ankerbox. Die Standardeinstellung ist 0,5,1,2.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und average_precision. Die Standardeinstellung ist valid_loss.

Wenn Sie Multi Task Road Extractor (Pixelklassifizierung) oder ConnectNet (Pixelklassifizierung) als Parameterwert Modelltyp wählen, wird der Parameter Modellargumente mit folgenden Argumenten befüllt:

  • gaussian_thresh: Legt den Gauß'schen Schwellenwert zur Festlegung der erforderlichen Straßenbreite fest. Der gültige Bereich liegt zwischen 0,0 und 1,0. Der Standardwert ist 0,76.
  • orient_bin_size: Legt die Abschnittsgröße für Ausrichtungswinkel fest. Die Standardeinstellung ist 20.
  • orient_theta: Legt die Breite der Ausrichtungsmaske fest. Der Standardwert ist 8.
  • mtl_model: Legt den Architekturtyp fest, der zum Erstellen des Modells verwendet wird. Gültige Auswahloptionen sind linknet oder hourglass für auf LinkNet bzw. auf Hourglass basierende neuronale Architekturen. Die Standardeinstellung ist hourglass.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, accuracy, miou und dice. Die Standardeinstellung ist valid_loss.

Wenn Sie Image Captioner (Bild-zu-Bild-Übersetzung) als Parameterwert für Modelltyp wählen, wird der Parameter Modellargumente mit den folgenden Argumenten befüllt:

  • decode_params: Ein Wörterbuch, das steuert, wie Image Captioner ausgeführt wird. Der Standardwert ist {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}.
  • chip_size: Legt die Bildgröße zum Trainieren des Modells fest. Bilder werden auf die angegebene Schnipselgröße zugeschnitten. Wenn die Bildgröße kleiner als die Schnipselgröße ist, wird die Bildgröße verwendet. Die Standardgröße beträgt 224 Pixel.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, accuracy, corpus_bleu und multi_label_fbeta. Die Standardeinstellung ist valid_loss.
Das Argument decode_params besteht aus den folgenden sechs Parametern:
  • embed_size: Legt die Einbettungsgröße fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • hidden_size: Legt die Größe für ausgeblendete Layer fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • attention_size: Legt die Größe für Attention-Zwischen-Layer fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • teacher_forcing: Legt die Wahrscheinlichkeit für Teacher Forcing fest. Teacher Forcing ist eine Strategie für das Trainieren rekurrenter neuronaler Netzwerke. Dabei wird im Rahmen der Backpropagation statt der vorherigen Ausgabe die Modellausgabe aus einem vorherigen Zeitschritt als Eingabe verwendet. Der gültige Bereich liegt zwischen 0,0 und 1,0. Die Standardeinstellung ist 1.
  • dropout: Legt die Dropout-Wahrscheinlichkeit fest. Der gültige Bereich liegt zwischen 0,0 und 1,0. Die Standardeinstellung ist 0,1.
  • pretrained_emb: Legt das Flag für vortrainierte Einbettungen fest. Bei True wird schnelle Texteinbettung verwendet. Bei False wird die vortrainierte Texteinbettung nicht verwendet. Die Standardeinstellung ist "False".

Wenn Sie Change Detector (Pixelklassifizierung) als Parameterwert für Modelltyp wählen, wird der Parameter Modellargumente mit dem folgenden Argument befüllt:

  • attention_type: Gibt den Modultyp an. Zur Auswahl stehen die Module PAM (Pyramid Attention Module) oder BAM (Basic Attention Module). Die Standardeinstellung ist PAM.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, precision, recall und f1. Die Standardeinstellung ist valid_loss.

Wenn Sie MMDetection (Objekterkennung) als Parameterwert für Modelltyp wählen, wird der Parameter Modellargumente mit den folgenden Argumenten befüllt:

  • model: Das Backbone-Modell, das zum Trainieren des Modells verwendet wird. Folgende Optionen lassen sich als Backbone.Modell verwenden: atss, carafe, cascade_rcnn, cascade_rpn, dcn, detectors, double_heads, dynamic_rcnn, empirical_attention, fcos, foveabox, fsaf, ghm, hrnet, libra_rcnn, nas_fcos, pafpn, pisa, regnet, reppoints, res2net, sabl oder vfnet. Die Standardeinstellung ist cascade_rcnn.
  • Model_weight: Gibt an, ob die Gewichtungen des vorab trainierten Modells verwendet werden sollen. Der Standardwert ist "false". Der Wert kann auch ein Pfad zu einer Konfigurationsdatei mit den Gewichtungen eines Modells aus dem Repository "MMDetection" sein.

Wenn Sie MMSegmentation (Pixelklassifizierung) als Parameterwert für Modelltyp wählen, wird der Parameter Modellargumente mit den folgenden Argumenten befüllt:

  • model: Das Backbone-Modell, das zum Trainieren des Modells verwendet wird. Folgende Optionen lassen sich als Backbone.Modell verwenden: ann, apcnet, ccnet, cgnet, danet, deeplabv3, deeplabv3plus, dmnet , dnlnet, emanet, encnet, fastscnn, fcn, gcnet, hrnet, mobilenet_v2, mobilenet_v3, nonlocal_net, ocrnet, ocrnet_base, pointrend, psanet, pspnet, resnest, sem_fpn, unet oder upernet. Die Standardeinstellung ist deeplabv3.
  • Model_weight: Gibt an, ob die Gewichtungen des vorab trainierten Modells verwendet werden sollen. Der Standardwert ist "false". Der Wert kann auch ein Pfad zu einer Konfigurationsdatei mit den Gewichtungen eines Modells aus dem Repository "MMSegmentation" sein.

Alle Modelltypen unterstützen das Argument "chip_size", bei dem es sich um die Bildschnipselgröße der Trainingsgebiete handelt. Die Bildschnipselgröße wird aus der .emd-Datei in dem Ordner extrahiert, der im Parameter Eingabe-Trainingsdaten angegeben ist.

Value Table
Lernrate
(optional)

Die Rate, mit der vorhandene Informationen während des gesamten Trainingsprozesses durch neu erworbene Informationen überschrieben werden. Ist kein Wert angegeben, wird die optimale Lernrate während des Trainingsprozesses aus der Lernkurve extrahiert.

Double
Backbone-Modell
(optional)

Gibt das vorkonfigurierte neuronale Netzwerk an, das als Architektur für das Training des neuen Modells verwendet werden soll. Diese Methode wird als Transfer Learning bezeichnet.

Darüber hinaus können unterstützte neuronale Faltungsnetzwerke aus den PyTorch-Bildmodellen (timm) mit "timm:" als Präfix angegeben werden, z. B. timm:resnet31, timm:inception_v4, timm:efficientnet_b3 usw.

  • DenseNet-121Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 121 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DenseNet-161Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 161 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DenseNet-169Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 169 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DenseNet-201Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 201 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • MobileNet-Version 2Dieses vorkonfigurierte Modell wird auf der Imagenet-Datenbank trainiert und enthält 54 Layer. Es ist auf Edgegeräte-Computing ausgerichtet, da es weniger Speicher benötigt.
  • ResNet -18Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 18 Layer enthält.
  • ResNet -34Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 34 Layer enthält. Dies ist die Standardeinstellung.
  • ResNet -50Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 50 Layer enthält.
  • ResNet -101Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 101 Layer enthält.
  • ResNet -152Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 152 Layer enthält.
  • VGG-11Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 11 Layer umfasst.
  • VGG-11 mit Batch-NormalisierungDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 11 Layer.
  • VGG-13Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 13 Layer umfasst.
  • VGG-13 mit Batch-NormalisierungDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 13 Layer.
  • VGG-16Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 16 Layer umfasst.
  • VGG-16 mit Batch-NormalisierungDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 16 Layer.
  • VGG-19Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 19 Layer umfasst.
  • VGG-19 mit Batch-NormalisierungDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 19 Layer.
  • DarkNet-53Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder und 53 Layer enthält.
  • Reid_v1Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset für das Objekt-Tracking trainiertes neuronales Faltungsnetzwerk.
  • Reid_v2Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset für das Objekt-Tracking trainiertes neuronales Faltungsnetzwerk.
String
Vortrainiertes Modell
(optional)

Ein vortrainiertes Modell, das zum Finetuning 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
Prozentsatz für Validierung
(optional)

Der Prozentsatz der Trainingsgebiete, die für die Überprüfung des Modells verwendet werden sollen. Der Standardwert ist 10.

Double
Beenden, wenn sich das Modell nicht mehr verbessert
(optional)

Gibt an, ob ein frühzeitiges Beenden implementiert wird.

  • Aktiviert: Frühzeitiges Beenden wird implementiert, und das Modelltraining wird beendet, wenn sich das Modell nicht mehr verbessert, und zwar unabhängig vom angegebenen Parameterwert Max. Epochen. Dies ist die Standardeinstellung.
  • Deaktiviert: Frühzeitiges Beenden wird nicht implementiert, und das Modelltraining wird fortgesetzt, bis der Parameterwert Max. Epochen erreicht wurde.
Boolean
Modell fixieren
(optional)

Gibt an, ob die Backbone-Layer im vorab trainierten Modell fixiert werden sollen, sodass die Gewichtungen und Verzerrungen wie ursprünglich vorgesehen beibehalten werden.

  • Aktiviert: Die Backbone-Layer werden fixiert, und die vordefinierten Gewichtungen und Verzerrungen werden im Parameter Backbone-Modell nicht geändert. Dies ist die Standardeinstellung.
  • Deaktiviert: Die Backbone-Layer werden nicht fixiert, und die Gewichtungen und Verzerrungen des Parameters Backbone-Modell können geändert werden, um sie an die Trainingsgebiete anzupassen. Die Verarbeitung dauert zwar länger, führt aber in der Regel zu besseren Ergebnissen.

Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabemodell

Die trainierte Ausgabe-Modelldatei.

File

TrainDeepLearningModel(in_folder, out_folder, {max_epochs}, {model_type}, {batch_size}, {arguments}, {learning_rate}, {backbone_model}, {pretrained_model}, {validation_percentage}, {stop_training}, {freeze})
NameErläuterungDatentyp
in_folder
[in_folder,...]

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.

Wenn die folgenden Bedingungen erfüllt sind, werden mehrere Eingabeordner unterstützt:

  • Das Metadatenformat muss "Klassifizierte Kacheln", "Beschriftende Kacheln", "Kacheln mit mehreren Beschriftungen", "PASCAL Visual Object Classes" oder "RCNN-Masken" sein.
  • Alle Trainingsdaten müssen im selben Metadatenformat vorliegen.
  • Alle Trainingsdaten müssen dieselbe Anzahl an Bändern aufweisen.
  • Alle Trainingsdaten müssen dieselbe Kachelgröße aufweisen.

Folder
out_folder

Der Speicherort des Ausgabeordners, in dem das trainierte Modell gespeichert wird.

Folder
max_epochs
(optional)

Die maximale Anzahl von Epochen, für die das Modell trainiert wird. Eine maximale Epoche von eins bedeutet, dass das Dataset einmal vorwärts und einmal rückwärts durch das neuronale Netz geleitet wird. Der Standardwert ist 20.

Long
model_type
(optional)

Gibt den Modelltyp an, der zum Trainieren des Deep-Learning-Modells verwendet wird.

  • SSDDie Architektur "Single Shot Detector (SSD)" wird zum Trainieren des Modells verwendet. SSD wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Pascal Visual Object Classes-Metadatenformat verwendet.
  • UNETDie Architektur "U-Net" wird zum Trainieren des Modells verwendet. U-Net wird für die Pixelklassifizierung verwendet.
  • FEATURE_CLASSIFIERDie Architektur "Feature Classifier" wird zum Trainieren des Modells verwendet. Dies wird für die Objekt- oder Bildklassifizierung verwendet.
  • PSPNETDie Architektur "Pyramid Scene Parsing Network (PSPNET)" wird zum Trainieren des Modells verwendet. PSPNET wird für die Pixelklassifizierung verwendet.
  • RETINANETDie Architektur "RetinaNet" wird zum Trainieren des Modells verwendet. RetinaNet wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Pascal Visual Object Classes-Metadatenformat verwendet.
  • MASKRCNNDie Architektur "MaskRCNN" wird zum Trainieren des Modells verwendet. MaskRCNN wird für die Objekterkennung eingesetzt. Dieser Ansatz wird für die Instanzsegmentierung verwendet, d. h. zur genauen Abgrenzung von Objekten in einem Bild. Dieser Modelltyp kann zur Erkennung von Gebäudegrundrissen verwendet werden. Er verwendet das MaskRCNN-Metadatenformat für die Trainingsdaten als Eingabe. Klassenwerte für Eingabe-Trainingsdaten müssen bei 1 beginnen. Dieser Modelltyp kann nur mit einer CUDA-aktivierten GPU trainiert werden.
  • YOLOV3Die Architektur "YOLOv3" wird zum Trainieren des Modells verwendet. Für die Objekterkennung wird YOLOv3 verwendet.
  • DEEPLABDie Architektur "DeepLabV3" wird zum Trainieren des Modells verwendet. DeepLab wird für die Pixelklassifizierung verwendet.
  • FASTERRCNNDie Architektur "FasterRCNN" wird zum Trainieren des Modells verwendet. FasterRCNN wird für die Objekterkennung eingesetzt.
  • BDCN_EDGEDETECTORDie Architektur "Bi-Directional Cascade Network" (BDCN) wird zum Trainieren des Modells verwendet. Der BDCN Edge Detector wird für der Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Verbesserung der Kantenerkennung für Objekte in unterschiedlichen Maßstäben.
  • HED_EDGEDETECTORDie Architektur "Holistically-Nested Edge Detection" (HED) wird zum Trainieren des Modells verwendet. Der HED Edge Detector wird für der Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Kanten- und Objektgrenzenerkennung.
  • MULTITASK_ROADEXTRACTORDie Architektur "Multi Task Road Extractor" wird zum Trainieren des Modells verwendet. Der Multi Task Road Extractor wird für die Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Extraktion von Straßennetzen aus Satellitenbildern.
  • CONNECTNETDie Architektur "ConnectNet" wird zum Trainieren des Modells verwendet. ConnectNet wird für die Pixelklassifizierung verwendet. Dieser Ansatz ist sinnvoll zur Extraktion von Straßennetzen aus Satellitenbildern.
  • PIX2PIXDie Architektur "Pix2Pix" wird zum Trainieren des Modells verwendet. Pix2Pix wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • CYCLEGANDie Architektur "CycleGAN" wird zum Trainieren des Modells verwendet. CycleGAN wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. Dies ist der einzige Ansatz, bei dem die zu trainierenden Bilder nicht überlappen müssen. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das CycleGAN-Metadatenformat verwendet.
  • SUPERRESOLUTIONDie Architektur "Super-Resolution" wird zum Trainieren des Modells verwendet. Super-Resolution wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem die Auflösung erhöht und die Bildqualität verbessert wird. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • CHANGEDETECTORDie Architektur "Change Detector" wird zum Trainieren des Modells verwendet. Change Detector wird für die Pixelklassifizierung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, bei dem unter Verwendung von zwei räumlich-zeitlichen Bildern ein klassifiziertes Raster der Änderung erstellt wird. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Klassifizierte Kacheln" verwendet.
  • IMAGECAPTIONERDie Architektur "Image Captioner" wird zum Trainieren des Modells verwendet. Image Captioner wird für die Bild-zu-Text-Übersetzung verwendet. Mit diesem Ansatz wird ein Modell erstellt, das Bildunterschriften für Bilder generiert.
  • SIAMMASKDie Architektur "Siam Mask" wird zum Trainieren des Modells verwendet. Siam Mask wird für die Objekterkennung in Videos verwendet. Das Modell wird mit Videobildern trainiert und erkennt die Klassen und umgebenden Rechtecke der Objekte in den einzelnen Bildern. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das MaskRCNN-Metadatenformat verwendet.
  • MMDETECTIONDie Architektur "MMDetection" wird zum Trainieren des Modells verwendet. MMDetection wird für die Objekterkennung eingesetzt. Unterstützte Metadatenformate sind PASCAL Visual Object Classes-Rechtecke und KITTI-Rechtecke.
  • MMSEGMENTATIONDie Architektur "MMSegmentation" wird zum Trainieren des Modells verwendet. MMDetection wird für die Pixelklassifizierung verwendet. Als Metadatenformat werden klassifizierte Kacheln unterstützt.
  • DEEPSORTDie Architektur "Deep Sort" wird zum Trainieren des Modells verwendet. Deep Sort wird für die Objekterkennung in Videos verwendet. Das Modell wird mit Videobildern trainiert und erkennt die Klassen und umgebenden Rechtecke der Objekte in den einzelnen Bildern. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Imagenet-Metadatenformat verwendet. Während Siam Mask bei der Nachverfolgung eines Objekts hilfreich ist, eignet sich Deep Sort für das Trainieren eines Modells zur Nachverfolgung mehrerer Objekte.
  • PIX2PIXHDDie Architektur "Pix2PixHD" wird zum Trainieren des Modells verwendet. Pix2PixHD wird für die Bild-zu-Bild-Übersetzung verwendet. Mit diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern eines Typs Bilder eines anderen Typs generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Export-Kacheln" verwendet.
  • MAXDEEPLABDie Architektur "MaX-DeepLab" wird zum Trainieren des Modells verwendet. "MaX-DeepLab" wird für die panoptische Segmentierung verwendet. Bei diesem Ansatz wird ein Modellobjekt erstellt, mit dem aus Bildern und Features Modellobjekte generiert werden. In den Eingabe-Trainingsdaten für diesen Modelltyp wird das Metadatenformat "Panoptische Segmentierung" verwendet.
  • DETREGDie Architektur "DETReg" wird zum Trainieren des Modells verwendet. DETReg wird für die Objekterkennung eingesetzt. In den Eingabe-Trainingsdaten für diesen Modelltyp wird "Pascal Visual Object Classes" verwendet. Dieser Modelltyp ist GPU-intensiv. Er erfordert eine dedizierte GPU mit mindestens 16 GB Speicher, damit er ordnungsgemäß ausgeführt wird.
  • PSETAEDie PSETAE-Architektur (Pixel-Set Encoders and Temporal Self-Attention) wird verwendet, um ein Modell für die Zeitserienklassifizierung zu trainieren. Die für diese Methode verwendeten vorläufigen Daten sind multidimensionale Daten. PSETAE wird für die Pixelklassifizierung verwendet.
String
batch_size
(optional)

Die Anzahl der Trainingstichproben, die für das Training gleichzeitig bearbeitet werden müssen.

Durch größere Batches kann die Leistung des Werkzeugs erhöht werden. Aber größere Batches belegen mehr Arbeitsspeicher. Wird die Fehlermeldung "Nicht genügend Arbeitsspeicher" angezeigt, verwenden Sie kleinere Batches.

Long
arguments
[arguments,...]
(optional)

Die Funktionsargumente werden in der Python-Raster-Funktionsklasse definiert. Hier geben Sie zusätzliche Deep-Learning-Parameter und Argumente für Experimente und Verfeinerungen wie den Konfidenzschwellenwert zur Anpassung der Empfindlichkeit an. Die Namen der Argumente werden durch Lesen des Python-Moduls aufgefüllt.

Wenn Sie SSD als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • grids: Die Anzahl der Gitternetze, in die das Bild für die Verarbeitung aufgeteilt wird. Das Festlegen des Arguments auf 4 bedeutet, dass das Bild in 4 x 4 bzw. 16 Gitterzellen aufgeteilt wird. Wenn kein Wert angegeben wird, wird der optimale Gitternetzwert auf der Grundlage der Eingabe-Bilddaten berechnet.
  • zooms: Die Anzahl der Zoomstufen, die jede Zelle hoch- oder herunterskaliert wird. Das Festlegen des Arguments auf 1 bedeutet, dass alle Gitterzellen die gleiche Größe oder Zoomstufe beibehalten. Eine Zoomstufe von 2 bedeutet, dass alle Gitterzellen zwei Mal so groß werden (um 100 Prozent vergrößert). Die Bereitstellung einer Liste von Zoomstufen bedeutet, dass alle Gitterzellen mit allen Zahlen in der Liste skaliert werden. Der Standardwert ist 1,0.
  • ratios: Die Liste der für die Ankerboxen zu verwendenden Seitenverhältnisse. Bei der Objekterkennung stellt eine Ankerbox die ideale Position, Form und Größe des vorhergesagten Objekts dar. Das Festlegen dieses Arguments auf [1,0,1,0], [1,0, 0,5] bedeutet, die Ankerbox ist ein Quadrat (1:1) oder ein Rechteck, bei dem die horizontale Seite halb so groß wie die vertikale Seite ist (1:0,5). Die Standardeinstellung ist [1,0, 1,0].
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und average_precision. Die Standardeinstellung ist valid_loss.

Wenn Sie ein Pixelklassifizierungsmodell wie PSPNET, UNET oder DEEPLAB als Wert für den Parameter model_type auswählen, wird der Parameter arguments mit folgenden Argumenten aufgefüllt:

  • USE_UNET: Der U-Net-Decoder wird zum Wiederherstellen von Daten verwendet, nachdem das Pyramiden-Pooling abgeschlossen ist. Die Standardeinstellung ist True. Dieses Argument gilt speziell für das PSPNET-Modell.
  • PYRAMID_SIZES: Die Anzahl und Größe der Faltungs-Layer, die auf die verschiedenen Unterregionen anzuwenden sind. Die Standardeinstellung ist [1,2,3,6]. Dieses Argument gilt speziell für das PSPNET-Modell.
  • MIXUP: Gibt an, ob Zu- und Abnahme des Mixups verwendet werden. Die Standardeinstellung ist False.
  • CLASS_BALANCING: Gibt an, ob der Kreuzentropie-Verlust umgekehrt proportional zur Pixelhäufigkeit pro Klasse ausgeglichen wird. Die Standardeinstellung ist False.
  • FOCAL_LOSS: Gibt an, ob Fokusverlust verwendet wird. Die Standardeinstellung ist False.
  • IGNORE_CLASSES: Enthält die Liste der Klassenwerte, bei denen das Modell keinen Verlust verzeichnen wird.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und accuracy. Die Standardeinstellung ist valid_loss.

Wenn Sie RETINANET als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • SCALES: Die Anzahl der Maßstabsebenen, die jede Zelle hoch- oder herunterskaliert wird. Die Standardeinstellung ist [1, 0,8, 0,63].
  • RATIOS: Das Seitenverhältnis der Ankerbox. Die Standardeinstellung ist [0,5,1,2].
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss und average_precision. Die Standardeinstellung ist valid_loss.

Wenn Sie MULTITASK_ROADEXTRACTOR oder CONNECTNET als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • gaussian_thresh: Legt den Gauß'schen Schwellenwert zur Festlegung der erforderlichen Straßenbreite fest. Der gültige Bereich liegt zwischen 0,0 und 1,0. Der Standardwert ist 0,76.
  • orient_bin_size: Legt die Abschnittsgröße für Ausrichtungswinkel fest. Die Standardeinstellung ist 20.
  • orient_theta: Legt die Breite der Ausrichtungsmaske fest. Der Standardwert ist 8.
  • mtl_model: Legt den Architekturtyp fest, der zum Erstellen des Modells verwendet wird. Gültige Auswahloptionen sind linknet oder hourglass für auf LinkNet bzw. auf Hourglass basierende neuronale Architekturen. Die Standardeinstellung ist hourglass.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, accuracy, miou und dice. Die Standardeinstellung ist valid_loss.

Wenn Sie IMAGECAPTIONER als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • decode_params: Ein Wörterbuch, das steuert, wie Image Captioner ausgeführt wird. Der Standardwert ist {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}.
  • chip_size: Legt die Bildgröße zum Trainieren des Modells fest. Bilder werden auf die angegebene Schnipselgröße zugeschnitten. Wenn die Bildgröße kleiner als die Schnipselgröße ist, wird die Bildgröße verwendet. Die Standardgröße beträgt 224 Pixel.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, accuracy, corpus_bleu und multi_label_fbeta. Die Standardeinstellung ist valid_loss.
Das Argument decode_params besteht aus den folgenden sechs Parametern:
  • embed_size: Legt die Einbettungsgröße fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • hidden_size: Legt die Größe für ausgeblendete Layer fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • attention_size: Legt die Größe für Attention-Zwischen-Layer fest. Der Standardwert ist 100 Layer im neuronalen Netzwerk.
  • teacher_forcing: Legt die Wahrscheinlichkeit für Teacher Forcing fest. Teacher Forcing ist eine Strategie für das Trainieren rekurrenter neuronaler Netzwerke. Dabei wird im Rahmen der Backpropagation statt der vorherigen Ausgabe die Modellausgabe aus einem vorherigen Zeitschritt als Eingabe verwendet. Der gültige Bereich liegt zwischen 0,0 und 1,0. Die Standardeinstellung ist 1.
  • dropout: Legt die Dropout-Wahrscheinlichkeit fest. Der gültige Bereich liegt zwischen 0,0 und 1,0. Die Standardeinstellung ist 0,1.
  • pretrained_emb: Legt das Flag für vortrainierte Einbettungen fest. Bei True wird schnelle Texteinbettung verwendet. Bei False wird die vortrainierte Texteinbettung nicht verwendet. Die Standardeinstellung ist "False".

Wenn Sie CHANGEDETECTOR als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • attention_type: Gibt den Modultyp an. Zur Auswahl stehen die Module PAM (Pyramid Attention Module) oder BAM (Basic Attention Module). Die Standardeinstellung ist PAM.
  • monitor: Gibt an, welcher Kennwert bei Kontrollpunkten und frühzeitigem Beenden überwacht werden soll. Verfügbare Kennwerte sind valid_loss, precision, recall und f1. Die Standardeinstellung ist valid_loss.

Wenn Sie MMDETECTION als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • model: Das Backbone-Modell, das zum Trainieren des Modells verwendet wird. Folgende Optionen sind verfügbar: atss, carafe, cascade_rcnn, cascade_rpn, dcn, detectors, double_heads, dynamic_rcnn, empirical_attention, fcos, foveabox, fsaf, ghm, hrnet, libra_rcnn, nas_fcos, pafpn, pisa, regnet, reppoints, res2net, sabl und vfnet. Die Standardeinstellung ist cascade_rcnn.
  • model_weight: Gibt an, ob die Gewichtungen des vorab trainierten Modells verwendet werden sollen. Die Standardeinstellung ist false. Der Wert kann auch ein Pfad zu einer Konfigurationsdatei mit den Gewichtungen eines Modells aus dem Repository "MMDetection" sein.

Wenn Sie MMSegmentation als model_type-Parameterwert wählen, wird der Parameter arguments mit folgenden Argumenten befüllt:

  • model: Das Backbone-Modell, das zum Trainieren des Modells verwendet wird. Die verfügbaren Optionen sind ann, apcnet, ccnet, cgnet, danet, deeplabv3, deeplabv3plus, dmnet, dnlnet, emanet, encnet, fastscnn, fcn, gcnet, hrnet, mobilenet_v2, mobilenet_v3, nonlocal_net, ocrnet, ocrnet_base, pointrend, psanet, pspnet, resnest, sem_fpn, unet und upernet. Die Standardeinstellung ist deeplabv3.
  • model_weight: Gibt an, ob die Gewichtungen des vorab trainierten Modells verwendet werden sollen. Die Standardeinstellung ist false. Der Wert kann auch ein Pfad zu einer Konfigurationsdatei mit den Gewichtungen eines Modells aus dem Repository "MMSegmentation" sein.

Alle Modelltypen unterstützen das Argument "chip_size", bei dem es sich um die Schnipselgröße der Kacheln in den Trainingsgebieten handelt. Die Bildschnipselgröße wird aus der .emd-Datei in dem Ordner extrahiert, der im Parameter in_folder angegeben ist.

Value Table
learning_rate
(optional)

Die Rate, mit der vorhandene Informationen während des gesamten Trainingsprozesses durch neu erworbene Informationen überschrieben werden. Ist kein Wert angegeben, wird die optimale Lernrate während des Trainingsprozesses aus der Lernkurve extrahiert.

Double
backbone_model
(optional)

Gibt das vorkonfigurierte neuronale Netzwerk an, das als Architektur für das Training des neuen Modells verwendet werden soll. Diese Methode wird als Transfer Learning bezeichnet.

  • DENSENET121Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 121 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DENSENET161Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 161 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DENSENET169Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 169 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • DENSENET201Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes dichtes Netzwerk, das mehr als 1 Million Bilder und 201 Layer enthält. Im Gegensatz zur RESNET-Architektur, die die Layer durch Summierung kombiniert, kombiniert DenseNet die Layer durch Verkettung.
  • MOBILENET_V2Dieses vorkonfigurierte Modell wird auf der Imagenet-Datenbank trainiert und enthält 54 Layer. Es ist auf Edgegeräte-Computing ausgerichtet, da es weniger Speicher benötigt.
  • RESNET18Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 18 Layer enthält.
  • RESNET34Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 34 Layer enthält. Dies ist die Standardeinstellung.
  • RESNET50Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 50 Layer enthält.
  • RESNET101Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 101 Layer enthält.
  • RESNET152Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes Residualnetzwerk, das mehr als 1 Million Bilder und 152 Layer enthält.
  • VGG11Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 11 Layer umfasst.
  • VGG11_BNDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 11 Layer.
  • VGG13Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 13 Layer umfasst.
  • VGG13_BNDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 13 Layer.
  • VGG16Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 16 Layer umfasst.
  • VGG16_BNDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 16 Layer.
  • VGG19Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder zur Klassifizierung von Bildern in 1.000 Objektkategorien enthält und 19 Layer umfasst.
  • VGG19_BNDieses vorkonfigurierte Modell basiert auf dem VGG-Netzwerk, jedoch mit Batch-Normalisierung, was bedeutet, dass jeder Layer im Netzwerk normalisiert wird. Es wurde auf dem Imagenet-Dataset trainiert und enthält 19 Layer.
  • DARKNET53Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset trainiertes neuronales Faltungsnetzwerk, das mehr als 1 Million Bilder und 53 Layer enthält.
  • REID_V1Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset für das Objekt-Tracking trainiertes neuronales Faltungsnetzwerk.
  • REID_V2Das vorkonfigurierte Modell ist ein auf dem Imagenet-Dataset für das Objekt-Tracking trainiertes neuronales Faltungsnetzwerk.

Darüber hinaus können unterstützte neuronale Faltungsnetzwerke aus den PyTorch-Bildmodellen (timm) mit "timm:" als Präfix angegeben werden, z. B. timm:resnet31, timm:inception_v4, timm:efficientnet_b3 usw.

String
pretrained_model
(optional)

Ein vortrainiertes Modell, das zum Finetuning 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
validation_percentage
(optional)

Der Prozentsatz der Trainingsgebiete, die für die Überprüfung des Modells verwendet werden sollen. Der Standardwert ist 10.

Double
stop_training
(optional)

Gibt an, ob ein frühzeitiges Beenden implementiert wird.

  • STOP_TRAININGFrühzeitiges Beenden wird implementiert, und das Modelltraining wird beendet, wenn sich das Modell nicht mehr verbessert, und zwar unabhängig vom angegebenen Parameterwert max_epochs. Dies ist die Standardeinstellung.
  • CONTINUE_TRAININGFrühzeitiges Beenden wird nicht implementiert, und das Modelltraining wird fortgesetzt, bis der Parameterwert max_epochs erreicht wurde.
Boolean
freeze
(optional)

Gibt an, ob die Backbone-Layer im vorab trainierten Modell fixiert werden sollen, sodass die Gewichtungen und Verzerrungen wie ursprünglich vorgesehen beibehalten werden.

  • FREEZE_MODELDie Backbone-Layer werden fixiert, und die vordefinierten Gewichtungen und Verzerrungen werden im Parameter backbone_model nicht geändert. Dies ist die Standardeinstellung.
  • UNFREEZE_MODELDie Backbone-Layer werden nicht fixiert, und die Gewichtungen und Verzerrungen des Parameters backbone_model können geändert werden, um sie an die Trainingsgebiete anzupassen. Die Verarbeitung dauert zwar länger, führt aber in der Regel zu besseren Ergebnissen.
Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_model_file

Die trainierte Ausgabe-Modelldatei.

File

Codebeispiel

TrainDeepLearningModel: Beispiel 1 (Python-Fenster)

In diesem Beispiel wird ein Baumklassifizierungsmodell mit dem U-Netz-Ansatz trainiert.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
# Execute 
TrainDeepLearningModel(r"C:\DeepLearning\TrainingData\Roads_FC", 
     r"C:\DeepLearning\Models\Fire", 40, "UNET", 16, "# #", None, 
     "RESNET34", None, 10, "STOP_TRAINING", "FREEZE_MODEL")
TrainDeepLearningModel: Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird ein Objekterkennungsmodell mit dem SSD-Ansatz trainiert.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
#Define input parameters
in_folder = "C:\\DeepLearning\\TrainingData\\Cars" 
out_folder = "C:\\Models\\Cars"
max_epochs = 100
model_type = "SSD"
batch_size = 2
arg = "grids '[4, 2, 1]';zooms '[0.7, 1.0, 1.3]';ratios '[[1, 1], [1, 0.5], [0.5, 1]]'"
learning_rate = 0.003
backbone_model = "RESNET34" 
pretrained_model = "C:\\Models\\Pretrained\\vehicles.emd"
validation_percent = 10
stop_training = "STOP_TRAINING"
freeze = "FREEZE_MODEL"


# Execute
TrainDeepLearningModel(in_folder, out_folder, max_epochs, model_type, 
     batch_size, arg, learning_rate, backbone_model, pretrained_model, 
     validation_percent, stop_training, freeze)

Lizenzinformationen

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

Verwandte Themen