Try   HackMD

Projektskizze Layout-Workbench Phase 2

Projektziel

Die Layout-Workbench soll deutlich effizienter werden, wobei der Fokus zunächst auf der Stapelverarbeitung (Durchsatz) liegt. Außerdem ist die LW funktional so zu erweitern, daß eine robuste Einteilung von Bildseiten in vordefinierte Klassen ermöglicht und Workflows seitenklassenspezifisch spezialisiert werden können.

Performance-Optimierung

  • Profiling zur Identifikation von Auffälligkeiten des Betriebsmittelbedarfs (CPU, RAM, I/O) innerhalb des Workflows
  • Beseitigung von Flaschenhälsen in Prozessoren durch algorithmische und programmtechnische Optimierung
  • Erweiterung der Optionen zur Parallelisierung von Workflows zusätzlich zur dokumenten-parallelen um seiten-parallele Prozessierung
  • GPU-Portierung relevanter Prozessoren wie Binarisierung, Preprocessing und Texterkennung:
    • Binarisierung: Wechsel zu neuronalem Modell
    • Preprocessing: CuPy-Portierung von Ocropy
    • Texterkennung: Training eines Modells für Gegenwartsdeutsch mit Calamari-OCR

Seitenklassifikation

  • Annotation: Erweiterung von LAREX um eine Möglichkeit, Seiten eine Klasse zuzuordnen und dies in /PcGts/Page/@type zu annotieren (ggf. per Zuordnung zu PAGE-XML vordefiniertere Klassen)
  • Backend: Erweiterung von Mask-RCNN um einen vierten Head-Layer mit Ausgabe der Klasse für das Gesamtbild (Zielfunktion Kreuzentropie), Möglichkeit zum selektiven Laden/Speichern von Modellkomponenten (also dynamische Konfiguration entsprechend Training, z.B.
    • Seitenklassifizierung mit Regionenerkennung und -Klassifizierung
    • nur Seitenklassifizierung
    • nur Regionenerkennung und -Klassifizierung
  • Sammlung geeigneter GT-Daten (in-domain von IAO, extern) und Training eines Baseline-Modells
  • Rezept und Dokumentation für IAO-eigenes Training auf weiteren Daten
  • OCR-D-Prozessor speziell für Seitenklassifikation mit Mask-RCNN, sowie entsprechende optionale Erweiterung des Prozessors zur visuellen Adreßerkennung
  • Möglichkeit der dynamischen Formulierung von Workflow-Makefiles
  • ggf. Erweiterung des Schemas um Kontextmarkierungen wie bei Adreßerkennung zur tieferen oder breiteren Unterscheidung von Klassen (nicht nur visuelle sondern auch textuelle Information)

Umsetzung

Arbeitsprogramm

Folgende Arbeitsschritte sind zur Umsetzung der beschriebenen Lösung erforderlich (jew. mit geschätztem Arbeitsaufwand, untergliedert in Arbeitsphasen):

  1. Phase: einfache Performance-Verbesserung (Prozessor-Profiling u. -Optimierung) – 1 PM
  2. Phase: erweiterte Performance-Verbesserung (Parallelisierung und GPU-Portierung) – 2 PM
  3. Phase: Prototyp Seitenklassifikation – 2 PM
  4. Phase: Erweiterung Seitenklassifikation – 1 PM

Summe Personenmonate: 6

Voraussetzungen

Vonseiten des Auftraggebers wird folgendes benötigt:

  • bis spätestens Phase 3 – Klassen-Definition und GT für Seitentyp

Angesichts der Komplexität der Problemstellung versteht es sich, daß Anforderungen und Vorgehen jederzeit eng mit dem Auftraggeber abzustimmen sind.

Zeitplan

Nachfolgend ein Diagramm mit dem geplanten Zeitverlauf für die einzelnen Arbeitsphasen. Gerechnet wird mit 1 Vollzeit-Arbeitskraft.

2021-03-012021-04-012021-05-012021-06-012021-07-012021-08-01Performance CPU           Performance GPU           Trainings-GT               Seitenklasse Prototyp      Seitenklasse Anwendung    ArbeitsphaseDatenLayout-Workbench

Anhang und Ergänzungen

Kommentare?

tags: Templates Documentation