Künstliche Intelligenz

OCR vs. HTR oder "Was ist eigentlich KI?"

Felix Dietrich
Vor 3 Jahren

Bis heute ist das menschliche Gehirn die wohl komplexeste Rechenstruktur im bekannten Universum. Mit bis zu 1011 Neuronen, enthält es mehr elektrisch erregbare Zellen als das Gehirn eines Blauwals. Und mit bis zu 1015 synaptischen Verbindungen ist es den größten maschinellen Lernmodellen in Bezug auf die lernbaren Parameter immer noch überlegen. Aber die Computer holen immer schneller auf. 1997 waren die Menschen schockiert, als sie sahen, wie der Schachweltmeister Garry Kasparov von IBMs Supercomputer Deep Blue besiegt wurde. Aber während viele glaubten, dass das Schlagen von Menschen im Schach eine Form von "wahrer" Intelligenz erfordern würde, waren die Leute schnell dabei, Deep Blue als das zu bezeichnen, was es wirklich war: Ein effizienter Weg, um baumartige Datenstrukturen zu durchsuchen. Es stellte sich heraus, dass alles, was es brauchte, um Menschen zu besiegen, die Fähigkeit war, sich alle möglichen Züge beider Spieler anzusehen und dann den besten auszuwählen. Während dieser Baum mit jedem Zug exponentiell wächst, kann der Mensch nicht mehr mithalten, sobald ein Computer 12 oder 14 Züge in einem vernünftigen Zeitrahmen vorausberechnen kann.

Historische Wettkämpfe: Menschen vs. KI

Ein Spiel, das weithin als wirklich jenseits der Fähigkeiten eines gewöhnlichen Computers angesehen wurde, war das Brettspiel Go. Während die Regeln viel einfacher als die von Schach erscheinen mögen, hat Go tatsächlich eine Spielbaumkomplexität, die mehr als zweihundert Größenordnungen größer ist. Folglich hatten selbst wesentlich leistungsfähigere Computer als Deep Blue keine Chance, diese Aufgabe zu lösen. Doch 19 Jahre nach Kasparows schicksalhaftem Match staunten die Menschen erneut nicht schlecht, als der Google-Computer AlphaGo 2016 den amtierenden Go-Champion Lee Sedol besiegte. Dieser unglaubliche Erfolg kam im Zuge einer wahren Revolution in der Art und Weise, wie wir künstliche Intelligenz sehen und verstehen. Eine Art und Weise, die dem Innenleben des menschlichen Gehirns viel ähnlicher ist. Diese Technologie ermöglichte es Computern, den Menschen in vielen bis dato unvorstellbaren Bereichen einzuholen - einer davon ist die bildbasierte Texterkennung. Der technologische Schritt zwischen Optische Zeichenerkennung (OCR) und Erkennung von handgeschriebenem Text (HTR) entpuppt sich als ebenso tiefgreifend wie die zwischen Deep Blue und AlphaGo.

OCR (Optical Character Recognition)

Während es für das menschliche Auge praktisch keinen Unterschied macht, ist maschinengeschriebener Text wie der rechts abgebildete für einen Computer völlig unleserlich. Der Grund dafür ist, dass er nicht aus Zeichen, sondern aus Pixeln in einem Bild besteht. Auf der anderen Seite ist die Umwandlung von Zeichen in Pixel eine triviale Aufgabe. Alles, was es braucht, ist eine Zuordnung jedes Zeichens zu einer Sammlung von Pixeln, die es in einer bestimmten Schriftart darstellen. Das ist gut für alle Anwendungen, bei denen ein Mensch den Text einfach nur lesen möchte, wie z. B. die Anzeige auf einem Bildschirm oder der Druck auf einem Blatt Papier. Aber es gibt auch Anwendungen, bei denen man ein solches Bild wieder in tatsächlichen, digitalisierten Text umwandeln möchte. Das erleichtert nicht nur die Speicherung, sondern ermöglicht auch die schnelle Bearbeitung von Abschnitten oder sogar die Suche nach Wörtern. Das Problem ist, dass die Umwandlung von Pixeln in Zeichen kein exakter, geradliniger Prozess mehr ist. Es gibt unzählige Bildkomprimierungstechniken, die alle möglichen ungünstigen Effekte auf Pixelebene erzeugen können. Hinzu kommt, dass man auch gescannte oder sogar fotografierte Dokumente digitalisieren möchte, was zu Verschiebungen oder Schmutz und Flecken führen kann. Am Ende ist das Beste, was wir tun können, eine Annäherung.

Glücklicherweise erfordern diese Annäherungen nicht viel Rechenleistung oder gar ausgeklügelte Algorithmen. Mustervergleiche mit Matrizen wie der links abgebildeten haben bereits in den 1970er Jahren zu einer extrem guten Zeichenerkennung geführt. Während dieser triviale Musterabgleich einen gewissen statistischen Spielraum bei der Interpretation der Zeichen erfordert, gibt es auch mathematisch strengere Algorithmen. Zum Beispiel könnte man versuchen, alle Linien und geschlossenen Schleifen in einen Graphen zu verwandeln. Das Problem kann dann umformuliert werden als Identifizierung isomorpher Untergraphen. Moderne OCR-Algorithmen haben zwar immer noch keine perfekte Genauigkeit erreicht, aber sie sind einfach, schnell und genau genug für die meisten Schriften, um in einer Vielzahl von Geräten eingesetzt werden zu können - von Echtzeit-Handlaserscannern über Smartphones bis hin zu Kopiergeräten.

