Category Archives

67 Articles

Posted by Anna Brandt on

Region grouping

Seit dem Versionsupdate 1.14.0 gibt es eine neue Funktion zur Konfiguration der Layout Analyse. Es geht dabei um die Anordnung der Text Regionen, genannt ‚Region grouping‘. Dabei könnt ihr nun einstellen ob diese um „Bündel“ von Baselines gezogen werden sollen oder ob alle Lines in einer einzigen TR sein sollen.

Bei der zuerst genannten Einstellung kann es schnell passieren, dass am Rand des Images oder auch mittendrin viele kleine TRs auftauchen, auch wenn es eigentlich nur einen Textblock gibt. Dieses Problem kann man in einem weiteren Schritt mit dem Remove small Textregions lösen.

Dagegen sind bei der Einstellung von nur einer Textregion, wirklich alle Baselines in dieser Textregion, auch die, die sonst als Marginalien am Rande stehen und sogar senkrechte BL. Solange die Einstellung ‚Heterogeneous‘ bei ‚Text orientation‘ gewählt ist, erkennt die Layout Analyse auch die senkrechten Linien in derselben TR mit den waagerechten. Es ist zu erkennen, dass die LA normalerweise mehrere TR erkennen würde. Die reading order für die Zeilen wird nämlich weiterhin eingeteilt, als befänden sie sich in eigenen Textregionen. Der Hauptparagraph ist meistens TR 1, deshalb fängt auch die RO dort an. Die anderen Baselines werden hinten angestellt, auch wenn sie seitlich neben dem Haupttext stehen und damit eigentlich mittendrin eingeordnet werden könnten.

Welche Einstellung für euch besser ist, müsst ihr ausprobieren. Bei Seiten, die nur einen Textblock haben, ist die zweite Einstellung natürlich von Vorteil, weil die ganzen kleinen TR nicht auftauchen. Es könnte auch sein, dass man innerhalb eines Dokuments verschiedene Einstellung wählen muss.

Posted by Dirk Alvermann on

Einzelne Zeilen vom Training ausschließen

Manch einer wird das aus der Praxis kennen: ihr seid gerade dabei eine besonders schwierige Seite in Transkribus abzuschreiben und könnt beim besten Willen nicht alles entziffern. Was macht man da? Wenn die Seite so auf den Edit Status „Ground Truth“ gesetzt wird, dann geht die Transkription mit samt den offensichtlichen Fehlern (oder dem was ihr nicht lesen konntet) ins Training. Das ist nicht gewollt. Aber einfach „wegwerfen“ wollt ihr die Seite auch nicht.

Wir haben schon in einem anderen Beitrag über die Verwendung von Tags berichtet. Wir benutzen im Projekt in solchen Fällen von Beginn an das „unclear“-tag. Andere benutzen für solche Leseprobleme auch gerne das Tag „gap“.

Das erweist sich jetzt als großer Vorteil. Denn seit einigen Monaten gibt es im Trainings-Tool von Transkribus die Funktion „omit lines bei tag“.

Das Tool sorgt dafür, dass auf allen Seiten, die in das Trainings- oder Validaton-Set genommen werden, autormatisch die Zeilen, die ein Tag „unclear“ oder „gap“ aufweisen, nicht mit in das Training einbezogen werden. Das heißt, man kann jetzt selbst Seiten, die nicht perfekt transkribiert sind, bei denen aber die Stellen, die man nicht entziffern konnte, entsprechend durch Tags markiert sind, bedenkenlos mittrainieren.

Posted by Anna Brandt on

Undo Job

Version 1.14.0

Bereits seit Version 1.12. gibt es ein praktisches Hilfsmittel um Flüchtigkeitsfehler wieder „auszubügeln“. Es ist bestimmt schon manchem passiert, dass er einen großen Job in einem Dokument gestartet hatte und dann feststellt, dass die Parameter falsch eingestellt waren oder man diesen Job überhaupt nicht ausführen wollte. Das kann eine Layout Analyse sein oder eine HTR mit dem falschen Modell. Um solche Fehler schnel und unkompliziert zu beheben, besonders wenn sie mehrere Seiten betreffen, wurde im Fenster mit der Jobliste die Funktion (Button) ‚Undo Job‘ eingeführt. Mit diesem könnt ihr einen ganzen Job, der falsch gelaufen ist, löschen.

