Beschriftung | Erläuterung | Datentyp |
Eingabetabelle | Eine Feature-Class oder Tabelle, die ein Textfeld mit dem Eingabetext für das Modell und ein Beschriftungsfeld mit dem transformierten Zieltext enthält. | Feature Layer; Table View |
Textfeld | Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den vom Modell zu transformierenden Eingabetext enthält. | Field |
Beschriftungsfeld | Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den transformierten Zieltext für das Training des Modells enthält. | Field |
Ausgabemodell | Der Speicherort des Ausgabeordners, in dem das trainierte Modell gespeichert wird. | Folder |
Datei des vortrainierten Modells (optional) | Ein vortrainiertes Modell, das zum Finetuning des neuen Modells verwendet wird. Als Eingabe kann eine Esri Modelldefinitionsdatei (.emd) oder eine Deep-Learning-Paketdatei (.dlpk) verwendet werden. Ein vortrainiertes Modell, mit dem ein ähnlicher Task ausgeführt wird, kann optimiert 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 |
Max. Epochen (optional) | Die maximale Anzahl von Epochen, für die das Modell trainiert wird. Die Einstellung "Max. Epochen" auf 1 bedeutet, dass das Dataset einmal durch das neuronale Netz geleitet wird. Der Standardwert ist 5. | Long |
Modell-Backbone (optional) | Gibt das vorkonfigurierte neuronale Netzwerk an, das als Architektur für das Training des neuen Modells verwendet werden soll.
| String |
Batch-Größe (optional) | Die Anzahl der Trainingsgebiete, die gleichzeitig verarbeitet werden sollen. Der Standardwert ist 2. 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 |
Modellargumente (optional) | Zusätzliche Argumente, die für die Initialisierung des Modells verwendet werden sollen. Das unterstützte Modellargument ist sequence_length. Es wird zum Festlegen der maximalen Sequenzlänge der Trainingsdaten, die beim Training des Modells berücksichtigt werden sollen, verwendet. | Value Table |
Lernrate (optional) | Die Schrittgröße, die angibt, in welchem Umfang die Modellgewichtungen beim Trainingsprozess angepasst werden. Wenn kein Wert angegeben ist, wird automatisch eine optimale Lernrate abgeleitet. | Double |
Validierungsprozentsatz (optional) | Der Prozentsatz der Trainingsgebiete, die für die Überprüfung des Modells verwendet werden sollen. Der Standardwert ist 10 für Transformer-basierte Modell-Backbones und 50 für den Mistral-Backbone. | Double |
Beenden, wenn sich das Modell nicht mehr verbessert (optional) | Gibt an, ob das Modelltraining beendet wird, wenn sich das Modell nicht mehr verbessert, oder fortgesetzt wird, bis der Parameterwert Max. Epochen erreicht wurde.
| Boolean |
Modell-Backbone trainierbar machen (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.
| Boolean |
HTML-Tags entfernen (optional) | Gibt an, ob HTML-Tags aus dem Eingabetext entfernt werden.
| Boolean |
URLs entfernen (optional) | Gibt an, ob URLs aus dem Eingabetext entfernt werden.
| Boolean |
Prompt (optional) | Eine spezifische Eingabe oder Anweisung, die an ein LLM (Large Language Model) gegeben wird, um eine erwartete Ausgabe zu erzeugen. Der Standardwert ist Eingabetext aus dem Textfeld in den transformierten Text im Beschriftungsfeld umwandeln. | String |
Zusammenfassung
Trainiert ein Texttransformationsmodell, mit dem Text transformiert, übersetzt oder zusammengefasst werden soll.
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 Pro finden Sie unter Installieren von Deep-Learning-Frameworks for ArcGIS.
Dieses Werkzeug kann auch zur Optimierung eines vorhandenen trainierten Modells verwendet werden.
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.
Als Eingabe für das Werkzeug dient eine Tabelle oder Feature-Class mit Trainingsdaten, wobei ein Textfeld den Eingabetext und ein Beschriftungsfeld den transformierten Text enthält.
Dieses Werkzeug verwendet Transformer-basierte Backbones für das Training von Texttransformationsmodellen und unterstützt auch das In-Context-Learning mit Prompts unter Verwendung des Mistral-LLM. Informationen zur Installation des Mistral-Backbone finden Sie unter ArcGIS Mistral Backbone.
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
arcpy.geoai.TrainTextTransformationModel(in_table, text_field, label_field, out_model, {pretrained_model_file}, {max_epochs}, {model_backbone}, {batch_size}, {model_arguments}, {learning_rate}, {validation_percentage}, {stop_training}, {make_trainable}, {remove_html_tags}, {remove_urls}, {prompt})
Name | Erläuterung | Datentyp |
in_table | Eine Feature-Class oder Tabelle, die ein Textfeld mit dem Eingabetext für das Modell und ein Beschriftungsfeld mit dem transformierten Zieltext enthält. | Feature Layer; Table View |
text_field | Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den vom Modell zu transformierenden Eingabetext enthält. | Field |
label_field | Ein Textfeld in der Eingabe-Feature-Class oder Eingabetabelle, das den transformierten Zieltext für das Training des Modells enthält. | Field |
out_model | Der Speicherort des Ausgabeordners, in dem das trainierte Modell gespeichert wird. | Folder |
pretrained_model_file (optional) | Ein vortrainiertes Modell, das zum Finetuning des neuen Modells verwendet wird. Als Eingabe kann eine Esri Modelldefinitionsdatei (.emd) oder eine Deep-Learning-Paketdatei (.dlpk) verwendet werden. Ein vortrainiertes Modell, mit dem ein ähnlicher Task ausgeführt wird, kann optimiert 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 |
max_epochs (optional) | Die maximale Anzahl von Epochen, für die das Modell trainiert wird. Die Einstellung "Max. Epochen" auf 1 bedeutet, dass das Dataset einmal durch das neuronale Netz geleitet wird. Der Standardwert ist 5. | Long |
model_backbone (optional) | Gibt das vorkonfigurierte neuronale Netzwerk an, das als Architektur für das Training des neuen Modells verwendet werden soll.
| String |
batch_size (optional) | Die Anzahl der Trainingsgebiete, die gleichzeitig verarbeitet werden sollen. Der Standardwert ist 2. 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 |
model_arguments [model_arguments,...] (optional) | Zusätzliche Argumente, die für die Initialisierung des Modells verwendet werden sollen. Das unterstützte Modellargument ist sequence_length. Es wird zum Festlegen der maximalen Sequenzlänge der Trainingsdaten, die beim Training des Modells berücksichtigt werden sollen, verwendet. | Value Table |
learning_rate (optional) | Die Schrittgröße, die angibt, in welchem Umfang die Modellgewichtungen beim Trainingsprozess angepasst werden. Wenn kein Wert angegeben ist, wird automatisch eine optimale Lernrate abgeleitet. | Double |
validation_percentage (optional) | Der Prozentsatz der Trainingsgebiete, die für die Überprüfung des Modells verwendet werden sollen. Der Standardwert ist 10 für Transformer-basierte Modell-Backbones und 50 für den Mistral-Backbone. | Double |
stop_training (optional) | Gibt an, ob das Modelltraining beendet wird, wenn sich das Modell nicht mehr verbessert, oder fortgesetzt, wird bis der Parameterwert max_epochs erreicht wurde.
| Boolean |
make_trainable (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.
| Boolean |
remove_html_tags (optional) | Gibt an, ob HTML-Tags aus dem Eingabetext entfernt werden.
| Boolean |
remove_urls (optional) | Gibt an, ob URLs aus dem Eingabetext entfernt werden.
| Boolean |
prompt (optional) | Eine spezifische Eingabe oder Anweisung, die an ein LLM (Large Language Model) gegeben wird, um eine erwartete Ausgabe zu erzeugen. Der Standardwert ist Eingabetext aus dem Textfeld in den transformierten Text im Beschriftungsfeld umwandeln. | String |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion TrainTextTransformationModel verwenden.
# Name: TrainTextTransformation.py
# Description: Train a sequence-to-sequence model to translate text from English to German.
#
# Requirements: ArcGIS Pro Advanced license
# Import system modules
import arcpy
import os
# Set local variables
in_table = "training_data.csv"
out_folder = "c\\texttransformer"
# Run Train Text Transformation Model
arcpy.geoai.TrainTextTransformationModel(in_table, out_folder, max_epochs=2,
text_field="input", label_field="target", batch_size=16)
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Nein
- Advanced: Ja