Richten Sie in ABBYY FlexiCapture ein Skript zur Dokumentklassifizierung ein, um Klassifikatoren zu kombinieren, die Klassifizierung zu kaskadieren und Klassen anhand des Konfidenzwerts zuzuweisen.
Ein ABBYY FlexiCapture-Klassifikator verarbeitet eingereichte Dokumente und bestimmt ihre Klasse. So können Sie eine Dokumentdefinition auswählen, die für die Feldextraktion verwendet wird.Jeder Klassifikator entspricht einem bestimmten Klassifikationstraining.Wenn Sie mehrere Klassifikatoren für ein einzelnes Batch verwenden möchten, müssen Sie ein Klassifizierungsskript einrichten. Das kann nützlich sein, wenn Dokumente zusätzlich klassifiziert werden müssen. In diesem Fall wird zunächst der erste Klassifikator verwendet, um die Dokumente ihrer Klasse zuzuordnen. Anschließend wird je nach Klassifikationsergebnis ein zusätzlicher Klassifikator aus dem Skript ausgewählt. So können Dokumente beispielsweise zunächst in „Rechnungen“ und „Verträge“ klassifiziert werden; anschließend können die Rechnungen weiter nach Firmenname klassifiziert werden.
Dieses Skript kann nur für ein bereits vorhandenes Klassifikationstraining eingerichtet werden und nicht beim Erstellen eines neuen Batch.
So richten Sie ein Klassifizierungsskript ein:
Öffnen Sie Project → Project Properties…
Wechseln Sie im Fenster „Project Properties“ zur Registerkarte Recognition.
Öffnen Sie den Editor für das Klassifizierungsskript, indem Sie rechts neben Use script im Abschnitt Classification auf Set… klicken.
Wählen Sie im Dialogfeld einen geeigneten Klassifikator aus, indem Sie auf Add… klicken und ein Klassifizierungs-Batch aus der Liste auswählen.
Nun können Sie den Alias Name eines Klassifikators ändern. Dadurch müssen Sie ein Skript nicht neu schreiben, wenn der Name eines Klassifikators während der Verarbeitung geändert wurde. Das Skript verweist auf den in der Spalte Alias Name angegebenen Namen.
Öffnen Sie das Fenster des Skripteditors, indem Sie auf Edit Script… klicken.
Klassifikations‑Konfidenzwert. Im Gegensatz zur Arbeit mit automatischen Klassifikatoren muss dieser Parameter bei Verwendung des Skripts manuell in den Seiteneigenschaften festgelegt werden.
Beispielskript, das Dokumenten die Klasse Unknown zuweist, deren Klassifikations‑Konfidenzwert unter dem angegebenen Wert liegt
Das folgende Skript kann verwendet werden, wenn Ihr Szenario nicht erfordert, dass Dokumenten mit einem niedrigen Konfidenzwert eine Klasse zugewiesen wird (auch wenn für sie bereits eine Klasse festgelegt wurde). Solche Dokumente sollten von einem Operator manuell klassifiziert werden.Wichtig! Damit das Skript funktioniert, sollte zuvor eine neue Klasse erstellt werden — zum Beispiel „Unknown“. Anschließend sollte sie im Dialogfeld Class Mapping… mit der Dokumentdefinition verknüpft werden. Weitere Informationen finden Sie unter Zuordnen von Klassen zu Dokumentdefinitions-Abschnitten.
{ //FCTools.ShowMessage( c.Name + " -- " + c.Confidence.ToString() ); // zeichnet den Klassifikations‑Konfidenzwert im Ereignisprotokoll auf Page.Comment = Page.Comment + c.Name + "-" + c.Confidence.ToString() + "; "; // zeichnet den Klassifikations‑Konfidenzwert in den Seitenkommentaren auf
}
if (classVars.Count>0)
{ if (classVars[0].Confidence<80) Page.IsResultClassConfident=false; // Konfidenzschwellenwert, unterhalb dessen ein Dokument als unsicher klassifiziert gilt else Page.IsResultClassConfident=true;
if (classVars[0].Confidence<20) Page.ResultClassName="Unknown"; // Konfidenzschwellenwert, unterhalb dessen einem Dokument die Klasse "Unknown" zugewiesen wird if (classVars.Count>1) {
int classesToShow = Math.Min(classVars.Count, 3); for(int i=0; i<classesToShow; i++)
Hinweis: Die Konfidenzschwellenwerte in diesem Skript dienen nur Demonstrationszwecken und können vom Benutzer abhängig von einem bestimmten Workflow geändert werden.