• Leistungen
  • Kompetenzen
  • Projekte
  • Kontakt

REST-Service zur automatischen Klassifizierung von Dokumenten

Sächsische Landesbibliothek — Staats- und Universitätsbibliothek Dresden (SLUB Dresden)

Die heutige Masse an täglich neu veröffentlichten Schriftstücken stellt Bibliotheken beim Katalogisieren vor große Herausforderungen. In diesem Projekt wurde evaluiert, inwiefern Methoden des maschinellen Lernens zur automatischen Klassifizierung eingesetzt werden können. Das Ergebnis ist eine Open‑Source-Software, die auf GitHub veröffentlicht wurde.

Projektkontext

Die Bibliothek SLUB Dresden verwaltet mit dem Dokumentenserver „Qucosa“ viele 10.000 Publikationen, von Dissertation, über Forschungsberichten, bis Zeitschriften und Büchern. Die Einordnung der Publikationen in detaillierte Themenkategorien erfordert leider oft wenig verfügbares Expertenwissen.

Als Klassenschemata kommen z. B. die Dewey Decimal Classification (DDC) oder die Regensburger Verbundklassifikation zum Einsatz. Letztere besteht aus mehreren 100.000 Klassen, sodass eine manuelle Zuordnung selbst für Wissenschaftler mit passendem Suchwerkzeug schwierig ist.

Ziel des Projektes war es zu prüfen, wie gut aktuelle Verfahren aus dem Bereich der Künstliche Intelligenz und des maschinellen Lernens zur automatischen Klassifizierung eingesetzt werden können. Die trainierten Modelle sollten dann mithilfe eines REST-Services zur Nachnutzung zur Verfügung gestellt werden.

Datengrundlage waren die Dokumente und Metadaten des Qucosa-Dokumentenservers, sowie zahlreiche weitere öffentlich verfügbare Datensätze, unter anderem:

Untersucht wurden unter anderem folgende Klassifikationsmodelle:

  • k-Nächste-Nachbar Klassifikation (als Baseline)
  • Künstliche neuronale Netze (Fully Connected, BERT, Pre-Trained)
  • Spezialisierte Verfahren (Omikuji, FastText) mithilfe des Annif-Projektes

Besonderes Augenmerk wurden dabei auf die Evaluierungsmethodik gelegt. Da die Klassenschemata alle hierarchisch aufgebaut sind, kann eine Fehlklassifikation unterschiedlich problematisch sein. Entsprechend wurde ein hierarchisches Bewertungsmaß eingesetzt (siehe „Cesa-Bianchi“), welches eine Fehlklassifikation als Oberkategorie als weniger schlimm bewertet, als eine Fehlklassifikation mit einer nicht näher verwandten Klasse.

Eingesetzte Technologien

Die Software ist in Python geschrieben, und setzt auf verschiedene Open‑Source-Module auf. Die künstlichen neuronalen Netze wurden mit den Modulen PyTorch und Hugging Face Transformers umgesetzt. Weitere Methoden des maschinellen Lernens basieren auf der Softwarebibliothek Scikit-Learn. Die Rest-Schnittstelle ist als OpenAPI und mithilfe von Swagger UI implementiert. Zur Vorverarbeitung der Daten wird Pandas verwendet. Die Ergebnisse werden mit Plotly dargestellt.

Leistungsumfang

Folgenden Leistungen wurden umgesetzt:

  • Wissenschaftliche Recherche zu aktuellen Methoden des maschinellen Lernens im Kontext des Projektes
  • Verständliche Aufarbeitung der Ideen, Konzepte, Probleme und Einschränkungen zur Weitervermittlung an den Kunden
  • Implementierungen der Software, also Zusammenführen verschiedener Datenquellen; Entwicklung, Anpassung und Einsatz der Klassifikationsmodelle und Auswertungsmethoden
  • Ausführung der Experimente auf passender Hardware mit Grafikkarten-Beschleunigung
  • Präsentation und Beratung zu den Ergebnissen
  • Veröffentlichung als Open‑Source-Software auf GitHub

Demo

Die trainierten Klassifikationsmodelle können in folgender Online-Demo getestet werden:

dcs.knopflogik.de
Jetzt ausprobieren!

Wir freuen uns auf Ihre Anfrage

Eine Nachricht schreiben

Diese Nachricht wird Ende-zu-Ende-verschlüsselt und kann nur von der Geschäftsleitung gelesen werden.

Per Telefon

+49-391-40594560
(Mo. ‒ Fr., 9 ‒ 17 Uhr)

Folge Uns

GitHub, LinkedIn

  • Navigation

    • Start
    • Leistungen
    • Kompetenzen
    • Projekte
    • Kontakt
  • Kontakt

  • Einstellungen

  • Rechtliches

© 2021–2024, knopflogik GmbHversion ac31bea in production mode
Die aktuelle Sprachauswahl als Cookie speichern?
Change to English? / Auf Englisch lesen?
Die Auswahl des Dunklen Modus als Cookie speichern?
Alle Cookies dieser Website wurden erfolgreich gelöscht.
Aktuell werden auf dieser Website keine Cookies gespeichert.