Wenn zum Beispiel eine Layout Analyse, weil man vergessen hat den Hacken auf ‚Current Page‘ zu setzen, auf Seiten gelaufen ist, die bereits fertig waren (ein Fehler der öfter vorkommt). Dann müsst ihr nicht mehr auf jede der Seiten einzeln gehen und die falsche Version löschen, sondern könnt mit dieser Funktion einfach den ganzen Job ungeschehen machen.

Dies funktioniert allerdings nur, wenn der Job die letzte Version die ihr auf den Seiten erzeugt habt. Wenn eine andere Version die letzte ist, dann zeigt Transkribus das an und der Job wird auf dieser Seite nicht gelöscht. Auf den Seiten, auf denen der Job die letzte Version ist schon. Das heißt ihr könnt auch zuerst weiter arbeiten und einfach später die durch den falschen Job erzeugte Version auf den Seiten auf denen er nicht laufen sollte (z.B. GT) löschen lassen, während er auf den weiter bearbeiteten Seiten bleibt.


Tips & Tools
1) Auch wenn der Job auf allen Seiten gelöscht wurde verschwindet er nicht aus der Liste der ausgeführten Jobs. Also immer nochmal ein/zwei Seiten kontrollieren, damit ihr sicher seit.
2) Es funktioniert nur, wenn ihr in dem Dokument seit, in dem der Job ausgeführt wurde.

Posted by Dirk Alvermann on

Automatisches Verbinden zu kurzer Zeilen

Diese Tool ist – wie „Remove small text lines”- mit der Verion 1.12.0 von Transkribus ausgeliefert worden. Die Idee dahinter ist vielversprechend.

Vielleicht hattet ihr schon einmal Probleme mit „zerrissenen“ Zeilen bei der automatischen Line detection (Citlab Advanced Layout Analyse). Wir haben in einem früheren Beitrag darüber berichtet, wie nervig dieses Problem sein kann.

Die Erwartungen an solch ein Tool waren daher bei uns natürlich hoch. Nach kurzer Zeit haben wir aber erkannt, dass seine Verwendung etwas Übung braucht und dass es nicht problemlos überall eingesetzt werden kann.

Hier zeigen wir ein einfaches Beispiel:

Auf der Seite wurden von der Citlab Advanced Layout Analyse fünf „überflüssige“ Textregionen erkannt und ebenso viele „zerrissene“ Baselines. In einem solchen Fall solltet ihr zuerst mit „remove small text regions“ die überflüssigen Textregionen entfernen und erst dann das automatische merge-tool starten.

Tips & Tools
Vorsicht bei komplizierten Layouts. Ihr müsst das Ergebnis von „merge small text lines“ immer überprüfen, weil öfter auch Baselines zusammengefügt werden, die nicht zusammengehören (aus Zeilen mit anderer Reading Order).

Posted by Dirk Alvermann on

Zu kurze Textzeilen automatisch Entfernen

Release 1.12.0

Viele von euch kennen sicher das Tool „Remove small text regions“, das es seit gut einem Jahr bei Transkribus gibt. Jetzt kommt sein kleiner Bruder „Remove small text lines“. Endlich – ein Tool das viele Anwender sich lange gewünscht haben.

Bei der Citlab Advanced Layout Analyse (auch auf völlig „normalen“ Seiten) kommt es immer wieder vor, das Textregionen oder Baselines erkannt werden, wo wir sie nicht brauchen oder wollen.

Häufig werden in verzierten Initialen oder auch zwischen den einzelnen Zeilen „Mini-Baselines“ erkannt. Das HTR-Modell kann damit natürlich später bei der Texterkennung nichts anfangen und im Transkript stehen dann „leere“ Zeilen. Mit diesem Tool könnt ihr dies Baselines leicht und automatisch Löschen

