Text mit Deep Learning klassifizieren (GeoAI)

Zusammenfassung

Führt ein trainiertes Textklassifizierungsmodell für ein Textfeld in einer Feature-Class oder Tabelle aus und aktualisiert die einzelnen Datensätze mit einer zugewiesenen Klassen- oder Kategoriebeschriftung, wobei jede Klasse einen Konfidenzwert aufweist.

Weitere Informationen zur Funktionsweise der Textklassifizierung

Verwendung

  • Für dieses Werkzeug müssen Deep-Learning-Frameworks installiert sein. Informationen zum Einrichten des Computers für Deep-Learning-Frameworks in ArcGIS Pro finden Sie unter Installieren von Deep-Learning-Frameworks for ArcGIS.

  • Dieses Werkzeug erfordert eine Modelldefinitionsdatei, die Informationen zum Modell enthält. Das Modell kann mit dem Werkzeug Textklassifizierungsmodell trainieren trainiert werden. Als Parameterwert für die Eingabe-Modelldefinitionsdatei kann eine JSON-Datei mit der Esri Modelldefinition (.emd) oder ein Deep-Learning-Modellpaket (.dlpk) verwendet werden. Die Modelldateien können lokal gespeichert oder in ArcGIS Living Atlas of the World gehostet werden.

  • Dieses Modell unterstützt Modelle, die mit Transformer-basierten Backbones und dem Mistral-Backbone trainiert wurden. Informationen zur Installation des Mistral-Backbone finden Sie unter ArcGIS Mistral Backbone.

  • Dieses Werkzeug unterstützt die Verwendung von Sprachmodellen von Drittanbietern, die mithilfe des Modellerweiterbarkeits-Features erstellt wurden. Das Modellerweiterbarkeits-Feature ermöglicht Textklassifizierungs-Tasks mithilfe einer Datei für ein benutzerdefiniertes Deep-Learning-Modell (.dlpk), die nicht mithilfe des Werkzeugs Textklassifizierung trainieren erstellt wurde. Weitere Informationen zum Erstellen einer Datei für ein benutzerdefiniertes Deep-Learning-Modell (.dlpk) finden Sie unter Verwenden von Sprachmodellen von Drittanbietern mit ArcGIS.

  • Dieses Werkzeug kann in einer CPU oder einem Grafikprozessor ausgeführt werden. Deep Learning ist jedoch rechenintensiv, sodass ein Grafikprozessor empfohlen wird. 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.

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

Die Point-, Line- oder Polygon-Eingabe-Feature-Class oder Eingabetabelle mit dem Text, der klassifiziert und beschriftet werden soll.

Feature Layer; Table View
Textfeld

Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den zu klassifizierenden Text enthält.

Field
Eingabe-Modelldefinitionsdatei

Das trainierte Modell, das für die Klassifizierung verwendet werden soll. Als Modelldefinitionsdatei kann eine JSON-Datei mit der Esri Modelldefinition (.emd) oder ein Deep-Learning-Modellpaket (.dlpk) verwendet werden, das lokal gespeichert oder in ArcGIS Living Atlas (.dlpk_remote) gehostet wird.

Wenn Sie eine .dlpk-Datei verwenden möchten, die mit dem Mistral-Backbone trainiert wurde, müssen Sie dieses vor Verwendung des Modells installieren. Informationen zur Installation des Mistral-Backbone finden Sie unter ArcGIS Mistral Backbone.

Bei der .dlpk-Datei kann es sich auch um ein Sprachmodell eines Drittanbieters handeln.

Vorsicht:

Die .dlpk-Datei für ein Sprachmodell eines Drittanbieters kann schädlichen Code enthalten. Verwenden Sie diese Modelle daher nur, wenn Sie deren Quelle als vertrauenswürdig einstufen.

File
Klassenbeschriftungsfeld
(optional)

Der Name des Feldes für die vom Modell zugewiesene Klassen- oder Kategoriebeschriftung. Der Standardname des Feldes lautet ClassLabel.

String
Modellargumente
(optional)

Zusätzliche Argumente, die vom Modell beim Ausführen von Inferenzen verwendet werden. Als Modellargumente werden sequence_length und confidence_threshold unterstützt, um die Ausgabe des Modells anzupassen. Das confidence_threshold-Modellargument gilt nur für Textklassifizierungen mit mehreren Beschriftungen.

Hinweis:

Bei Verwendung eines Sprachmodells eines Drittanbieters werden die Modellargumente entsprechend den in der .dlpk-Datei angegebenen Parametern aktualisiert. Weitere Informationen zum Definieren von Modellargumenten finden Sie im Abschnitt "getParameterInfo" unter Verwenden von Sprachmodellen von Drittanbietern mit ArcGIS.

Value Table
Erläuterung für jede Vorhersage erhalten
(optional)

Gibt an, ob SHAP-Erklärungen generiert werden. Wie lange es dauert, eine Erklärung zu generieren, hängt von der Länge der Eingabe ab.

  • Aktiviert: Für jede Zeile in der Ausgabetabelle wird eine SHAP-Erklärung generiert.
  • Deaktiviert: Es wird keine SHAP-Erklärung generiert. Dies ist die Standardeinstellung.
