Illustration des Zusammenhangs zwischen natürlicher Sprache und Methoden zur Wissensrepräsentation

Erstellt am 22.01.09 von Markus, keine Kommentare, Tags: Informatik,

Dieses Multimediaprojekt ist im Masterstudiengang "Multimedia Engineering" der Hochschule Wismar entstanden und beschäftigt sich mit der Abstrahierung von natürlichsprachlichen Aussagen. Als Wissensbasis wurde eine Ontologie, die in einer Oracle 11g Datenbank gespeichert wurde, eingesetzt.

Einleitung

Die Sprache ist eine der wichtigsten Kommunikationsformen des Menschen. Es liegt folglich nahe, sie auch zur Bedienung von Maschinen zu verwenden. Doch heutzutage erstrecken sich viele Sprachverarbeitungssysteme oft nur auf das simple Erkennen von Schlagwörtern. Dies ist für den Menschen unkomfortabel und führt oftmals zu zweideutigen Informationen. Die gesamte Sprache maschinell zu verarbeiten ist jedoch (heutzutage) unmöglich, da diese nicht nur aus dem gesprochenen Wort besteht, sondern auch Umgebungsinformationen, Erfahrungen, Emotionen und Informationen aus dem Gesprächsverlauf beinhaltet. Im Blickpunkt der aktuellen Forschung steht die Aufgabe, aus sprachlichen Informationen, die für die Weiterverarbeitung elementaren Bestandteile zu extrahieren und entsprechend zu verarbeiten. Der Schwerpunkt dieser Arbeit besteht in der Gestaltung einer Schnittstelle zum Informationsextraktionsmodul und der Möglichkeit aus den auf diesem Wege ermittelten Daten eine Suchanfrage zu generieren, um aus den Ergebnissen eine Antwort erzeugen zu können. Hierzu werden zwei abgegrenze Domänen aus dem Tourismusbereich und der Haussteuerung (Smart Living) betrachtet.

Oracle 11g

Als Alternative zur Speicherung des OWL-Netzes in einer XML-Datei bietet sich das Ablegen in einer Datenbank an. Oracle bietet in der aktuellen Version 11g die Möglichkeit, OWL-Netze abzuspeichern und Inferenzen zu berechnen. Zur Abfrage kann ein SPARQL-Befehl in eine SQL-Anfrage integriert werden. Um auf die Datenbank zugreifen zu können, bietet sich die JDBC-Schnittstelle für Java an. Hierzu wird zunächst die entsprechende Bibliothek eingebunden und der Treiber geladen: Class.forName(oracle.jdbc.driver.OracleDriver). Nach Verbindung mit der Datenbank über den entsprechenden Connection-String jdbc:oracle:thin:@10.10.20.20:1521:owl, "OWLUSER", "test" kann nun eine Anfrage gestellt werden. Die Syntax ist dabei eine Mischung aus SQL und SPARQL. Das folgende Beispiel erfragt alle Instanzen, die über das Prädikat in verbunden sind: SELECT x,y
FROM TABLE(SEM_MATCH('(?x :in ?y)',
SEM_Models('owl'), null, SEM_ALIASES(SEM_ALIAS('',
'http://et.hs-wismar.de/natlab/owltest#')), null))
Alternativ kann eine Verbindung auch über .NET hergestellt werden. Hierzu wird der Oracle Data Provider for .NET benötigt. Dieser beinhaltet eine Minimalversion des Oracle Clients und muss auf jedem Rechner, auf dem die Applikation laufen soll, installiert werden. Weiterhin wird über ODP.NET das Assembly Oracle.DataAccess bereitgestellt, das in das Visual Studio-Projekt eingebunden werden muss. Dieses dient als Schnittstelle zwischen .NET und dem Oracle Client.

Zunächst wird wieder ein Connection-String benötigt. Dieser lautet wie folgt: Data Source=(DESCRIPTION=(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.10.20.20)(PORT=1521)))
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=OWL)));
User Id=OWLUSER;Password=test;
Anschließend kann die Anfrage aus dem letzten Beispiel abgesetzt werden. Die Ergebnisse liegen dann als ResultSet vor. Jede Zeile dieses Sets enthält die im Select-Teil enthaltenen Variablen (hier: x,y) als Spalten, die sich nun im Programm weiterverarbeiten lassen.

Zusammenfassung

In dieser Arbeit wurden Methoden der Wissensrepräsentation betrachtet und ein Modell zur Abstraktion von natürlichsprachlichen Aussagen ausgewählt, das die Schnittstelle zwischen Informationsextraktion und Reaktionsmanagement bildet. Die Wahl fiel auf das Frame-Konzept, da dieses einen geeigneten Kompromiss zwischen Abstraktion und ausreichendem Informationsgehalt bietet. Anschließend wurden die grundlegenden Charakteristika der Projekte "eOhr" und "Travel Consult" herausgearbeitet und entsprechende Ontologien entwickelt. Mit diesen wurden Beispielprogramme realisiert, anhand derer der Zugriff mittels Jena-Framework und Oracle-Datenbank getestet wurde. Für die weitere Bearbeitung wurde der Oracle-Ansatz ausgewählt.

Im Verlauf der Arbeit fiel auf, dass dabei nicht der gesamte SPARQL-Standard nutzbar ist, sodass Probleme bezüglich der Redundanz im Resultset nicht gelöst werden konnten. Hierzu wurden Alternativen für die Umsetzung im Jena-Framework erarbeitet.

Kommentare

Noch keine Kommentare.

Kommentar erstellen