Travelogues

Unsere Selbstfindungsreise

Nach einer ersten Phase des Brainstormings bezüglich möglicher Themen eines Studi-Projekts und – nach erfolgreicher, wenn auch turbulenter – Auslese, folgte die Fokusschärfung. Es standen viele verschiedene Ideen und Methoden im Raum, die wir unter einen Hut bringen mussten. Dabei brillierte besonders eine Idee durch ihre Interdisziplinarität und das breite Spektrum möglicher Umsetzungen: Ein kartografiertes Multiversum fiktiver Charaktere und Orte, visualisiert auf einer Website und erschlossen durch Tools der Digital Humanities. Sherlock Holmes Spuren folgen oder die Scheibenwelt in 2D? Wir waren beinahe euphorisch, mögliche Umsetzungen zu testen!

So wussten wir also ungefähr, wie unser Projektziel aussieht. Doch die Findungsphase unserer Studi-Gruppe war noch längst nicht abgeschlossen: Welche Werke eignen sich für ein Multiversum? Können wir Terry Pratchetts Werke verwenden und wenn ja, wo finden wir die Digitalisate? Wollen wir in dieser kurzen Zeit ein eigenes Optical Character Recognition (OCR)-Projekt [1, S. 459–462] aufsetzen? Und vor allem: Verletzen wir damit womöglich Urheberrechte?

Wem das Korpus passt, der nutzt es nach


Doch die Rettung nahte. Nachdem wir einige Zeit über einen womöglich anstehenden Korpusaufbau gebrainstormt hatten, fiel unsere Wahl schließlich auf ein bereits bestehendes Korpus: Die Travelogues des gleichnamigen Projekts.

Das interdisziplinäre und internationale Projekt analysiert deutschsprachige Reiseberichte der Zeit 1500–1876
aus dem Bestand der Österreichischen Nationalbibliothek.

(Travelogues/Über das Projekt)

Endlich ein Korpus, das wie geschaffen für unser Projektvorhaben ist! Ging es zwar nicht mehr um die Idee eines fiktiven Multiversums, blieben doch im Kern die Ideen der Reiserouten und Visualisierung dynamischer Ortserzählungen erhalten.

Das Travelogues-Team generierte in der Laufzeit ihres Projekts ein Reisebericht-Korpus mit 3.595 Berichten datiert von 1500–1876 aus ursprünglich knapp 600.000 deutschsprachigen Büchern, die im Rahmen des Projektes Austrian Books Online der Österreichischen Nationalbibliothek digitalisiert wurden. Die darin vorhandenen Digitalisate wurden zuerst mit OCR in Volltexte umgewandelt und anschließend mit diversen computergestützten Methoden automatisch ausgewertet. Dazu gehörte unter anderem auch die automatisierte Klassifikation [2, S. 13–103] der Texte bezüglich ihrer „Reisebericht“-izität, um festzustellen, ob sie dem Korpus beigefügt werden sollen oder nicht.¹

Das Korpus steht als Volltext-Sammlung auf GitHub zur Verfügung. Insgesamt 1.219 Reiseberichte können dort in Form von TXT-Dateien heruntergeladen werden. Des Weiteren wurden der Sammlung die dazugehörigen Metadaten und Ergebnisse einer Named Entity Recognition (NER) [3, S. 596–599] verfügbar gemacht.

Wir entschieden uns für die Reiseberichte des 18. Jahrhunderts², da wir die Qualität der Volltextdateien – nach stichprobenartiger Sichtung – besser als die der vorigen Jahrhunderte einschätzten. Zudem ist dies die umfangreichste verfügbare Volltextsammlung.

Einen Überblick des gesamten Korpusaufbaus gibt es hier unter „Korpus“.

Legacy featuring Forschungsdaten


Natürlich war dieses Korpus nicht unser Schuh und wir nicht Aschenputtel: Es war kein perfekter Fit. Wie so oft bei der Nachnutzung bestehender Korpora oder anderer Forschungsdaten, mussten einige Vorkehrungen getroffen werden, um unser geplantes Vorgehen umzusetzen. Da die Texte weder manuell noch automatisiert postkorrigiert oder überprüft wurden, mussten wir zunächst eine grobe Fehleranalyse des Korpus durchführen. Des Weiteren überprüften wir die beigefügten Ergebnisse der NER auf systematische Fehler. Nach der Sichtung erarbeiteten wir einen Workflow, der von der Textkorrektur bis zum Erstellen der NER-Ergebnisse für die einzelnen Reiseberichte einige Stationen durchläuft. Außerdem wollten wir ein anderes NER-Modell testen, eines, das für historische Texte entwickelt wurde. Beim Querlesen der im Travelogues-Projekt vorhandenen NER-Ergebnisse fiel uns auf, dass das automatische Mapping der erkannten Orts-Eigennamen mit der GeoNames-Datenbasis nicht gut funktioniert hat. Dies liegt daran, dass die historischen Orte ambig sind. Zum Beispiel würde der Ort „Memphis“ als Ort in den USA erkannt werden. In dem betroffenen Reisebericht kann jedoch aus dem Kontext erschlossen werden, dass es sich hier um eine Erwähnung des Ortes „Memphis“ in Ägypten handelt.³

