- Überblick
- Erste Schritte
- Aktivitäten
- UiPath.DocumentProcessing.Contracts
- UiPath.DocumentUnderstanding.Activities
- UiPath.DocumentUnderstanding.ML.Activities
- UiPath.DocumentUnderstanding.OCR.LocalServer.Activities
- UiPath.IntelligentOCR.Aktivitäten (UiPath.IntelligentOCR.Activities)
- UiPath.OCR.Activities
- UiPath.OCR.Contracts
- UiPath.Omnipage.Activities
- UiPath.PDF.Aktivitäten (UiPath.PDF.Activities)
- Insights-Dashboards
- Document Understanding-Prozess
- Schnellstart-Tutorials
- Framework-Komponenten
- Überblick
- Document Understanding-Aktivitäten
- Übersicht zur Dokumentklassifizierung
- „Klassifizierer konfigurieren“-Assistent von Classify Document Scope
- Intelligenter Schlüsselwortklassifizierer
- Schlüsselwortbasierte Classifier (Keyword Based Classifier)
- Machine Learning Classifier
- Generativer Klassifizierer
- Dokumentklassifizierung – verwandte Aktivitäten
- Datenverbrauch
- API-Aufrufe
- ML-Pakete
- Überblick
- Document Understanding – ML-Paket
- DocumentClassifier – ML-Paket
- ML-Pakete mit OCR-Funktionen
- 1040 – ML-Paket
- 1040 Anlage C – ML-Paket
- 1040 Anlage D – ML-Paket
- 1040 Anlage E – ML-Paket
- 1040x – ML-Paket
- 3949a – ML-Paket
- 4506T – ML-Paket
- 709 – ML-Paket
- 941x – ML-Paket
- 9465 – ML-Paket
- ACORD131 – ML-Paket
- ACORD140 – ML-Paket
- ACORD25 – ML-Paket
- Bank Statements – ML-Paket
- BillsOfLading – ML-Paket
- Certificate of Incorporation – ML-Paket
- Certificates of Origin – ML-Paket
- Checks – ML-Paket
- Children Product Certificate – ML-Paket
- CMS1500 – ML-Paket
- EU Declaration of Conformity – ML-Paket
- Financial Statements – ML-Paket
- FM1003 – ML-Paket
- I9 – ML-Paket
- ID Cards – ML-Paket
- Invoices – ML-Paket
- InvoicesAustralia – ML-Paket
- InvoicesChina – ML-Paket
- Rechnungen Hebräisch – ML-Paket
- InvoicesIndia – ML-Paket
- InvoicesJapan – ML-Paket
- Invoices Shipping – ML-Paket
- Packing Lists – ML-Paket
- Gehaltsabrechnungen (Pay slips) – ML-Paket
- Passports – ML-Paket
- Purchase Orders – ML-Paket
- Receipts – ML-Paket
- RemittanceAdvices – ML-Paket
- UB04 – ML-Paket
- Utility Bills – ML-Paket
- Vehicle Titles – ML-Paket
- W2 – ML-Paket
- W9 – ML-Paket
- Andere out-of-the-box ML-Pakete
- Öffentliche Endpunkte
- Einschränkungen für den Datenverkehr
- OCR-Konfiguration
- Pipelines
- OCR-Dienste
- Unterstützte Sprachen
- Deep Learning
- Lizenzierung
Document Understanding-Benutzerhandbuch.
Trainingspipelines
Minimale Dataset-Größe
Dataset Creation Failed
(Dataset-Erstellung fehlgeschlagen).
Training auf GPU vs. CPU
Infrastruktur | <2021.10.x | 2021.10.x | >2021.10.x |
---|---|---|---|
CPU | 500 Seiten | 5000 Seiten | 1000 Seiten |
GPU | 18.000 Seiten | 18.000 Seiten | 18.000 Seiten |
Wenn beim Training großer Datasets fehlgeschlagene Pipelines auftreten, empfehlen wir ein Upgrade auf ML-Pakete mit Version 24.4 oder neuer. Die neuesten Versionen bieten Stabilitätsverbesserungen, die diese Probleme erheblich reduzieren könnten.
Weitere Informationen zur Dataset-Struktur finden Sie im Abschnitt Dataset-Format.
Es gibt zwei Möglichkeiten, ein ML-Modell zu trainieren:
- Training eines Modells von Grund auf
- erneutes Trainieren eines out-of-the-Box Modells
Das Training eines Modells von Grund auf kann mit dem DocumentUnderstanding-ML-Paket durchgeführt werden, was auf dem Dataset geschieht, das als Eingabe bereitgestellt wird.
Das erneute Training kann mit vorgefertigten ML-Paketen wie „Invoices“, „Receipts“, „Purchase Orders“, „Utility Bills“, „Invoices India“, „Invoices Australia“ usw. erfolgen – im Prinzip alle anderen ML-Pakete zur Datenextraktion mit Ausnahme von DocumentUnderstanding. Das Training mit einem dieser Pakete hat ein Basismodell als zusätzliche Eingabe. Wir bezeichnen dies auch als erneutes Trainieren, da Sie nicht von vorne beginnen, sondern von einem Basismodell ausgehen. Dieser Ansatz nutzt eine Technik namens „Transfer Learning“, bei der das Modell die Informationen verwendet, die in einem anderen, bereits vorhandenen Modell codiert sind. Das Modell verfügt über einige der standardmäßigen Kenntnisse, aber es lernt auch aus den neuen Daten. Mit zunehmender Größe Ihres Trainings-Datasets kommt es jedoch immer weniger auf das vortrainierte Basismodell an. Dies ist hauptsächlich für kleine bis mittelgroße Trainings-Datasets relevant (bis zu 500–800 Seiten).
Konfigurieren Sie die Trainingspipeline wie folgt:
- Wählen Sie im Feld „Pipelinetyp“ die Option „Trainingsausführung“ aus.
- Wählen Sie im Feld „Paket wählen“ das Paket aus, das Sie basierend auf dem DocumentUnderstanding-ML-Paket erstellt haben.
- Wählen Sie im Feld „Hauptversion des Pakets wählen“ eine Hauptversion für Ihr Paket aus.
- Wählen Sie im Feld „Nebenversion des Pakets wählen“ eine Nebenversion für Ihr Paket aus. Weitere Informationen finden Sie im Abschnitt Auswählen der Nebenversion weiter unten.
- Wählen Sie im Feld „Eingabedatensatz wählen“ einen Dataset aus, wie im Video unten auf dieser Seite gezeigt. Informationen zum Erstellen hochwertiger Trainings-Datasets finden Sie in diesem Tutorial.
- Geben Sie im Abschnitt „Parameter eingeben“ von Ihrer Pipeline definierte und verwendete Umgebungsvariablen ein, falls vorhanden. Für die meisten Anwendungsfälle muss kein Parameter angegeben werden. Das Modell verwendet erweiterte Techniken, um eine performante Konfiguration zu finden. Hier sind jedoch einige Umgebungsvariablen, die Sie verwenden können:
- Mit
auto_retraining
können Sie die Schleife für automatisches erneutes Training abschließen. Wenn die Variable auf True festgelegt ist, muss das Eingabe-Dataset der Ordner export sein, der der Beschriftungssitzung zugeordnet ist, in der die Daten mit Tags versehen werden. Wenn die Variable auf False festgelegt bleibt, muss das Eingabe-Dataset dem Dataset-Format entsprechen. model.epochs
, die die Anzahl der Epochen für die Trainingspipeline anpasst (Standardwert: 100).Optional
.Hinweis: Bei größeren Datasets mit mehr als 5000 Seiten können Sie zunächst eine vollständige Pipeline-Ausführung mit der Standardanzahl von Epochen durchführen. Auf diese Weise können Sie die Genauigkeit des Modells auswerten. Danach können Sie die Anzahl der Epochen auf etwa 30–40 reduzieren. Mit diesem Ansatz können Sie die Genauigkeit der Ergebnisse vergleichen und bestimmen, ob die Verringerung der Epochen zu einer ähnlich hohen Genauigkeit führt.Bei kleineren Datasets, insbesondere solchen mit weniger als 5000 Seiten, können Sie die Standardanzahl von Epochen beibehalten.
- Für ML-Pakete ab v23.4 verwendet das Training für Datasets, die kleiner als 400 Seiten sind, einen Ansatz namens Frozen Backbone, um das Training zu beschleunigen und die Leistung zu verbessern. Sie haben jedoch die Möglichkeit, dieses Verhalten zu überschreiben und das vollständige Training auch für kleinere Datasets zu erzwingen oder umgekehrt, das Frozen Backbone-Training sogar für größere Datasets (bis zu 3.000 Seiten) zu erzwingen. Sie können die folgenden Umgebungsvariablen mit der Bedingung verwenden, sie bei Verwendung zu kombinieren. Verwenden Sie entweder die erste und die zweite oder die erste und die dritte Variable zusammen.
Optional
.model.override_finetune_freeze_backbone_mode=True
– Schließen Sie diese Umgebungsvariable ein, um das Standardverhalten zu überschreiben. Dies ist in den beiden folgenden Situationen erforderlich.model.finetune_freeze_backbone_mode=True
– Fügen Sie diese Umgebungsvariable ein, um zu erzwingen, dass das Modell auch für größere Datasets Frozen Backbone verwendet.model.finetune_freeze_backbone_mode=False
– Fügen Sie diese Umgebungsvariable ein, um zu erzwingen, dass das Modell auch für größere Datasets das vollständige Training verwendet.
- Wählen Sie aus, ob die Pipeline mit der GPU oder CPU trainiert werden soll. Der Schieberegler „GPU aktivieren“ ist standardmäßig deaktiviert. In diesem Fall wird die Pipeline mit der CPU trainiert.
- Wählen Sie eine der Optionen aus, wann die Pipeline ausgeführt werden soll: „Jetzt ausführen“, „Zeitbasiert“ oder „Wiederkehrend“. Falls Sie die Variable
auto_retraining
verwenden, wählen Sie „Wiederkehrend“ aus. - Nachdem Sie alle Felder konfiguriert haben, klicken Sie auf „Erstellen“. Die Pipeline wird erstellt.
Hier ist ein Beispiel für das Erstellen einer neuen Trainingspipeline mit einem Dataset, das zuvor in das AI Center exportiert wurde:
In den meisten Situationen sollte die Nebenversion 0 gewählt werden. Dies liegt daran, dass die Leistung Ihres Modells umso besser ist, je größer und vielfältiger Ihr Trainings-Dataset ist. Dieses Prinzip entspricht dem Ziel der aktuellen ML-Technologie, große, hochwertige und repräsentative Trainings-Sets zu verwenden. Wenn Sie also mehr Daten für das Training eines Modells sammeln, sollten Sie diese Daten demselben Dataset hinzufügen, um die Leistung des Modells weiter zu verbessern.
There are situations, however, where training on a minor version other than 0 makes sense. This is typically the case when a partner needs to service multiple customers in the same industry, but UiPath® doesn't have a pre-trained model optimized for that industry, geography, or document type.
In einem solchen Fall könnte der Partner ein vortrainiertes Modell mithilfe einer Vielzahl von Dokumentenbeispielen aus dieser Branche entwickeln (nicht aus einer einzigen Quelle, sondern aus vielen Quellen, um eine bessere Verallgemeinerung zu ermöglichen). Dieses Modell wird als Basismodell verwendet, um bestimmte Kundenmodelle zu trainieren, die auf Version 0 des ML-Pakets trainiert werden. Die Folgeversionen, wie Version 1, werden verwendet, um entweder das vortrainierte Modell zu verfeinern oder kundenspezifische Modelle zu erstellen.
Um gute Ergebnisse zu erzielen, sollte das vortrainierte Modell jedoch unverzerrt sein und auf einem sehr vielfältigen Trainings-Set basieren. Wenn das Basismodell für einen bestimmten Kunden optimiert ist, funktioniert es möglicherweise nicht gut für andere Kunden. In einem solchen Fall liefert die Verwendung der Nullversion als Basismodell bessere Ergebnisse.