Text mit Deep Learning transformieren (GeoAI)

Zusammenfassung

Führt ein trainiertes Sequenz-in-Sequenz-Modell für ein Textfeld in einer Feature-Class oder Tabelle aus und aktualisiert dieses mit einem neuen Feld mit dem konvertierten, transformierten oder übersetzten Text.

Weitere Informationen zur Funktionsweise der Texttransformation

Verwendung

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

  • Dieses Werkzeug erfordert eine Modelldefinitionsdatei, die Informationen zum trainierten 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 müssen lokal gespeichert werden.

  • Dieses Werkzeug kann in einer CPU oder einem Grafikprozessor (GPU) ausgeführt werden. Da Deep Learning rechenintensiv ist, wird die Verwendung einer GPU empfohlen. Um dieses Werkzeug mithilfe einer GPU auszuführen, legen Sie die Umgebung für den Prozessortyp auf "GPU" fest. Bei mehr als einer GPU geben Sie stattdessen die GPU-ID-Umgebung an.

  • 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 Text, der transformiert werden soll.

Feature Layer; Table View
Textfeld

Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den Text enthält, der transformiert werden soll.

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 lokal gespeichertes Deep-Learning-Modellpaket (.dlpk) verwendet werden.

File
Ergebnisfeld
(optional)

Der Name des Feldes für den transformierten Text in der Ausgabe-Feature-Class oder -Tabelle. Der Standardname des Feldes lautet Result.

String
Modellargumente
(optional)

Zusätzliche Argumente wie beispielsweise ein Konfidenzschwellenwert, die zum Anpassen der Empfindlichkeit des Modells verwendet werden sollen.

Die Namen der Argumente werden vom Werkzeug gefüllt.

Value Table
Batch-Größe
(optional)

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

Durch Vergrößern der Batch-Größe kann die Performance des Werkzeugs verbessert werden; mit zunehmender Batch-Größe erhöht sich jedoch auch der Speicherbedarf. Wenn ein Fehler vom Typ "Nicht genügend Arbeitsspeicher" auftritt, verwenden Sie eine kleinere Batch-Größe.

Double
Mindestens erforderliche Sequenzlänge
(optional)

Die Anzahl von Zeichen, die für die Ausgabetextzeichenfolge mindestens erforderlich sind. Der Standardwert ist 20.

Double
Maximal zulässige Sequenzlänge
(optional)

Die Anzahl von Zeichen, die für die Ausgabetextzeichenfolge maximal zulässig sind. Der Standardwert ist 50.

Double

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Tabelle

Die Point-, Line- oder Polygon-Ausgabe-Feature-Class oder Ausgabetabelle mit dem transformierten Text, der aus den Eingabedaten abgeleitet wurde.

Table View; Feature Layer

arcpy.geoai.TransformTextUsingDeepLearning(in_table, text_field, in_model_definition_file, {result_field}, {model_arguments}, {batch_size}, {minimum_sequence_length}, {maximum_sequence_length})
NameErläuterungDatentyp
in_table

Die Point-, Line- oder Polygon-Eingabe-Feature-Class oder Eingabetabelle mit Text, der transformiert werden soll.

Feature Layer; Table View
text_field

Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den Text enthält, der transformiert werden soll.

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 lokal gespeichertes Deep-Learning-Modellpaket (.dlpk) verwendet werden.

File
result_field
(optional)

Der Name des Feldes für den transformierten Text in der Ausgabe-Feature-Class oder -Tabelle. Der Standardname des Feldes lautet Result.

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

Zusätzliche Argumente wie beispielsweise ein Konfidenzschwellenwert, die zum Anpassen der Empfindlichkeit des Modells verwendet werden sollen.

Die Namen der Argumente werden vom Werkzeug gefüllt.

Value Table
batch_size
(optional)

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

Durch Vergrößern der Batch-Größe kann die Performance des Werkzeugs verbessert werden; mit zunehmender Batch-Größe erhöht sich jedoch auch der Speicherbedarf. Wenn ein Fehler vom Typ "Nicht genügend Arbeitsspeicher" auftritt, verwenden Sie eine kleinere Batch-Größe.

Double
minimum_sequence_length
(optional)

Die Anzahl von Zeichen, die für die Ausgabetextzeichenfolge mindestens erforderlich sind. Der Standardwert ist 20.

Double
maximum_sequence_length
(optional)

Die Anzahl von Zeichen, die für die Ausgabetextzeichenfolge maximal zulässig sind. Der Standardwert ist 50.

Double

Abgeleitete Ausgabe

NameErläuterungDatentyp
updated_table

Die Point-, Line- oder Polygon-Ausgabe-Feature-Class oder Ausgabetabelle mit dem transformierten Text, der aus den Eingabedaten abgeleitet wurde.

Table View; Feature Layer

Codebeispiel

TransformTextUsingDeepLearning (Python-Fenster)

Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion TransformTextUsingDeepLearning verwenden.

# Name: TransformText.py
# Description: Translate text from English to German
#
# Requirements: ArcGIS Pro Advanced license

# Import system modules
import arcpy
import os

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

# Set local variables
in_table = os.path.join("translationdata")
pretrained_model_path_emd = "c:\\translatedata\\Seq2Seq.emd"

# Run Transform Text Using Deep Learning
arcpy.geoai.TransformTextUsingDeepLearning(in_table, "EnglishText", pretrained_model_path_emd)

Umgebungen