Skip To Content

Das Modell optimieren

Sie können das Modell "Prithvi – Burn Scars Segmentation" an Ihren geographischen Bereich, Ihre Bilddaten oder die relevanten Features anpassen. Für die Optimierung eines Modells sind weniger Trainingsdaten, Rechenressourcen und Zeit erforderlich als für das Training eines neuen Modells.

Eine Optimierung des Modells wird empfohlen, wenn Sie mit den in ArcGIS vortrainierten Deep-Learning-Modellen keine zufriedenstellenden Ergebnisse erzielen. Dies kann der Fall sein, wenn Ihr Interessenbereich außerhalb der für die Modelle geeigneten Geographien liegt oder wenn sich die Eigenschaften Ihrer Bilddaten wie Auflösung, Maßstab und saisonale Schwankungen unterscheiden.

Sie können das Werkzeug Trainingsdaten für Deep Learning exportieren verwenden, um Trainingsdaten vorzubereiten. Danach können Sie dieses Modell mithilfe des Werkzeugs Deep-Learning-Modell trainieren in ArcGIS Pro für Ihre Daten optimieren. Führen Sie die folgenden Schritte aus, um das Modell zu optimieren.

Trainingsdaten vorbereiten

Dieses Modell wird mit einem 6-Band-Komposit des Typs Harmonized Landsat 8 (HLSL30) oder Harmonized Sentinel 2 (HLSS30) und Beschriftungen für Brandschäden trainiert. Verwenden Sie das Werkzeug "Trainingsdaten für Deep Learning exportieren", um Trainingsdaten für die Optimierung des Modells vorzubereiten.

  1. Navigieren Sie zu Werkzeuge auf der Registerkarte Analyse.
    Symbol "Werkzeuge"
  2. Klicken Sie im Bereich Geoverarbeitung auf die Registerkarte Toolboxes, wählen Sie Image Analyst Tools aus, und navigieren Sie im Toolset Deep Learning zum Werkzeug Trainingsdaten für Deep Learning exportieren.
    Werkzeug "Trainingsdaten für Deep Learning exportieren"
  3. Legen Sie die Variablen auf der Registerkarte Parameter wie folgt fest:
    1. Eingabe-Raster: Wählen Sie 6-Band-Bilddaten aus. Weitere Details zum Eingabe-Raster finden Sie unter Empfohlene Bilddatenkonfiguration.
    2. Ausgabeordner: Ein beliebiges Verzeichnis Ihrer Wahl auf Ihrem Computer.
    3. Eingabe-Feature-Class oder klassifiziertes Eingabe-Raster oder Eingabetabelle: Wählen Sie die beschriftete Feature-Class oder das klassifizierte Raster aus, mit denen Brandschäden dargestellt werden. Bei einer Feature-Class muss es ein Textfeld mit dem Namen ClassName enthalten, das den Namen enthält, sowie ein weiteres Feld mit dem Namen ClassValue.
    4. Klassenwertefeld: Wenn im vorangegangenen Schritt eine Feature-Class verwendet wurde, fügen Sie das Feld ClassValue hinzu, das den Klassenwert referenziert, der innerhalb der genannten Feature-Class dem Brandschaden zugewiesen ist.
    5. Bildformat: TIFF-Format
    6. Kachelgröße X: 224
    7. Kachelgröße Y: 224
    8. Stride X: 0
    9. Stride Y: 0
    10. Metadatenformat: Klassifizierte Kacheln
      Parameter des Werkzeugs "Trainingsdaten für Deep Learning exportieren"
  4. Legen Sie die Variablen auf der Registerkarte Umgebungen fest.
    1. Verarbeitungsausdehnung: Wählen Sie nach Bedarf Aktuelle Anzeigeausdehnung oder eine andere Option aus dem Dropdown-Menü aus.
    2. Zellengröße: Legen Sie den Wert auf die gewünschte Zellengröße fest.
      Parameter des Werkzeugs "Trainingsdaten für Deep Learning exportieren"
  5. Klicken Sie auf Ausführen. Nach der Verarbeitung werden die exportierten Trainingsdaten im angegebenen Verzeichnis gespeichert.

Das Modell "Prithvi – Burn Scars Segmentation" optimieren

Führen Sie die folgenden Schritte aus, um das Modell mithilfe des Lernmoduls ArcGIS API for Python zu optimieren:

  1. Öffnen Sie die Python-Eingabeaufforderung in der Umgebung aus Deep-Learning-Abhängigkeiten, navigieren Sie zum gewünschten Verzeichnis und geben Sie jupyter-notebook ein.
    Python-Eingabeaufforderung
  2. Klicken Sie im Browser auf Neu und wählen Sie Python 3 (ipykernel) aus, um ein Notebook zu erstellen.
    jupyter notebook
  3. Verwenden Sie zum Optimieren des Modells die folgenden Funktionen:
    1. arcgis.learn-Modul importieren.
    2. prepare_data: Erstellen Sie ein Datenobjekt aus dem mit dem Werkzeug Trainingsdaten für Deep Learning exportieren exportierten Trainingsgebiet oder aus Trainingsgebieten in den unterstützten Dataset-Formaten.

      1. path: Geben Sie den Pfad zu den exportierten Trainingsdaten aus dem vorherigen Schritt an.
      2. batch_size: Legen Sie je nach Speicherkapazität Ihrer Grafikkarte die Anzahl der in den einzelnen Schritten der Modellinferenz zu verarbeitenden Bildkacheln fest.

    3. Initialisieren Sie ein MMSegmentation-Modell und weisen Sie ihm einen variablen Namen zu, beispielsweise model.

      1. data: Geben Sie das mithilfe der Funktion prepare_data erstellte Datenobjekt an.
      2. model: Geben Sie als Modellnamen prithivi100m_crop_classification an.

    4. fit: Trainieren Sie das Modell für die angegebene Anzahl an Epochen und verwenden Sie dabei die automatisch generierte optimale Lernrate mithilfe der Methode fit.
    5. save: Speichern Sie das trainierte Modell als Deep-Learning-Paketdatei (.dlpk) mithilfe der Methode save. Das Deep-Learning-Paketdateiformat ist das Standardformat, in dem auf der ArcGIS-Plattform Deep-Learning-Modelle bereitgestellt werden. Es wird standardmäßig im Unterordner Modelle im Trainingsdatenordner gespeichert.
    6. per_class_metrics: Die Berechnung erfolgt je Klasse mit Precision, Recall und F1-Maß für das Validierungs-Set mithilfe der Methode "per_class_metrics".
      Modell mithilfe von ArcGIS API for Python trainieren
  4. Jetzt können Sie das gespeicherte Modell verwenden, um für Ihre Bilddaten eine Inferenzierung auszuführen.