Yearly Archives

36 Articles

Posted by Elisabeth Heigl on

Unsere HTR-Ergebnisse in der Digitalen Bibliothek MV

Wir präsentieren unsere Ergebnisse in der Digitalen Bibliothek Mecklenburg-Vorpommern. Hier findest du die Digitalisate mit der dazugehörigen Transkription.

Wenn du eine Akte ausgewählt hast, wie hier zum Beispiel die Spruchakte von 1586, siehst du mittig die erste Seite. In der Box darüber kannst du zur nächsten, zur vorherigen oder auch zu irgendeiner Seite deiner Wahl wechseln (1.) , den Doppelseitenmodus wählen (2.), das Bild rotieren (3.), in den Vollbildmodus wechseln (4.) und es vergrößern oder verkleinern (5.).

Auf der linken Seite kannst du verschiedene Ansichten auswählen. Du kannst dir beispielsweise statt nur der einen Seite alle Bilder auf einmal anzeigen lassen (Seitenvorschau) oder du kannst gleich die Transkription des Textes in der Volltext-Anzeige lesen.

Wenn du in der Struktur der Akte navigieren möchtest, musst du zuerst in der untersten linken Inhalt-Box über das kleine Plus-Symbol dir den Strukturbaum der Akte anzeigen lassen. Dort kannst du dann ein Datum auswählen.

Suchst du einen bestimmten Namen, einen Ort oder einen anderen Begriff? Dann trage diesen einfach in das linke Suchfeld („Suche in: Spruchakte 1568“) ein. Wenn der Begriff in der Akte vorkommt, werden die „Volltexttreffer“, d. h. sämtliche Stellen an denen dein Suchbegriff vorkommt, angegeben.

Wenn du hier einen der Treffer auswählst, erscheint dein Suchbegriff auf dem Digitalisat gelb markiert. Das Highlighten der Suchergebniss funktioniert vorläufig nur auf dem Digitalisat, noch nicht im Volltext.

Tipps & Tools
Lass dir die Volltexttreffer in einem neuen Tab (über die rechte Maustaste) anzeigen. Das vor- und zurücknavigieren ist in der Digitalen Bibliothek leider noch etwas umständlich. So kannst du sicher gehen, dass du immer wieder auf deine vorherige Auswahl zurückkommst.

Posted by Dirk Alvermann on

Warum Testsets wichtig sind und wie man sie anlegt, #1

Release 1.7.1

Wenn wir überprüfen wollen, wieviel ein Modell im Training gelernt hat, müssen wir es auf die Probe stellen. Das tun wir mit Hilfe von möglichst genau definierten Testsets. Testsets enthalten – wie das Trainingsset – ausschließlich GT. Allerdings stellen wir sicher, dass dieser GT niemals für das Training des Modells verwendet wurde. Das Modell „kennt“ dieses Material also nicht. Das ist die wichtigste Eigenschaft von Testsets. Denn eine Textseite, die schon einmal als Trainingsmaterial diente, wird vom Modell immer besser gelesen werden, als eine, mit der es noch nicht „vertraut“ ist. Das kann man experimentell leicht überprüfen. Will man also valide Aussagen über die CER und WER erhalten, benötigt man „nicht korrumpierte“ Testsets.

Fast genauso wichtig ist, dass ein Testset repräsentativ ist. Solange man ein HTR-Modell für einen einzigen Schreiber oder eine individuelle Handschrift trainiert, ist das nicht schwer – es ist ja schließlich immer dieselbe Hand. Sobald mehrere Schreiber im Spiel sind, muss darauf geachtet werden, dass möglichst alle individuellen Handschriften die im Trainingsmaterial verwendet werden, auch im Testset enthalten sind. Je mehr unterschiedliche Handschriften in einem Modell trainiert werden desto größer werden die Testsets.

Der Umfang des Testsets ist ein weiterer Faktor, der die Repräsentativität beeinflusst. In der Regel sollte ein Testset 5-10% des Umfangs des Trainingsmaterials enthalten. Diese Faustregel sollte aber immer an die spezifischen Anforderungen des Materials und der Trainingsziele angepasst werden.