Versucht es selbst einmal. Wir haben die besten Erfahrungen damit gemacht, wenn wir den Schwellenwert auf 0,05 einstellen.

Posted by Dirk Alvermann on

Automatisch ausgewählte Validierungssets

Über Validierung und die verschiedenen Arten, ein Validierungsset zusammenzustellen, findet ihr in diesem Blog schon einige Beiträge.

Seit der letzten Version von Transkribus (1.12.0) gibt es eine neue Möglichkeit, Validierungssets zu erstellen. Dabei entnimmt Transkribus während der Zusammenstellung des Trainings aus dem Train-Set einen bestimmten Anteil (2%, 5% oder 10%) des Ground Truth und bildet daraus automatisch ein Validierungsset. Dieses Set besteht aus zufällig ausgewählten Seiten.

Gebildet werden diese Validierungssets im Trainings-Tool von Transkribus. Ihr beginnt dafür wie üblich mit der Eingabe der Trainingsparameter für das Modell. Bevor ihr aber den Ground Truth zum Train-Set hinzufügt, wählt ihr den gewünschten Prozentsatz für das Validierungsset aus. Diese Reihenfolge ist wichtig. Bei jedem neuen Dokument, das ihr jetzt dem Train-Set hinzufügt, werden von Transkribus die entsprechenden Seiten für das Validierungsset extrahiert. Das ist auch schon alles.

Das neue Tool eignet sich sehr gut für große Modelle mit entsprechend viel Ground Truth, vor allem, wenn euch die Aufstellung besonderer Validierungssets nicht wichtig ist, oder es euch für repräsentative schwer fällt.

Posted by Dirk Alvermann on

HTR+ oder Pylaia Teil 2

Release 1.12.0

Vor einigen Wochen haben wir über unsere ersten Erfahrungen mit PyLaia beim Training eines generischen Modells (600.000 Wörter GT) berichtet.

Heute wollen wir einen weiteren Versuch machen, PyLaia und HTR+ zu vergleichen. Diesmal steht uns dafür ein größeres Modell (German_Kurrent_17th-18th; 1,8 Mio Wörter GT) zur Verfügung. Das Modell wurde sowohl als PyLaia als auch als HTR+-Modell trainiert, mit identischem Ground Truth und denselben Voraussetzungen (from the scratch).

Unsere Vermutung, dass PyLaia seine Vorzüge gegenüber HTR+ bei größeren generischen Modellen besonders entfalten kann, hat sich hier bestätigt. In dem gezeigten Fall ist PyLaia HTR+ in allen Belangen überlegen. Sowohl mit als auch ohne Language Model hat das PyLaia Modell auf all unseren Testsets um etwa einen Prozentpunkt (in der CER) besser abgeschnitten als HTR+.

In den letzten Wochen hat sich übrigens auch die Performance von PyLaia bei „gebogenen“ Textzeilen deutlich verbessert.

Posted by Dirk Alvermann on

Tag Export II

Im letzten Post haben wir den Nutzen von Tags für die Visualisierung von Ergebnissen anhand der Darstellung von Place-Tags auf einer Karte vorgestellt. Es gibt aber noch andere Möglichkeiten.

Tags können nicht nur separat, wie in Form einer Excel-Tabelle exportiert werden. Einige Tags (place oder person) werden auch in den ALTO-Dateien mit ausgegeben. Diese Dateien sind unter anderem dafür verantwortlich, dass wir in unserem Viewer/Presenter die Treffer der Volltextsuche anzeigen können. Dazu wählt man einfach beim Export der METS-Dateien zusätzlich „Export ALTO (Split lines into words)“.

In unserem Presenter in der Digitalen Bibliothek Mecklenburg-Vorpommern werden die Tags dann als „named entities“ getrennt nach Orten und Personen für das jeweilige Dokument angezeigt. Das ganze ist noch in der Versuchsphase und soll in nächster Zeit so weiterentwickelt werden, dass man über eine tatsächliche Tagcloud direkt auf die entsprechenden Stellen im Dokumente springen kann.

