- Überblick
- Document Understanding-Prozess
- Schnellstart-Tutorials
- Framework-Komponenten
- Übersicht zur Dokumentklassifizierung
- „Klassifizierer konfigurieren“-Assistent von Classify Document Scope
- Schlüsselwortbasierte Classifier (Keyword Based Classifier)
- Intelligenter Schlüsselwortklassifizierer
- FlexiCapture Classifier
- Machine Learning Classifier
- Dokumentklassifizierung – verwandte Aktivitäten
- Datenverbrauch
- ML-Pakete
- Pipelines
- Dokumentmanager
- OCR-Dienste
- Document Understanding – in der Automation Suite bereitgestellt
- Document Understanding – im eigenständigen AI Center bereitgestellt
- Deep Learning
- Lizenzierung
- Referenzen
- UiPath.Abbyy.Activities
- UiPath.AbbyyEmbedded.Activities
- UiPath.DocumentUnderstanding.ML.Activities
- UiPath.DocumentUnderstanding.OCR.LocalServer.Activities
- UiPath.IntelligentOCR.Aktivitäten (UiPath.IntelligentOCR.Activities)
- UiPath.OCR.Activities
- UiPath.OCR.Contracts
- UiPath.DocumentProcessing.Contracts
- UiPath.Omnipage.Activities
- UiPath.PDF.Aktivitäten (UiPath.PDF.Activities)
Trainingspipelines
Minimale Dataset-Größe
Dataset Creation Failed
(Dataset-Erstellung fehlgeschlagen).
Training auf GPU vs. CPU
- Bei größeren Datasets müssen Sie mit GPU trainieren. Darüber hinaus ist die Verwendung eines GPUs (AI Robot Pro) für das Training mindestens 10-mal schneller als die Verwendung einer CPU (AI Robot).
- Training auf CPU wird nur für Datasets mit einer Größe von bis zu 5000 Seiten für ML-Pakete ab Version 21.10.x und bis zu 1000 Seiten für andere Versionen von ML-Paketen unterstützt.
- CPU-Training war vor Version 2021.10 auf 500 Seiten begrenzt. Seit 2021.10 waren es 5000 Seiten und ab 2022.4 sind es maximal 1000 Seiten.
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 ML-Paket DocumentUnderstanding durchgeführt werden, was auf dem Dataset geschieht, der als Eingabe bereitgestellt wird.
Das erneute Training kann mit out-of-the-box ML-Paketen wie Invoices, Receipts, Purchase Orders, Utility Bills, InvoicesIndia, InvoicesAustralia usw. erfolgen – im Prinzip alle anderen ML-Datenextraktionspakete 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 out-of-the-box 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 Trainingsdatensätze 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. Es wird dringend empfohlen, immer Nebenversion 0 (Null) zu verwenden. Weitere Informationen finden Sie im Abschnitt Auswählen der Nebenversion weiter unten.
- Wählen Sie im Feld Eingabe-Dataset wählen ein 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:
model.epochs
, die die Anzahl der Epochen für die Trainingspipeline anpasst (Standardwert: 100).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.
- 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.
Es gibt jedoch Situationen, in denen das Training auf einer anderen Nebenversion als 0 sinnvoll ist. Das ist typischerweise der Fall, wenn ein Partner mehrere Kunden aus derselben Branche bedienen muss, UiPath aber kein vortrainiertes Modell hat, das für diese Branche, Geographie oder den Dokumenttyp optimiert ist.
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.