Um das einmal an zwei Beispielen zu erläutern: Unser Modell für die Spruchakten von 1580 bis 1627 wurde mit einem Trainingsset von fast 200.000 Wörtern trainiert. Das Testset beinhaltet 44.000 Wörter. Das ist natürlich ein sehr hoher Anteil von fast 20%. Er ist darauf zurückzuführen, dass in diesem Modell etwa 300 unterschiedliche Schreiberhände trainiert wurden, die im Testset auch repräsentiert sein müssen. – In unserem Modell für die Assessorenvoten des Wismarer Tribunals sind etwa 46.000 Wörter im Trainingsset enthalten, das Testset umfasst lediglich 2.500 Wörter, also ein Anteil von etwa 5%. Wir haben es hier allerdings auch nur mit 5 verschiedenen Schreiberhänden zu tun. Für die Repräsentativität des Testsets genügt das Material also.

Posted by Dirk Alvermann on

Word Error Rate & Character Error Rate – woran sich ein Modell messen lässt

Release 1.7.1

Die Word Error Rate (WER) und Character Error Rate (CER) zeigen an, wie hoch der Textanteil einer Handschrift ist, den das angewendete HTR-Modell nicht korrket gelesen hat. Eine CER von 10% bedeutet also, dass jedes zehnte Zeichen (und das sind nicht nur Buchstaben, sondern auch Interpunktionen, Leerzeichen etc.) nicht richtig erkannt wurde. Die Accuracy Rate läge demnach bei 90 %. Von einem guten HTR-Modell kann man sprechen, wenn 95% einer Handschrift korrekt erkannt wurde, die CER also nicht über 5% liegt. Das ist in etwa auch der Wert, den man heute mit „schmutziger“ OCR bei Frakturschriften erziehlt. Im Übrigen entspricht eine Accuracy Rate von 95% auch den Erwartungen, die in den DFG-Praxisregeln Digitalisierung formuliert sind.

Selbst bei einer guten CER kann die Word Error Rate hoch sein. Die WER zeigt, wie gut die wortgenaue Wiedergabe des Textes ist. In Aller Regel liegt die WER um das drei bis vierfache höher als die CER und verhält sich proportional zu ihr. Der Wert der WER ist nicht besonders aussagekräftig für die Qualität des Modells, denn anders als Zeichen, sind Wörter unterschiedlich lang und gestatten keine gleichermaßen eindeutigen Vergleich (ein Wort ist schon falsch erkannt, wenn ein Buchstabe darin falsch ist). Darum wird sie auch seltener benutzt, um den Wert eines Modells zu charakterisieren.

Die WER gibt aber Hinweise auf einen wichtigen Aspekt. Denn wenn ich eine Texterkennung mit dem Ziel durchführe, später eine Volltextsuche in meinem Dokuemnt durchzuführen, dann zeigt mir die WER genau die Erfolgsquote, mit der ich bei meiner Suche rechnen kann. Gesucht wird ja nach Worten oder Wortteilen. Egal also wie gut meine CER ist: bei einer WER von 10% kann potentiell jeder zehnte Suchbegriff nicht gefunden werden.

 

Tipps & Tools
Am einfachsten lässt sich die CER und WER mithilfe der Compare Funktion unter Tools anzeigen. Hier könnt ihr bei einer oder mehreren Seiten eine Ground Truth Version mit einem HTR-Text vergleichen und so die Qualität des Modells einschätzen.

Posted by Elisabeth Heigl on

Viel hilft viel – wie komme ich an immer mehr GT?

Release 1.7.1

Damit das Modell die Vorlagen möglichst genau wiedergeben kann, braucht es zum Lernen möglichst viel Ground Truth; viel hilft viel. Aber wie kommt man an möglichst viel GT?

Es ist ganz schön zeitaufwändig viel GT zu produzieren. Als wir am Anfang unseres Projektes und des Modelltrainings standen, haben wir in einer Stunde gerade einmal 1 bis 2 Seiten geschafft. Das sind durchschnittlich 150 bis 350 Wörter pro Stunde.

Fünf Monate später hatten wir aber schon knapp 250.000 Wörter im Training. Wir hatten weder eine Heerschar von Transcribern noch musste einer Tag und Nacht GT schreiben. Alleine die exponentielle Verbesserung der Modelle selbst ermöglichte es uns immer mehr GT zu produzieren:

Je mehr GT du investierst, desto besser wird dein Modell. Je besser dein Modell liest, desto leichter wird das Schreiben von GT. Du musst jetzt nämlich nicht mehr selbst schreiben, sondern lediglich die HTR korrigieren. Mit Modellen die eine durchschnittliche Fehlerquote unter 8 % aufweisen, haben wir ca. 6 Seiten pro Stunde geschafft.