Die Nachnutzbarkeit von Daten ist ein wiederkehrendes, heiß diskutiertes Thema in den Digital Humanities und findet in vielen Forschungsprojekten, auf Konferenzen oder Tagungen seinen Stammplatz in der Menge. Diese Tatsache fällt einem erst dann so richtig auf, wenn man selbst in einem Projekt arbeitet, in dem bestehende Forschungsdaten-Sammlungen nachgenutzt werden.

Post-Hoc Correction


Im Travelogues GitHub-Repository sowie auf der Projektwebsite wird bereits angekündigt, dass die OCRisierten Texte nicht manuell nachbearbeitet wurden. Das Travelogues-Team entwickelte indessen ein neuronales Netz für die automatische Postkorrektur, also ein eigens trainiertes Sprachmodell. Es eignet sich vor allem für die Korrektur von OCR-Transkriptionsfehlern in historischen Texten. Das Trainingskorpus beinhaltet fast ausschließlich Texte aus dem 17. Jahrhundert, da hier bereits manuelle Transkriptionen der Texte vorlagen, die für das Training genutzt werden konnten.

Da wir uns jedoch für das umfangreichere Korpus des 18. Jahrhunderts entschieden hatten, eignete sich das Modell nur teilweise für die Nachkorrektur. Die Transkriptionsfehler in diesen Reiseberichten betreffen nämlich primär Sonderzeichen; unter anderem gehören dazu Zeilenumbrüche (Hyphenations), Schrägstriche im Fließtext oder Umlaute. Auch fehlende Zeichen in Wörtern kommen häufig vor.

In einem Testlauf, bei dem wir die Texte aus dem 18. Jahrhundert mit Hilfe des vorhandenen Sprachmodells korrigierten, wurden richtig geschriebene Wörter „verschlimmbessert“ (bspw. wurde aus „bulgaria“ -> „bvlgaria“ oder aus „vber-\nſchreiten“ -> „vberſthſehſenſt“). Bedingt sind solche Fehler zumeist durch die starke Variation in der geschriebenen deutschen Sprache der Zeit. Da es sich grundsätzlich um Zeichenfehler handelt, die durch reguläre Ausdrücke verbessert werden können, haben wir uns dazu entschieden, ein eigenes, kurzes Skript dafür zu schreiben. Andere systematische Fehler, wie die Verwechslung von „u“ und „v“, sind jedoch kaum mit regulären Ausdrücken abzudecken.

Die breite Fehlervarianz in der Schreibweise der Wörter ist bereits beim Sprachmodell von Lyu et. al. festgestellt worden [4], eine Korrektur ist jedoch schwierig, da eine strikte Normung ggf. zu kontextuellen Fehlern führen kann.

Die Resultate unserer halb-automatischen Nachkorrektur sind, wie wir bereits erwarteten, gleichwertig fehlerbelastet. Da wir in dieser ersten Projektphase jedoch primär auf einer oberflächlichen Ebene mit den Texten arbeiteten, entschieden wir uns gegen eine umfangreiche, close-reading Nachkorrektur. Stattdessen speisten wir alle Reiseberichte in unser eigenes Skript und die Ergebnisse daraus in das historische NER-Modell. Anschließend korrigierten wir die Ergebnisdateien mit den Ortsnennungen manuell.

Named Entity Recognition bei historischen Texten


Bei der Named Entity Recognition (NER), einem Teilgebiet der text-basierten Informationsextraktion, werden anhand bestimmter Merkmale Textstellen erschlossen, die Eigennamen enthalten. Eigennamen können beispielsweise Personen, Organisationen oder Ortsangaben betreffen. Zur Extraktion dienen überwachte Lernverfahren, die, basierend auf Beispielen dieser Merkmale, eine Klassifikation und Einordnung neuer Eigennamen-Vorkommen vornehmen können. Auch kontextuelle Informationen der Named Entitities, wie syntaktische Strukturen, können zur Erkennung genutzt werden. Diese haben wir – für jeden Reisebericht des 18. Jahrhunderts in unserem Korpus – zusammen mit der Satznummer im Dokument und der Position der Worte innerhalb des Satzes extrahiert und als JSON-Einträge gespeichert. Entsprechend der Entstehungszeit der Reiseberichte, wählten wir ein Modell für NER in historischen Dokumenten. Jede Datei hat somit eine ihr entsprechende GeoJSON-Datei mit den ermittelten Ortserwähnungen.

