• Keine Ergebnisse gefunden

Erzeugen von Indexlexikon-Einträgen

Das automatische Erzeugen von Indexlexikon-Einträgen geschieht im We-sentlichen durch Extraktion von Wörtern aus Lexika, Glossaren und Onto-logien. Wir haben in verschiedenen Projekten einfache Perl-Skripte dafür implementiert.

Beispielsweise haben wir das elektronische Computerlexikon FOLDOC [How05] für englische Begriffe verwendet. Jeder Begriff, der in FOLDOC erläutert ist, wird als Text-IE mit der Wortschatz-Kategorie „IT-Begriff“

in das Indexlexikon geschrieben. Für die Erfassung verschiedener Schreib-weisen wird jeder Begriff blind grammatikalisch gebeugt, indem ein -s, ein -ing oder ein -ed angehängt wird. Dieses Verfahren wendet den „stemming“-Algorithmus von Porter [Por80] in umgelehrter Richtung an. Abbildung 5.8 zeigt ein Beispiel. Durch das Verfahren entsteht zwar ein zu großes Indexvo-kabular, weil ein Teil der Formen so nie in natürlicher Sprache vorkommt, es deckt aber die meisten tatsächlichen Grammatikformen im Englischen ab.

__PRINT__[IT-TERM];PRINT;PRINTS;PRINTING;PRINTED

__PRINTER__[IT-TERM];PRINTER;PRINTERS;PRINTERING;PRINTERED

Abbildung 5.8: Beispielabschnitt des erzeugten IE-Lexikons.

Die überzähligen Formen stehen unbenutzt in den Hash-Tabellen des Text-parsers (siehe S. 45), stören aber die Performance des Systems nicht, da die Falldaten ja vor Start des Systems indiziert werden. Leider kann man die-ses Verfahren im Deutschen nicht anwenden, weil dort die Grammatikformen wesentlich komplexer sind. In Kapitel 6.4 ist ein etwas diffizileres Verfahren mit Hilfe von „Part-of-Speech-Taggern“ beschrieben.

Für die Modellierung eines Grundwortschatzes zu UNIX wurden alle Ein-träge der „UNIX-man-pages“ zu Text-IEs umgeformt. Diese haben leider keine automatisch erzeugten Grammatikformen, sondern müssen nach und nach manuell damit versorgt werden. Dennoch ist es schon eine große Hilfe, die Grundformen als Anhaltspunkt bei der Modellierung zu haben. In älte-ren Industrieprojekten außerhalb dieser Arbeit [KH98, LHK98a] haben wir firmeneigene Glossare, Leitlinien und Spezifikationen verwendet, um semi-automatisch die Indexlexika für die jeweilige Domäne aufzubauen.

Mit OntoCBR (siehe unten) kann man auch die Konzepte aus vorhan-denen Ontologien in Text-IEs transformieren.

Definition 5.4.1 (Ontologie nach [Gru93])

Eine Ontologie ist die formale, explizite Spezifikation einer ge-meinsamen Konzeptionalisierung.

Ontologien werden verwendet, um Konzepte und Beziehungen in einer Domäne zu modellieren. Die Ontologie sollte in einer formalen Sprache be-schrieben sein, die maschinell verarbeitet werden kann. Die gängigsten Spra-chen sind zur Zeit RDF (Resource Description Framework, siehe [McB04]) und als Erweiterung dazu OWL (Web Ontology Language, siehe [AH04]).

Ich benutze zur Erläuterung meiner Beispiele im Folgenden F-Logik [AL04]

als Ontologiesprache. RDF kann durch F-Logik wesentlich übersichtlicher repräsentiert werden. „Gemeinsame Konzeptionalisierung“ in Grubers Defi-nition heißt, dass eine Ontologie einen Konsens verschiedener individueller Sichtweisen abbildet. So ist zum Beispiel der Begriff „Flasche“ bei verschie-denen Firmen unterschiedlich belegt: Für die einen bezeichnet er einen Teil des Leerguts, für die anderen eine Getränkeflasche mit Inhalt. Diese beiden Sichtweisen führen zu einer empirischen Inkonsistenz, zum Beispiel inner-halb der is_part-Relation mit bierf lasche[is_part− >> leergut] aus der

einen Sichtweise und bier[is_part− >>bierflasche] aus der anderen. Kom-biniert man die beiden is_part-Paare in einer Ontologie, so wird unter der Annahme der Transitivität von is_part Bier auf einmal als Teil des Leer-guts betrachtet. Zum Aufbau einer gemeinsamen Ontologie gehört also die Konsensbildung zwischen beteiligten Personen oder Organisationen dazu.

Nicht alle Ontologien halten sich streng an Grubers Definition.WordNet [Fel98] zum Beispiel macht Abstriche bei der formalen, maschinenverständ-lichen Sprache zu Gunsten der Lesbarkeit für Menschen (vergleiche das Bei-spiel in Abbildung 5.9 auf S. 76).

Nach Fensel [Fen01] gibt es verschiedene Typen von Ontologien:

Domänenontologien beschreiben die wichtigsten Konzepte und Bezie-hungen in einer Domäne. Sie sind der am häufigsten anzutreffende Typ von Ontologien.

Generelle Ontologien definieren Begrifflichkeiten, die über Domänen-grenzen hinweg gelten, zum Beispiel Raum oder Zeit. Ein noch ungelö-stes Problem stellen unterschiedliche Konzepte auf der obersten Ebene dar.

Methodenontologienenthalten Konzepte, auf denen Problemlösungsme-thoden arbeiten, zum Beispiel „korrekter Zustand“ oder „verletzte Be-dingung“.

Aufgabenontologien beschreiben Begrifflichkeiten verschiedener Typen von Aufgaben, zum Beispiel „Ursache“, „Symptom“ oder „erzeugt“.

Ontologien für Metadaten liefern das Vokabular zur Beschreibung von Inhalten. Prominentestes Beispiel ist der Dublin Core [Dub05].

Die von mir betreute Diplomarbeit [Mül05] hat die Integration von Domä-nenontologien und dem TCBR-Ansatz aus Kapitel 4.3 näher untersucht. Das im Rahmen dieser Diplomarbeit entwickelte ToolOntoCBRhat unter ande-rem eine Importfunktionalität für spezielle Domänenontologien aus OWL.

Die Implementation in Perl demonstriert sie am Beispiel einer einfachen Ontologie zu Computerwissen. In dieser Beispielontologie (siehe S. 109) sind die Konzepte als OWL-Klassen modelliert, die verschiedenen Grammatikfor-men sind als Instanzen der Konzepte angegeben. Sind in der Ontologie keine Grammatikformen spezifiziert, müssen diese wie beim UNIX-Wortschatz von Hand nachmodelliert werden. Beim Import einer Ontologie in ein IE-Lexikon wird aus jeder OWL-Klasse ein IE-Name. Die zugehörigen Instanzen bilden das Indexvokabular dieses IEs. Die Transformation geschieht also vollauto-matisch.

Leider ist keines der hier beschriebenen automatischen Erzeugungsver-fahren vollständig: In beinahe jedem neuen Fall sind ein oder zwei wichti-ge Wörter enthalten, die bislang noch nicht im Indexlexikon stehen. Diese Beobachtung deckt sich mit der Erkenntnis aus dem Projekt Deutscher Wortschatz[Pro05] an der Universität Leipzig, dass die natürliche Sprache unglaublich kreativ verwendet wird und immer wieder neue Wörter geschaf-fen werden. So muss also mit Hilfe der tatsächlichen Falldaten das Lexikon überprüft und ergänzt werden, damit das Retrieval genaue Ergebnisse lie-fern kann. Der Zeitaufwand pro Fall, um wichtige zusätzliche Begriffe ins Lexikon einzutragen, variiert je nach Länge des Falls und je nach Erfahrung des Administrators. Zum Beispiel dauert beim ExperienceBookII (für eine Beschreibung des Systems siehe Kapitel 8) das Einpflegen eines neuen Falls inklusive der Erzeugung neuer Einträge im Ähnlichkeitslexikon (siehe unten) zwischen einer halben und zehn Minuten.