HTR (Handwritten Text Recognition)

Während das Problem der OCR für maschinellen Text in den meisten Anwendungen praktisch gelöst ist, weist die menschliche Handschrift seit langem eine nahezu unendliche Vielfalt an Schriftarten und Stilen auf. Diese korrekt zu erkennen, übersteigt die Möglichkeiten klassischer Pattern-Matching-Algorithmen bei weitem, weshalb die Erkennung handschriftlicher Texte nach wie vor an der Spitze der Wissenschaft steht. Heutzutage stellt alle paar Monate eine Forschungsgruppe oder ein Unternehmen einen neuen, verbesserten Algorithmus vor. Aber das war nicht immer so. Zu Beginn des 21. Jahrhunderts galt diese Aufgabe noch als praktisch unmöglich. Die besten Forschungsgruppen der Welt konnten nicht mit etwas auch nur annähernd Brauchbarem aufwarten. Was hat sich also geändert? Die kurze Antwort ist: künstliche neuronale Netze (ANNs). Die gleiche Technologie, die es Computern ermöglicht hat, den Weltmeister im Go zu besiegen, ermöglicht es uns nun, die menschliche Handschrift in Angriff zu nehmen. Dieser Ansatz unterscheidet sich grundlegend von klassischen Algorithmen in dem Sinne, dass das Erkennungsmodell nicht mehr von Hand programmiert wird, sondern automatisch aus einer Menge von Beispielen gelernt wird. Die Architektur hinter ANNs gibt es schon lange, aber erst die Verbesserungen in der Parallelisierung des Rechnens, der Netzwerkstrukturen und der Trainingsalgorithmen - und vor allem die Verfügbarkeit von Trainingsdaten - haben dazu geführt, dass sie auch außerhalb von akademischen Übungen tatsächlich nützlich werden. 

Einer der heute am häufigsten verwendeten Netzwerktypen zur Bilderkennung ist das sogenannte Faltungsneuronales Netzwerk oder convnet.

Exemplarischer Aufbau eines Faltungsnetzes

Die Feinheiten dieser Netze variieren erheblich, aber die grundlegende Struktur ist immer die gleiche. Der Prozess beginnt damit, die Pixel eines Bildes als Eingabe zu nehmen und geht dann dazu über, Merkmale zu extrahieren, indem nacheinander bestimmte Filter angewendet werden. Diese Filter sind im Wesentlichen Masken, die über das Bild gestrichen werden, um zu sehen, ob etwas zu ihnen passt. Beim klassischen Pattern-Matching müsste der Mensch das Aussehen dieser Filter vorgeben, aber in einem Convnet beginnen sie zufällig und werden dann während des Trainingsprozesses verfeinert. Der endgültige Satz von Merkmalen wird dann in ein dicht verbundenes Netz eingespeist, woraus sich die wahre universelle Vorhersagekraft dieses Algorithmus ergibt. Es gibt sogar einen mathematischen Beweis (was im Bereich der ANNs ziemlich selten ist), der besagt, dass ein solches Netzwerk lernen kann, jede einigermaßen gut verhaltene Funktion mit beliebiger Genauigkeit zu approximieren, solange das Netzwerk ausreichend groß ist. Leider sagt der Beweis aber nichts darüber aus, wie groß es tatsächlich sein muss, so dass dies normalerweise durch Versuch und Irrtum ermittelt werden muss. Zurück im Convnet wird diese Schicht dann mit einer Folge von Ausgängen verbunden, die wirklich alles sein können. Für HTR würde man idealerweise Zeichen oder sogar Wörter in dieser letzten Schicht haben wollen. Beim Training wird ein Satz von Referenzbildern mit bekanntem Inhalt in das Netz eingespeist und dann dessen Ausgabe mit den realen Werten verglichen. Basierend auf der Differenz zwischen Modellvorhersage und Bodenwahrheit werden die Parameter im Netzwerk iterativ aktualisiert. Wenn das Training abgeschlossen ist, können neue Bilder erkannt werden, indem man sich die Ausgabe ansieht, die die stärkste Aktivierung aufweist. Mit der richtigen Netzwerkstruktur und dem richtigen Trainingsaufbau kann man sogar so etwas wie eine Verteilung der Wahrscheinlichkeiten in der Ausgabeschicht erhalten. 

Lernkurve des öffentlichen KI-Modells German Kurrent M2

Das ist natürlich nicht ganz so trivial, wie es sich vielleicht anhört. Für breit einsetzbare Modelle braucht man in der Regel riesige Mengen an Trainingsdaten und Rechenressourcen und selbst dann gibt es viele Fallstricke. Software-Entwickler und Hardware-Hersteller haben in den letzten Jahren an einem Strang gezogen und bieten leistungsfähige Chips, die speziell für typische KI-Berechnungen ausgelegt sind, und sehr vielseitige Software-Frameworks, um diese zu nutzen. Bei READ-COOP erweitern wir ständig unsere Hardwarekapazitäten, um die neuesten technologischen Entwicklungen zu nutzen, und wir behalten immer ein Auge auf neu entstehende Algorithmen, um unsere Plattform zu verbessern.

Teilen Sie diesen Artikel:

Starten Sie mit Transkribus

Machen Sie Ihre historischen Dokumente zugänglich