Boolean
Batch-Größe
(optional)

Die Anzahl der Trainingsgebiete, die gleichzeitig verarbeitet werden sollen. Der Standardwert ist 4.

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.

Double

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Tabelle

Die Point-, Line- oder Polygon-Ausgabe-Feature-Class oder -Ausgabetabelle mit dem klassifizierten und beschrifteten Text, die aus den Eingabedaten in Verbindung mit dem Konfidenzwert für die einzelnen Klassen abgeleitet wurde.

Table View; Feature Layer

arcpy.geoai.ClassifyTextUsingDeepLearning(in_table, text_field, in_model_definition_file, {class_label_field}, {model_arguments}, {explain}, {batch_size})
NameErläuterungDatentyp
in_table

Die Point-, Line- oder Polygon-Eingabe-Feature-Class oder Eingabetabelle mit dem Text, der klassifiziert und beschriftet werden soll.

Feature Layer; Table View
text_field

Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den zu klassifizierenden Text enthält.

Field
in_model_definition_file

Das trainierte Modell, das für die Klassifizierung verwendet werden soll. Als Modelldefinitionsdatei kann eine JSON-Datei mit der Esri Modelldefinition (.emd) oder ein Deep-Learning-Modellpaket (.dlpk) verwendet werden, das lokal gespeichert oder in ArcGIS Living Atlas (.dlpk_remote) gehostet wird.

Wenn Sie eine .dlpk-Datei verwenden möchten, die mit dem Mistral-Backbone trainiert wurde, müssen Sie dieses vor Verwendung des Modells installieren. Informationen zur Installation des Mistral-Backbone finden Sie unter ArcGIS Mistral Backbone.

Bei der .dlpk-Datei kann es sich auch um ein Sprachmodell eines Drittanbieters handeln.

Vorsicht:

Die .dlpk-Datei für ein Sprachmodell eines Drittanbieters kann schädlichen Code enthalten. Verwenden Sie diese Modelle daher nur, wenn Sie deren Quelle als vertrauenswürdig einstufen.

File
class_label_field
(optional)

Der Name des Feldes für die vom Modell zugewiesene Klassen- oder Kategoriebeschriftung. Der Standardname des Feldes lautet ClassLabel.

String
model_arguments
[model_arguments,...]
(optional)

Zusätzliche Argumente, die vom Modell beim Ausführen von Inferenzen verwendet werden. Als Modellargumente werden sequence_length und confidence_threshold unterstützt, um die Ausgabe des Modells anzupassen. Das confidence_threshold-Modellargument gilt nur für Textklassifizierungen mit mehreren Beschriftungen.

Hinweis:

Bei Verwendung eines Sprachmodells eines Drittanbieters werden die Modellargumente entsprechend den in der .dlpk-Datei angegebenen Parametern aktualisiert. Weitere Informationen zum Definieren von Modellargumenten finden Sie im Abschnitt "getParameterInfo" unter Verwenden von Sprachmodellen von Drittanbietern mit ArcGIS.

Value Table
explain
(optional)

Gibt an, ob SHAP-Erklärungen generiert werden. Wie lange es dauert, eine Erklärung zu generieren, hängt von der Länge der Eingabe ab.

  • ENABLE_SHAPFür jede Zeile in der Ausgabetabelle wird eine SHAP-Erklärung generiert.
  • DISABLE_SHAPEs wird keine SHAP-Erklärung generiert. Dies ist die Standardeinstellung.
Boolean
batch_size
(optional)

Die Anzahl der Trainingsgebiete, die gleichzeitig verarbeitet werden sollen. Der Standardwert ist 4.

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.

Double

Abgeleitete Ausgabe

NameErläuterungDatentyp
updated_table

Die Point-, Line- oder Polygon-Ausgabe-Feature-Class oder -Ausgabetabelle mit dem klassifizierten und beschrifteten Text, die aus den Eingabedaten in Verbindung mit dem Konfidenzwert für die einzelnen Klassen abgeleitet wurde.

Table View; Feature Layer

Codebeispiel

ClassifyTextUsingDeepLearning (eigenständiges Skript)

Im folgenden Beispiel wird veranschaulicht, wie die ClassifyTextUsingDeepLearning-Funktion verwendet wird.

# Name: ClassifyText.py
# Description: Classify text into multiple classes
#
# Requirements: ArcGIS Pro Advanced license

# Import system modules
import arcpy

arcpy.env.workspace = "C:/textanalysisexamples/data"

# Set local variables
in_table = "TextClassifierData"
pretrained_model_path_emd = "c:\\classifydata\\TextClassifier.emd"

# Run Classify Text Using Deep Learning
arcpy.geoai.ClassifyTextUsingDeepLearning(
    in_table, "Address", pretrained_model_path_emd)

Umgebungen

Lizenzinformationen

  • Basic: Nein
  • Standard: Nein
  • Advanced: Ja

Verwandte Themen