Daraufhin erfolgte ein automatisierter Abgleich der erkannten Orte mit der GEO-Normdatenbank GeoNames; Identifier und Koordinaten des wahrscheinlichsten Suchtreffers wurden dem Datensatz hinzugefügt.

Wie bereits oben erwähnt, war eine (zumindest stichprobenartige) Überprüfung und Postkorrektur der Ergebnisse für uns bedauernswert, aber unumgänglich. Ein zweischneidiges Schwert: Auf der einen Seite hatten wir weder genug Zeit (noch Personalressourcen), um ein umfassendes Textkorpus manuell zu korrigieren. Auf der anderen Seite stimmte uns die Aussicht auf eine so stark verfälschte Kartierung der Reiseberichte missmutig.

Der gewählte Kompromiss umfasst zwei Komponenten. Zunächst brachen wir das „Korrekturkorpus“ auf sechs Reiseberichte herunter, die unter uns Studis aufgeteilt und überprüft wurden. Auch hier wählten wir einen halbautomatischen Ansatz, bei dem falsche Einträge aus der GeoNames-Datenbank teils manuell, teils durch ein einfaches Python-Skript überarbeitet wurden. Der Fokus lag auf dem Ortskontext der Reiseberichte. Beispielsweise kontextualisierten wir den Reisebericht Reisebeschreibung nach Arabien und anderen umliegenden Laendern eindeutig in den arabischen Bereich und korrigierten insbesondere die Orte, die nicht in dieses Schema passen. Schwierigkeiten gab es in solchen Fällen vor allem mit Orten, die heutzutage nicht mehr den gleichen Namen haben, zu archäologischen Stätten geworden sind oder gleichnamige Vertreter in anderen Regionen haben. Auch die Erkennung von Personen mit Ortsbezeichnung in ihren Namen machten Schwierigkeiten. Die zweite Komponente besteht aus einem Clusteringverfahren, das die computergestützte Bearbeitung großer Datenmengen zulässt, aber eine Unschärfe bei den einzelnen Datenpunkten eliminiert. Dies geschieht dadurch, dass es Orte herausfiltert, die geografisch sehr weit entfernt von den Orten liegen, die im Text in unmittelbarer Umgebung vorkommen.

¹ Das Team spricht hierbei von einem "semi-automatisierten" Ansatz, bei dem charakterisierende Elemente von Reiseberichten zu ihrer Identifikation genutzt wurden.

² Die Reiseberichte haben als Erscheinungsdatum ein Datum des 18. Jahrhunderts. Einige wenige Werke entstanden in einer Zeitspanne, die bis ins 19. Jahrhundert reichte.

³ Solche Fehler automatisiert zu filtern ist aufwändig, wenn nicht gar unmöglich. Diese Korrekturen mussten dementsprechend durch eine manuelle Überprüfung erfolgen, bei der wir einzelne Entitäten im Kontext des Gesamttextes nachkorrigierten.

⁴ Erklärt wird das auch im Paper: „One explanation is due to the word spelling variations across centuries. Some examples include the substitution of single characters in words [...].“ [4, 491]

⁵ „Other possible issues include competing spellings for the same word, which may cause the models to encode conflicting information, yet, for transcribing historical texts, language normalization (i.e., opting for one spelling) is not recommended, as the meaning of the texts may change.“ [4, 490–491]

Bibliographie
[1] U. Springmann, „OCR für alte Drucke“, Inform.-Spektrum, Bd. 39, Nr. 6, S. 459–462, Dez. 2016, doi: 10.1007/s00287-016-1004-3.
[2] P. Flach, Machine Learning: The Art and Science of Algorithms that Make Sense of Data. Cambridge University Press, 2012. doi: 10.1017/CBO9780511973000.
[3] K.-U. Carstensen, C. Ebert, C. Ebert, S. Jekat, R. Klabunde, und H. Langer, Computerlinguistik und Sprachtechnologie : eine Einführung, 3., Überarb. und erw. Aufl. Heidelberg: Spektrum, Akad. Verl., 2010. [Online]. Verfügbar unter: http://digitale-objekte.hbz-nrw.de/storage2/2018/02/06/file_56/7521435.pdf
[4] L. Lyu, M. Koutraki, M. Krickl, und B. Fetahu, „Neural OCR Post-Hoc Correction of Historical Corpora“. arXiv, 2021. doi: 10.48550/ARXIV.2102.00583.

Über unsere Methoden weiterlesen: