Share ZU:
20 December 2023 @ Hichem Bouricha

Ein Weg zur automatischen Erstellung einer Glossar-Definition.

Die Annahme, dass die Erstellung eines Glossars einfach ist, beruht möglicherweise auf der Vorstellung, dass es sich lediglich um eine Liste von Begriffen und ihren Definitionen handelt. Man könnte dazu neigen, Glossare als einfache Zusammenstellung von Wörtern und Erklärungen zu betrachten. Allerdings erfordert die Erstellung eines effektiven Glossars tatsächlich ein gewisses Maß an Fachkenntnissen und Sorgfalt

Wie kann man eine solche Aufgabe automatisieren?

Die neuen Technologien und die Verfügbarkeit einer unbegrenzten Anzahl an Datenquellen machen die automatische Erstellung von SE/RE-Artefakten scheinbar naheliegend. Dennoch ist es trotzdem nicht trivial. Oft denkt man, dass man mit online verfügbaren Wissensgraphen wie WordNet akzeptable Definitionen erzeugen kann oder dass große Sprachmodelle allein viele Probleme lösen können. Große Sprachmodelle sind vor allem gut darin, Grammatik zu korrigieren bzw. die Korrektheit von Sätzen zu prüfen oder gute Vorschläge zu generieren, wenn man sich gerne überraschen lassen würde. Das reicht allerdings nicht aus.

Die Minimierung des Knowledge Gaps der Generativen KI

Wenn große Sprachmodelle über Wiki Data oder ähnliches trainiert wurden, ist ihre Fähigkeit auf fachspezifischen Dokumenten solcher Modelle begrenzt. Um dieses Knowledge Gap zu minimieren, gibt es verschiedene Methoden wie Feintuning, Retrieval Augmented Generation (RAG) oder auch Information Extraction (IE). Die Methode, die am besten geeignet ist, hängt von vielen Faktoren ab, wie z.B. die Wiederverwendbarkeit der Daten oder die jeweilige Architektur.

Was ist Information Extraction (IE) und Text Mining?

Analog zu einem Schüler, der über ein neues Thema Fragen beantworten muss und noch kein Wissen darüber hat, würde er sich die Informationen aus zuverlässigen Quellen suchen, um dann vernünftige Antworten generieren zu lassen. Wenn man also kontextspezifische Artefakte wie ein Glossar generieren möchte, dann braucht man mindestens den Kontext. Der Kontext im Requirements- und Systems Engineering kommt nur aus Texten von verschiedenen Datenquellen wie z.B. PDF-Dokumente.

Text Mining ist eine Disziplin, die sich mit der Erkennung von Mustern in Texten befasst. Diese beinhaltet Konzepte wie beispielsweise die Klassifizierung von Texten oder die Analyse von Entitäten in den Texten. Informationsextraktion ist eine der Text-Mining-Techniken, mit der man Entitäten erkennen und extrahieren kann mittels Natural Language Processing (NLP)-Verfahren. Text Mining punktet umso mehr für die Zukunft durch effizientes Suchen nach Schlüsselbegriffen u.a., vor allem da 80% der globalen Daten bis 2025 unstrukturiert sein werden.[1]

Restrukturierung der unstrukturierten Texte durch die Extraktion von Schlüsselinformationen

Im operativen Bereich wird oft manuell nach den Schlüsselinformationen gesucht. Mit diesen Schlüsselinformationen kann man dann zuordnen, welche Kontexte zusammenhängen oder generell Inhalte für einen bestimmten Bedarf relevant sind. Die Herausforderung besteht jedoch darin, dass Schlüsselinformationen weit über die Gesamtheit des Textes verteilt sind.

Ein konkretes Beispiel ist eine Information, die manchmal nach vielen Seiten mittels eines Anhangs weiter erläutert wird. Dies ist zwar der klassische Ansatz, aber oft führt er zu Überforderung oder dazu, dass man wichtige Informationen in den Dokumenten übersieht.

Extraktion von Schlüsselinformationen – Praxiserfahrung

Mit unserem Joint NER- und Relation-Extraction-Modell sind wir in der Lage, Entitäten aus dem Text zu extrahieren und ihre Beziehungen darzustellen. Unser Konzept beinhaltet Entitäten wie System, Actor, Interface, Property oder State. Die Beziehungen, die wir zwischen den jeweiligen Entitäten extrahieren können, sind: has, interacts_with, defines und no_relation.

Abbildung 1: Beispiel für die Inferenz unserer kombinierten KI-Modelle.
Abbildung 2: Beispiel Triplet
Abbildung 3: Beispiel für die Sammlung von Entitäten und Beziehungen in einem heterogenen Knowledge Graph in Neo4j.

Generierung von Glossar Definitionen

Im Rahmen unserer Forschungsprojekte streben wir danach, sinnvolle Ergebnisse zu liefern und Proof-of-Concepts zu entwickeln.

Die Ende-zu-Ende-Pipeline beschreibt den gesamten Prozess, bei dem aus einem PDF-Dokument Text extrahiert wird. Anschließend werden mithilfe der KI-Modelle Triplets extrahiert, um Knowledge Graphen zu generieren. Diese Knowledge Graphen können die Beziehungen auf verschiedenen Ebenen erweitern, wodurch vorhandene Triplets amplifiziert werden. Die Kombination dieser Triplets durch eine geeignete Abfrage, zusammen mit einem großen Sprachmodell, führt zur Erstellung der Definition im Glossar. Je präziser und prägnanter die extrahierten Triplets sind, desto besser wird die Definition.

Abbildung 4: Unsere beispielhafte Ende-zu-Ende-Pipeline für die Generierung eines Glossars.

Beispiel Glossar Definition

Die folgenden Beispiele zeigen, wie man aus den zusammengestellten Triplets eine Glossardefinition erstellt.

Abbildung 5: Beispiel für Triplets, die nach einer Abfrage aus Neo4j stammen. Die Daten stammen aus Open-Source-Dokumenten.
Abbildung 6: Definition erstellt mit dem LLM-Mistral instruct v0 7B q4_k_s nach Kombination der oben gezeigten Triplets. Die Daten stammen aus Open-Source-Dokumenten.

Wichtig ist darauf zu achten, dass die Qualität der Triplets einen direkten Einfluss auf die Qualität der Definition hat. Je präziser die extrahierten Triplets sind, desto besser wird die Definition. Die Fähigkeit des LLMs, aus den Informationen mittels eines vernünftigen Prompts gute Sätze zu generieren, reicht aus. Wenn präzisere Formulierungen erforderlich sind, kann ein zusätzliches Feintuning durchgeführt werden.

Weiterer Untersuchungspunkt

Im Rahmen des Experiments hat bereits eine PDF-Seite ausgereicht, um all diese Informationen zu generieren. Wenn eine Entität aufgrund der Länge eines Dokuments mehrere Elemente aufweist, müssen die Triplets priorisiert werden. Dies stellt ebenfalls einen möglichen Forschungspunkt dar.

Quellen:

[1] https://www.forbes.com/sites/forbestechcouncil/2022/02/03/the-unseen-data-conundrum/