Je besser das Modell liest, desto mehr GT kann produziert werden und je mehr GT vorhanden ist, desto besser wird das Modell. Was ist das Gegenteil von einem Teufelskreis?

Posted by Anna Brandt on

Kollaboration – Versions Management

Release 1.7.1

Das zweite wichtige Element für organisierte Kollaboration ist das Versionsmanagement von Transkribus. In der toolbar wirkt es eher unscheinbar, ist aber enorm wichtig. Transkribus legt nämlich bei jedem Speichern eine Version der gerade bearbeiteten page ab, die den aktuellen Stand der Layout- und Inhaltsbearbeitung enthält.

Diese Versionen werden – damit man sie besser unterscheiden kann – mit einem „edit status“ versehen. Ein neu hochgeladenes Dokument enthält nur pages mit dem edit status „new“. Sobald ihr eine page bearbeitet, wechselt der edit status automatisch auf „in progress“. Die drei übrigen Statusanzeigen – „done“, „final“ und „Ground Truth“ – können nur manuell gesetzt werden.

Wann man einen solchen „höheren“ Status setzt, hängt von den Absprachen im Team ab. Wir benutzen das Versionsmanagement vor allem bei der Produktion von Trainingsmaterial – Ground Truth. Dabei werden alle Seiten, die eine fertige Layout Analyse haben auf „done“ gesetzt, damit die Transcriber und Editors wissen, dass diese Seite jetzt von ihnen bearbeitet werden kann. Dieser Status wird nicht verändert, bis die Seite mit einer hundertprozentig sicheren Transkription versehen ist. Dann wird sie auf „Ground Truth“ oder „final“ gesetzt. Alle Seiten mit dem Status „GT“ werden später als Trainingsmaterial für HTR-Modelle genutzt, während aus den Seiten mit edit status „final“ die Testsets gebildet werden.

Jeder Kollaborator kann jederzeit alle Versionen einer Seite aufrufen und bearbeiten oder auch löschen. Der edit staus hilft ihm dabei, die jeweils gewünschte Version schneller zu finden. Neben dem edit status wird bei jeder Version der letzte Bearbeiter und der Speicherzeitpunkt angezeigt. Falls die Version mit einem automatischen Prozesse (Layout Analyse oder HTR) bearbeitet wurde, wird das ebenso kommentiert. So sind die Bearbeitungsschritte detailliert nachvollziehbar.

Tipps & Tools
Ihr könnt mehrere Versionen mit demselben Status haben.
Ihr könnt jede Version in einen beliebigen anderen Status versetzen – außer in „New“.
Ihr könnt einzelne oder mehrere Versionen löschen – außer Final-Versionen, die sind unlöschbar.

Posted by Elisabeth Heigl on

Viel hilft viel – wieviel GT muss ich investieren?

Release 1.7.1

Wie schon gesagt: Ground Truth ist das A und O bei der Erstellung von HTR-Modellen.

GT ist die korrekte und maschinenlesbare Abschrift der Handschrift mit deren Hilfe die Maschine das „Lesen“ lernt. Je mehr die Maschine „üben“ kann, desto besser wird sie. Je mehr Ground Truth wir also haben desto geringer werden die Fehlerquoten. Viel hilft also auch viel.

Natürlich hängt die Menge immer vom konkreten Anwendungsfall ab. Wenn wir mit wenigen, gut lesbaren Schriften arbeiten, genügt in der Regel wenig GT, um ein solide arbeitendes Modell zu trainieren. Sind die Schriften aber sehr unterschiedlich, weil wir es mit einer großen Anzahl verschiedener Schreiber zu tun haben, wird der Aufwand höher. Das heißt, in solchen Fällen müssen wir mehr GT bereitstellen um gute HTR-Modelle zu erzeugen.

In den Spruchakten finden  wir besonders viele unterschiedliche Schreiber. Darum wurde hier auch sehr viel GT erzeugt um die Modelle zu trainieren. An unseren Spruchaktenmodellen (Spruchakten_M_2-1 bis 2-11) lässt sich deutlich ablesen, wie schnell die Fehlerquote tatsächlich zurückgeht, wenn möglichst viel GT investiert wird. Ganz grob lässt sich sagen, dass bei Verdoppelung der Menge des GT im Training (words in trainset) die Fehlerquote (CER Page) des Modells jeweils halbiert wird.

