Die Themen „KI“, maschinelles Lernen und Deep Learning sind in aller Munde, und in den Medien erscheinen regelmäßig Artikel darüber. Was viele nicht wissen ist, dass Kofax Transformation Modules (KTM) „unter der Haube“ auch Mechanismen des maschinellen Lernens nutzt. KTM ist ein System zur automatischen Klassifikation von Dokumenten und der dazugehörigen Extraktion von Datenfeldern (siehe dazu auch: Dokumentenklassifizierung mit Kofax Transformation Modules ).
KTM hat schon immer Werkzeuge aus dem Bereich des maschinellen Lernens an Bord, die alleine oder auch zusammen mit der regelbasierten Freiformerkennung eingesetzt werden können. Diese auf neuronalen Netzen basierenden Methoden sollen im Folgenden kurz vorgestellt werden.
Ein KTM-Projekt besteht – vereinfacht ausgedrückt – aus den folgenden Phasen:
- Projektvorbereitung: Dokumentarten, Datenfelder, Massentreiber
- Projektdurchführung: Klassifikations- und Extraktionsdesign
- Produktion: Erfassung, Klassifikation, Extraktion, manuelle Nachkorrektur/Validierung
Vor der Extraktion erfolgt die Klassifikation der Dokumentart, da verschiedene Dokumentarten normalerweise unterschiedliche Extraktionsfeldern besitzen. Sobald die Klassifikation erfolgreich durchgeführt wurde, kann die dokumentartspezifische Feldextraktion gestartet werden.
KTM stellt sowohl für die Projektvorbereitung als auch für die Projektdurchführung und die Produktionsphase Werkzeuge aus dem Bereich des maschinellen Lernens zur Verfügung, um das System anzulernen und die Qualität der Ergebnisse sukzessive zu verbessern.
Durch Training erkennen lernende Systeme den Kontext und speichern ihn für zukünftige Anwendungen. KTM z.B. merkt sich beim Extraktionstraining nicht die absolute Position eines Feldes, sondern speichert die Umgebung in der sich das Feld befindet. Das können nahe stehende Wörter (und deren Abstände zum Feld), die Position zu anderen Feldern, aber auch Linien oder ähnliches ein. Dieser nun neu gelernte Kontext ist dann bei der Verarbeitung des nächsten Dokuments direkt verfügbar, und der Feldwert kann dann bei einem ähnlichen Beleg – hoffentlich – direkt extrahiert werden. „Hoffentlich“ wurde eingefügt, da solche Systeme nicht deterministisch sind und manche Belege auch mehrfach angelernt werden müssen.
Der KTM-„Werkzeugkasten“ für das maschinelle Lernen besteht aus den folgenden Elementen:
- Clustering Tool: Basisinformation über Beleggut, was sind die Massentreiber?
- Administratives Anlernen mit Beispielen der Massentreiber: Bestimmen der Dokumentart
- Administratives Anlernen mit Beispielen der Massentreiber: Extraktion der Felddaten
- Produktionszyklus: System lernt durch manuelle Vergabe der Dokumentart
- Produktionszyklus: System lernt durch manuelle Felderfassung/-korrektur
Das Clustering-Tool
Zu Beginn eines Erkennungsprojekts sollte zunächst geklärt werden, welche Dokumente den meisten „Gewinn“ versprechen. Welche Dokumentarten lohnen sich mengenmäßig für die Erkennung – die Massentreiber – und welche sollten zunächst nicht betrachtet werden?
Zum Lieferumfang von KTM gehört ein Werkzeug (Clustering-Tool), das unsortierte Stapel von Dokumenten untersucht und sie in Teilstapel mit ähnlichen Kennzeichen aufteilt. Dieses Sortierung kann sowohl nach rein grafischen als auch nach inhaltlichen Kriterien erfolgen. Nach Einsatz dieses Werkzeugs hat man meist einen sehr guten Eindruck, welches die Massentreiber eines Projekts sind, mit denen man sich zunächst beschäftigen sollte:
In obigem Beispiel sieht man, dass man sich zunächst auf die Bearbeitung der erzeugten Teilstapel 1, 5 und 4 konzentrieren sollte. Teilstapel 4 enthält 36 Dokumente des Typs „CAR Parts Co-Delivery Note“.
Administratives Anlernen der Dokumentarten
Dazu benutzt man die vom Clustering-Tool herausgearbeiteten Dokumentartstapel der Massentreiber. Innerhalb der KTM-Entwicklungsumgebung legt man manuell die Dokumentarten an oder lässt sich diese automatisch aus den Teilstapeln erstellen. Je Dokumentart weist ein Administrator dem System eine Anzahl an Beispieldokumenten zum Lernen zu. Die Anzahl ist sicherlich projektabhängig, aber in der Praxis hat sich ein Wert von etwa 20 Dokumenten bewährt. Das Lernen der Dokumentarten kann über das Layout und/oder den Textinhalt des Dokuments erfolgen.
Der Lernerfolg lässt sich sofort anhand der nicht trainierten Beispiele der Teilstapel überprüfen.
In praktischen Projekten vertraue ich dem Klassifikationsergebnis, das durch Lernen erzielt wurde, wenn ein bestimmter Konfidenzlevel erreicht wurde (z.B. 80%). Bei niedrigeren Werten werden dann noch zusätzliche dokumentartspezifische Regeln zur Bestimmung der Dokumentart herangezogen.
Administratives Anlernen der Feldextraktion
Nach dem Anlernen der Dokumentarten kann im nächsten Schritt das Extraktionstraining der dokumentartspezifischen Datenfelder erfolgen. Ähnlich wie beim Anlernen der Dokumentarten nimmt man wieder eine gewisse Anzahl an Lerndokumenten je Dokumentart und „zeigt“ dem System mit der Maus die Stellen, an denen Daten zu extrahieren sind. KTM merkt sich dabei nicht die absoluten Positionen, sondern speichert sich Merkmale (Grafiken, Wörter, Linien etc.) in der Nähe der Extraktionsposition.
Der Lernerfolg lässt sich auch wieder sofort anhand der nicht trainierten Beispiele der Teilstapel überprüfen.
Online-Lernen im Produktionszyklus
Nachdem ein vortrainiertes System produktiv gesetzt wurde, bietet KTM die Möglichkeit, während der täglichen Verarbeitung die Klassifikation und Extraktion weiter zu schärfen. Dazu zählt einerseits eine Optimierung bei den bereits in der Vorbereitung antrainierten Massentreibern, anderseits aber auch das grundsätzliche Antrainieren/Optimieren der bisher vernachlässigten sonstigen Dokumentarten.
KTM stellt Dokumente, bei denen die Klassifikation unsicher oder Felder unsicher/leer waren für eine manuelle Überprüfung/Ergänzung im sogenannten Validierungsmodul zur Verfügung. Dort kann manuell korrigiert werden und man kann – wenn gewünscht – das Dokument danach zum Online-Lernen markieren:
Danach geht das Originaldokument in die weitere Verarbeitung und eine Kopie wird an den KTM-Lernmechanismus gesendet. Je nach Konfiguration des KTM-Systems lernt das System die Änderungen direkt und diese stehen beim nächsten Scanstapel zur Verfügung oder ein Administrator muss das neue Lerndokument zuerst prüfen und freigeben.
Die folgende Darstellung zeigt den Ablauf der KTM-Verarbeitung und die Einbindung des Online-Learning:
Das direkte Online-Learning – ohne Kontrolle durch einen Administrator – birgt allerdings das Risiko, dass das System falsch lernt, da ja die Person am Validierungsarbeitsplatz ein Dokument direkt frei gibt. Nun kann man neuronale Netze nicht mehr – wie Programme in der klassischen Entwicklung – debuggen, um den Fehler zu finden, sondern muss andere Wege finden, um Korrekturen vorzunehmen.
KTM bietet dem Systemadministrator dafür eine Sicht auf alle Lerndokumente je Dokumentart und auch die Möglichkeit, Dokumente wieder aus der Lernmenge zu entfernen bzw. umzukonfigurieren. Trotzdem sollte man den Aufwand für eine solche Korrektur nicht unterschätzen und die Freigabe von neuen Lerndokumenten durch einen Administrator bzw. eine Fachkraft trotz des Mehraufwands vorsehen.
Weitere Beiträge
von Jürgen Voss
Dein Job bei codecentric?
Jobs
Agile Developer und Consultant (w/d/m)
Alle Standorte
Gemeinsam bessere Projekte umsetzen.
Wir helfen deinem Unternehmen.
Du stehst vor einer großen IT-Herausforderung? Wir sorgen für eine maßgeschneiderte Unterstützung. Informiere dich jetzt.
Hilf uns, noch besser zu werden.
Wir sind immer auf der Suche nach neuen Talenten. Auch für dich ist die passende Stelle dabei.
Blog-Autor*in
Jürgen Voss
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.
Du hast noch Fragen zu diesem Thema? Dann sprich mich einfach an.