Posted by Dirk Alvermann on

Tag Export I

Wenn man sich einmal die Mühe gemacht hat, ein oder mehrere Dokumente zu taggen, hat man verschiedene Möglichkeiten diesen „Mehrwert“ auch außerhalb von Transkribus zu nutzen. Die Tags lassen sich leicht über das Export-Tool von Transkribus als Excel-Tabelle exportieren.

Von hier aus stehen Euch viele Möglichkeiten offen. Wir hatten unser „Tagging-Experiment“ durchgeführt, um zu erfahren, ob das ein guter Weg wäre, um die geographische Verteilung unserer Dokumente zu visualisieren und zugleich über eine Karte den Zugriff auf die digitalisierten Dokumente im Presenter zu ermöglichen.

Unterm Strich sind wir mit dem Ergebnis des Versuches zufrieden. Man kann bestimmte Jahre oder Zeiträume auswählen, nach Orten suchen und über die Punkte auf der Karte zu den Dokumenten gelangen. Hier könnt Ihr euch ansehen, was dabei herausgekommen ist.

Letztendlich hat sich der Aufwand für diese Art der Weiterverwendung des Taggings aber als so hoch erwiesen, dass wir ihn im Rahmen dieses Projektes nicht leisten können. Aber es gibt noch andere Möglichkeiten Tags im Export zu nutzen, über die wir im nächsten Post schreiben.

Posted by Dirk Alvermann on

HTR+ oder Pylaia

Version 1.12.0

Wie ihr sicher schon gesehen habt, gibt es seit dem vergangenen Sommer neben HTR+ eine zweite Technologie für die Handschriftentexterkennung in Transkribus verfügbar – PyLaia.

Wir haben in den vergangenen Wochen mit PyLaia-Modellen experimentiert und möchten hier einige erste Erfahrungen und Eindrücke zu den Unterschieden von HTR+ und PyLaia dokumentieren. Heißt billiger auch schlechter? – Definitiv nein! Hinsichtlich der Accuracy Rate kann PyLaia es ohne weiteres mit HTR+ aufnehmen. Es ist oft sogar etwas besser. Die folgende Grafik vergleicht ein HTR+ und ein PyLaia-Modell, die mit identischem Ground Truth (ca. 600.000 Wörter) unter denselben Voraussetzungen (from the scratch) trainiert wurden. Verglichen wird die Perfomance mit und ohne Language Model.

Der vielleicht auffälligste Unterschied ist, dass die Ergebnisse von PyLaia-Modellen sich mit dem Einsatz eines Language Models nicht ganz so stark verbessern lassen, wie das bei HTR+ der Fall ist. Das ist nicht unbedingt ein Nachteil, sondern spricht eigentlich eher für eine hohe Grundverlässlichkeit dieser Modelle. Anders ausgedrückt: PyLaia braucht nicht unbedingt ein Language Model um sehr gute Ergebnisse zu erzielen.

Es gibt auch ein Gebiet, auf dem PyLaia schlechter abschneidet, als HTR+. PyLaia hat größere Schwierigkeiten „gebogene“ Zeilen korrekt zu lesen. Bei senkrechten Textzeilen ist das Ergebnis sogar noch schlechter.

Im Training ist PyLaia etwas langsamer als HTR+, das heißt, das Training dauert länger. Auf der anderen Seite ist PyLaia sehr viel schneller im „Antritt“. Es benötigt verhältnismäßig wenige Trainingsdurchgänge, um gute Ergebnisse zu erzielen. In den beiden Lernkurven kann man das recht gut erkennen.

Unsere Beobachtungen sind natürlich nicht erschöpfend. Sie beziehen sich bisher nur auf generische Modelle, die mit einem hohen Einsatz von Ground Truth trainiert wurden. Wir haben insgesamt den Eindruck, das PyLaia bei solchen großen generischen Modellen seine Vorzüge voll ausspielen kann.