Programmierprojekt "Implementierung einer Grammatik zur Übersetzung von Discourse Representation Structures in eine formale Semantic Web Query Language"

BearbeiterIn: Michael Amsler

Betreuerin: Esther Kaufmann (http://www.ifi.unizh.ch/ddis/people/estherkaufmann/)
Ansprechpartnerin CL: Alexandra Bünzli

Einführung

Das Semantic Web ist die Vision einer verteilten, dynamisch wachsenden Knowledge Base auf der Basis von formaler Logik. Die meisten Benutzer scheinen jedoch ein Problem schon mit den einfachsten Boolschen Ausdrücken zu haben; das Semantic Web und dessen formale Abfragesprachen (z.B. RDQL, SPARQL) sind weit weg von ihrem Verständnis. Wie können wir also den Benutzern helfen, Anfragen an ein Web von Logik zu formulieren, das sie nicht zu verstehen scheinen? Eine oft vorgeschlagene Lösung ist der Gebrauch von natürlicher Sprache für Anfragen wie auch zur Spezifikation von Wissen. Die Entwicklung von Systemen, die natürliche Sprache zulassen, benötigt allerdings rechenintensive Algorithmen, die auf grossen Mengen Hintergrundwissen basieren, was die Systeme fachbereichsabhängig und für andere Gebiete oder Applikationen fast unanwendbar macht.

Eine Möglichkeit, den Benutzer von der Last formaler Abfragesprachen zu befreien und gleichzeitig die Abhängigkeit von einem Fachgebiet zu vermeiden, ist die Verwendung einer kontrollierten natürlichen Abfragesprache. Eine solche kontrollierte Abfragesprache ist Attempto Controlled English (ACE), eine Untermenge von natürlichem Englisch. In einem Projekt namens SWAT (Semantic Web Ace Transformer) wurde ein Interface entwickelt, das die Formulierung von Anfragen in ACE erlaubt. Jede ACE-Anfrage wird in eine Diskursrepräsentatonsstruktur übersetzt, welche wiederum mithilfe einer Übersetzungsgrammatik (in Prolog) in eine N3-basierte Semantic-Web-Abfragesprache übersetzt wird.

Eine erste Evaluation des implementierten Prototyps hat sehr gute Resultate ergeben und gezeigt, dass der Ansatz durchaus vielversprechend ist. Im vorliegenden Programmierprojekt geht es nun darum, eine saubere und vollständige Implementierung der DRS-zu-N3-Übersetzungsgrammatik vorzunehmen sowie die Einbindung von Synonymen mithilfe von WordNet, um den Recall des Interfaces zu erhöhen.

Ziel und Zweck

Implementierung und Evaluation einer Übersetzungsgrammatik, die Discourse Representation Structures in eine N3-basierte Semantic Web Abfragesprache übersetzt und mithilfe von WordNet Synonyme integriert.

Arbeitsschritte

Implementierung der Übersetzungsgrammatik in Prolog
Einbindung der Prologversion von WordNet
Evaluation des Ansatzes anhand eines vorhandenen Datensatzes (Knowledge Base, Anfragen und dazugehörige Antworten)

Anforderung

Prologkenntnisse
Englischkenntnisse (Der technische Bericht kann in Deutsch oder Englisch verfasst werden, je nach Belieben.)
Interesse an Techniken/Methoden des Semantic Web

Literatur/ Links:

SWAT: http://www.ifi.unizh.ch/ddis/research/semweb/talking-to-the-semantic-web/
ACE: http://www.ifi.unizh.ch/attempto/home/index.html
Controlled Natural Languages web page: http://www.ics.mq.edu.au/~rolfs/controlled-natural-languages/
WordNet: http://wordnet.princeton.edu/
Semantic Web: http://de.wikipedia.org/wiki/Semantic_Web, http://www.w3.org/2001/sw/
N3 Query Language: http://www.w3.org/DesignIssues/N3QL.html