Auf dieser Seite wird der geplante Einsatz von Machine Learning zur automatisierten Erkennung bzw. Klassifizierung der Wappentypen (aus Workpackage 2) beschrieben.
Inhalt:
- Zusammenstellen der Groundtruth
- Auswahl des Modells und Training
- Anwendung auf das volle ABO-Korpus und BE-Teilmenge
Zusammenstellen der Groundtruth
Basierend auf der Übersicht (siehe Übersicht der Wappentypen) wurden iterativ Datensets für Training und Validierung zusammengestellt: Zuerst BE_GT.csv, dann BE_GT_v2.csv und schließlich BE_GT_v3.csv. Das letzte ist das aktuellste und umfangreichste Datenset. Es enthält Barcodes und den Wappentyp (falls vorhanden) auf den ersten fünf Seiten eines Digitalisats. Dabei werden die 4 folgenden Kategorien unterschieden, die Zahl in Klammern bezeichnet die Anzahl der Bilder in der jeweiligen Kategorie:
- Wappentyp A (200)
- Wappentyp B (234)
- Wappentyp C (200)
- Kein Wappen, Bezeichnung als Typ N (884)
Insgesamt befinden sich 1518 Bilder im Datenset. Um die Wahl des Bildausschnitts zu verbessern (und so die Informationsdichte im Bild zu erhöhen) wurde eine statistische Analyse der bounding boxes (dt. Hüllkörper) um die Supralibros durchgeführt. Dazu wurden manuell bounding boxes von 79 zufällig ausgewählten Einbänden mit Wappen (mit GIMP) abgemessen und deren Höhe und Breite aufgezeichnet, siehe hier für die Rohdaten. Aus den Rohdaten wurden die normierte Höhe und Breite (relativ zur gesamten Höhe und Breite des Einbands) ermittelt. In der folgenden Grafik sind diese bounding boxes und ihre Mittelpunkte sowie das uniform für den Ausschnitt zu verwendende Rechteck aufgetragen:

In der neuesten Version der Groundtruth-Daten wurde diese Analyse jedoch zugunsten eines quadratischen Ausschnitts aus der Bildmitte zurückgestellt. Dieser kann mit dem Regions-Parameter "square" über die IIIF-Schnittstelle bezogen werden (bis auf im Haus digitalisierte Einbände, bei denen das komplette Bild geladen werden und dann manuell ein quadratischer Ausschnitt gemacht werden muss). Ein Beispiel-URL für den Bezug eines Bilds aus dem Datenset mit einer Auflösung von 256 × 256 Pixeln ist https://iiif.onb.ac.at/images/ABO/Z18563850X/00000001/square/256,/0/default.jpg
. Siehe das Notebook BED_Update_GT.ipynb für mehr Details.
Auswahl des Modells und Training
Es wurden verschiedene Modelle getestet:
- Einfaches CNN basierend auf der Arbeit im classifying-eugeniana Projekt (ähnliche Anzahl an Schichten und trainierbaren Parametern), allerdings nicht als binärer Klassifikator sondern mit der Unterscheidung in die oben genannten 4 Kategorien und der Ausgabe einer Wahrscheinlichkeit für jede Kategorie
- ResNet (resnet101)
- DenseNet (densenet121)
- ResNext (resnext50_32x4d)
Für das Training der Modelle wählen wir eine Aufteilung von 80% bzw. 20% in Training- und Testset mit jeweils 1214 bzw. 304 Bildern. Siehe Abbildung 2 für einen Auszug aus den augmentierten Trainingsdaten.

Das ResNext liefert die besten Ergebnisse (100% Genauigkeit auf dem Testset) und ist dazu auch noch relativ schlank (mit 88 MB Speicherbedarf für die Gewichte). Es wird daher für das Ausrollen auf das ABO-Korpus ausgewählt. Siehe Abbildung 3 für einen Auszug der Testdaten kombiniert mit Vorhersagen des Modells.

Für weitere Details des Trainingsprozesses verweisen wir auf das Notebook BED_ResNext.ipynb.
Anwendung auf das volle ABO-Korpus und BE-Teilmenge
Basierend auf einer Liste von Martin Krickl für Bücher aus dem ABO-Korpus mit Jahreszahlen von 1501 bis 1738 sowie einem Auszug von BE-Signaturen aus dem Katalogssystem ALMA wird das oben trainierte Modell auf 557084 Bilder angewendet. Die folgende Tabelle gibt eine Übersicht über die Vorhersagen des Modells sowie unsere Auswertung der positiven (A, B oder C) Vorhersagen. In den Notebooks Apply_to_ABO.ipynb und Apply_to_BE_signatures.ipynb finden sich weitere Analysen und Details.
Vorhersage | Anzahl | TP | FP | Präzision |
---|---|---|---|---|
A | 2098 | 2081 | 17 | 0,992 |
B | 3741 | 3736 | 5 | 0,999 |
C | 381 | 344 | 37 | 0,903 |
A ∨ B ∨ C | 6220 | 6161 | 59 | 0,991 |
N | 550864 | - | - | - |
Insgesamt ergibt sich für die Kombination aller Wappentypen eine Fehlerstatistik von 59 falsch Positiven zu 6161 richtig Positiven, was bei einer Gesamtzahl von 6220 Positiven insgesamt damit einer Präzision von 0,991 entspricht. Die Analyse der N-Vorhersagen ist noch ausständig.
Tatsächlich wird vom Classifier ein Wahrscheinlichkeitswert für jede Klasse (A, B, C oder N) ausgegeben und für unsere Auswertung wird zunächst nur der höchste Wert beachtet. Die Histogramme der Wahrscheinlichkeitswerte (siehe Abbildung 4) lassen auch Rückschlüsse auf die Qualität des Trainings zu: Die Wappentypen A und B wurden sehr gut erlernt und die entsprechenden Wahrscheinlichkeiten sind nahe bei 1. Der Typ C hingegen kann mit unseren Trainingsdaten nicht ähnlich genau von Bildern ohne Wappen unterschieden werden, vermutlich aufgrund der stärkeren Ähnlichkeiten von vielen weiteren Wappen mit der Variante C des Wappens von Prinz Eugen.