In unseren Beispielen konnten wir beobachten, dass wir die Modelle mit mindestens 50.000 Wörtern GT trainieren müssen, um gute Ergebnisse zu erzielen. Mit 100.000 Wörtern im Training kann man bereits ausgezeichnete HTR-Modelle erhalten.

Posted by Anna Brandt on

Trainings- und Testsets (für Einsteiger)

Release 1.7.1

Wenn wir ein HTR-Modell trainieren, erstellen wir Trainingssets und Testsets, alle auf der Basis von Ground Truth. In den nächsten Posts zu diesem Thema erfahrt Ihr noch mehr darüber, vor allem, dass beide Sets nicht miteinander vermischt werden dürfen. Doch was genau ist der Unterschied zwischen beiden und wozu sind sie gut?

In der Auswahl des enthaltenen Materials sind Trainings- und Testsets sich sehr ähnlich. Das Material in beiden Sets soll aus denselben Akten kommen und auf demselben Stand (GT) sein. Der Unterschied liegt darin wie es von Transkribus zur Erstellung eines neuen Modells behandelt wird: Das Trainingsset wird vom Programm in hundert (oder mehr) Durchgängen (Epochs) gelernt. Stellt euch vor, ihr schreibt einen Test hundert Mal – quasi zu Übungszwecken. Jedes Mal wenn ihr den Test geschrieben habt, durch alle Seiten durch seid, bekommt ihr die Lösung und könnt euch eure Fehler anschauen. Dann fangt ihr mit derselben Übung von vorne an. Dabei werdet ihr natürlich immer besser. Genauso macht es Transkribus und lernt damit bei jedem Durchgang ein bisschen mehr.

Nach jedem Durchgang in Trainingsset wird das Gelernte am Testset überprüft. Stellt euch wieder den Test vor. Auch diesmal schreibt ihr den Test, bekommt die Note, aber man sagt euch nicht, was ihr falsch gemacht habt. Transkribus geht also viele Male durch dieselben Seiten, kann aber nie die richtige Lösung sehen. Das Modell muss auf das vorher gelernte beim Trainingsset zurückgreifen und daran sieht man dann wie gut es gelernt hat.

Wenn also im Testset dieselben Seiten wie im Training wären, dann könnte Transkribus „schummeln“. Es würde die Seiten schon kennen, hätte schon hundert Mal an ihnen geübt und schon hundert Mal die Lösung gesehen. Das ist der Grund, warum die CER (Character Error Rate/ Zeichenfehlerquote) im Trainingsset fast immer geringer ist, als im Testset. Das sieht man am besten an der „Lernkurve“ eines Modells.

Posted by Elisabeth Heigl on

Kollaboration – User Management

Release 1.7.1

Die Transkribus-Plattform ist auf Kollaboration angelegt, das heißt, dass viele Nutzer an einer Collection und sogar an einem Document gleichzeitig arbeiten können. Eventuelle Kollisionen sollten bei ein wenig Organisationsgeschick vermeidbar sein.

Die beiden wichtigsten Elemente, die eine organisierte Kollaboration ermöglichen, sind das User Manangement und das Versionsmanagement in Transkribus. Das User Management bezieht sich ausdrücklich auf Collections. Derjenige, der eine Collection anlegt, ist immer ihr „owner“, das heißt, er hat volle Rechte, einschließlich des Rechts, die ganze Collection zu löschen. Er kann anderen Nutzern Zugriff auf die Collection gewähren und ihnen dabei Rollen zuweisen, die gestaffelten Rechten entsprechen:

Owner – Editor – Transcriber

Es macht immer Sinn, wenn mehr als ein Mitglied des Teams „owner“ einer Collection ist. Bei uns sind alle übrigen „editors“. Die Rolle „transcriber“ zu vergeben, ist vor allem dann sinnvoll, wenn man crowd-projects betreibt, wo Freiwillige oder Ehrenamtliche tatsächlich nichts anders tun, als Texte abzuschreiben oder zu taggen. Für solche „transcriber“ ist der Zugriff über das WebUI, mit seinen auf diese Rolle abgestimmten Funktionsumfang ideal geeignet.

Posted by Anna Brandt on

Toolbar – die wichtigsten Werkzeuge und wie man sie benutzt, Teil 2

Release 1.7.1

Layout korrigieren

Wenn die groben Textregionen gezogen sind, können diese bearbeitet werden. Dazu wählt ihr eine der Regionen aus, dann werden die anderen Tools auf der Toolbar aktiv.

Mit 1 können zu der ausgewählten Form (TR oder BL!) ein oder mehrere Punkte hinzufügt werden. Alle Formen bestehen aus Punkten, an denen ihr die Form verschieben könnt und geraden Linien, welche diese Punkte verbinden. Um aus der groben Textregion ein Polygon zu machen, welches an den Textfluss angepasst ist, benutzt ihr dieses Tool.

Mit 2 wird von der ausgewählten Form ein Punkt entfernt. Dieses Tool ist besonders geeignet, um Baselines zu korrigieren oder zu kürzen. Das ist häufig der Fall wenn man ausgewählte Elemente teilt.

Mit 3,4 und 5 ist es nämlich möglich die ausgewählte Form zu teilen. Auch das geht sowohl bei Textregions als auch bei Baselines: 3 teilt horizontal, 4 vertikal. Mit 5 zieht ihr eine eigene Linie, die nicht nur waagerecht oder senkrecht verlaufen muss.

Das letzte wichtige Werkzeug (roter Kreis) ist das Merge-Werkzeug. Das ist besonders wichtig, wenn die automatische LA Baselines im Image zerrissen hat. Ihr könnt mit Merge alle Formen wieder zusammenfügen. Also Baselines mit Baselines und Textregionen mit Textregionen. Dazu müsst ihr die entsprechenden Formen markieren, was ihr im Image direkt oder im Layout-Reiter tun könnt.

 

Tipps & Tools
Beim Teilen müsst ihr darauf achten, dass die TR und BL nur an den Stellen geteilt werden können, wo sie Linien haben. Ein Schnitt durch die Punkte, die auf der Form sitzen, ist nicht möglich.
Außerdem ist wichtig zu wissen, dass bei der Teilung einer Form die Reading Order automatisch verändert wird. Wenn zum Beispiel aus einer TR zwei gemacht werden, wird in jeder TR eine neue Zählung angefangen.

Posted by Anna Brandt on

Reading Order

Release 1.7.1

Die Reading Order legt fest, in welcher Reihenfolge Transkribus mit einem HTR-Modell die Zeilen in einem Image lesen wird. Diese RO wird bei der Layoutanalyse automatisch erstellt, kann jedoch ebenfalls später manuell geändert werden. Bei der automatischen LA wird die RO anhand der Position der Zeilen im Image festgelegt, die oberste Zeile, die am weitesten links steht ist die eins und so weiter.

Wenn die Schrift im Image nicht ganz waagerecht verläuft oder wenn Baselines zerrissen sind, kann das zu Fehlern in der Reading Order führen. Wenn ihr die LA korrigiert, solltet ihr auch immer noch einmal auf die RO schauen, sonst kann es sein, dass die Transkription später in Teilen keinen Sinn ergibt. Um die RO zu ändern kann entweder im Dokument auf die Kreise in denen die Zahlen stehen geklickt werden und im dortigen Feld die Nummer ändern. Oder ihr ändert die RO, indem ihr im Layout-Reiter die entsprechende Zeile markiert und mit der Maus verschiebt, dann wird die RO im Dokument automatisch geändert. Soll der spätere Volltext auf den ersten Blick Sinn ergeben, sind solche Korrekturen unerlässlich. Denn schließlich bestimmt die RO den Zusammenhang der Inhalte. Wenn der Inhalt des Dokuments nur für eine Volltextsuche erschlossen und nicht im Kontext angezeigt werden soll, ist die RO weniger relevant.

 

Tipps & Tools
Wenn ihr eine Zeile nach vorne oder hinten verschieben wollt, werden sich die Nummern der nachfolgenden Zeilen automatisch ändern. Dann ist manchmal vorher ein bisschen rechnen nötig, welche Nummer jetzt die richtige ist.
Ganz wichtig: Wenn der Schreiber von links nach rechts eine ansteigende Zeile schreibt – was sehr, sehr oft vorkommt – und wenn die Baseline bei der LA gesplittet wird, dann hat die zweite Hälfte der geteilten BL die kleinere Nummer. Sollen diese Baselines mit dem Merge Tool zusammengefügt werden, müsst ihr unbedingt vorher auf die RO schauen. Wenn die RO falsch ist fügt Transkribus sie mit einen Bogen zusammen. Diese Baseline kann von der HTR nicht mehr interpretiert werden.
Edit: Dieses Problem wurde mit der Version 1.8.0 gelöst. Das Problem kommt jetzt lediglich bei vertikal erkannten Zeilen vor.