Dreisatz
Ein Dialog mit einem Menschen besteht aus Sicht eines Computerprogramms aus drei sich wiederholenden Schritten: Erst muss es den Beitrag seines Gesprächspartners verstehen, dann die richtige Antwort suchen und diese schließlich in natürlicher Sprache ausgeben.
Für die Interpretation einer Eingabe verwendet Freehal verschiedene Standardkomponenten der maschinellen Sprachverarbeitung. Ein Stemmer (der Begriff kommt aus dem Englischen: Stem = Wortstamm) erkennt den Stamm jedes Worts, sodass es verschiedene Formen demselben Wort zuordnen kann. Ein Part-of-Speech-Tagger erkennt die grammatische Funktion, unterscheidet also beispielsweise Substantive von Verben. Zudem helfen statistische Methoden wie Hidden-Markov-Modelle bei der Interpretation einer Äußerung.
Freehal kommt mit einem begrenzten Wissensschatz daher, lernt aber aus den Aussagen seines menschlichen Gegenübers. Es speichert Begriffe in einem semantischen Netz, das Fakten logisch miteinander in Verbindung bringt (Abbildung 4). Dieses Verfahren ermöglicht Schlussfolgerungen und damit Erkenntnisse, die das Programm selbstständig erschlossen hat. Im Hintergrund arbeitet eine SQLite-Datenbank.
Freehal kennt im Auslieferungszustand zirka 60000 deutschsprachige Begriffe und 100000 Verknüpfungen. Verbindungstypen heißen beispielsweise "Ist ein" oder "Ist Teil von". So gibt es etwa einen Datenbankeintrag "Finger", den das semantische Netz über eine Ist-Teil-von-Relation mit "Hand" und über eine Ist-ein-Relation mit "Körperteil" verknüpft. Der Benutzer trainiert seine Freehal-Datenbank, indem er Aussagen eingibt, die das Programm in Relationen übersetzt. Das System stellt bei Bedarf Rückfragen, beispielsweise nach dem grammatischen Geschlecht (Genus) eines neu erlernten Worts, wenn es dieses nicht erkennt. Eine optimale Vernetzung ist erreicht, wenn jeder Begriff über höchstens vier oder fünf Zwischenschritte mit jedem anderen verbunden ist.
Zunächst gibt Freehal seine Antworten schriftlich, doch das Programm beherrscht optional auch akustische Sprachausgabe. Als Wiedergabesoftware verwendet es Mplayer, zur Sprachsynthese nutzt es ein Onlinesystem des Hauptentwicklers Tobias Schulz.

|
Abbildung 4: Ein semantisches Netz bringt Begriffe in Bezug zueinander, sodass für Freehal automatische Rückschlüsse über neu erlernte Wörter und Sachverhalte möglich werden.
|
Freehal funktioniert nach dem Client-Server-Prinzip: Der Kernel genannte Server kümmert sich um die Verarbeitung von Ein- und Ausgaben. Der Benutzer kommuniziert mit ihm über verschiedene Oberflächen. Es stehen sowohl ein QT-basiertes GUI als auch ein Textclient zur Verfügung, die entweder lokal oder über das Netzwerk zum Server Kontakt aufnehmen; so können auch mehrere User eine Freehal-Installation trainieren. Es gibt zudem eine PHP-Schnittstelle, die sich vor allem eignet, um das Programm in eine Webseite einzubinden.
Die Freehal-Homepage gewährt mit diesem Interface einen ersten Blick auf die Fähigkeiten des Programms. Auch diese Freehal-Onlinedemo lernt stetig weiter und kennt bereits mehr als 800000 Begriffe sowie fast 200000 Relationen. Freehal versteht auch Englisch, die Onlinedemo dafür allerdings nur etwa 20000 Wörter und 80000 Relationen.
Alte Wurzeln
Freehal gibt es schon seit 2006, das Projekt trug aber bis Mai dieses Jahres den Namen Jeliza. Diese Bezeichnung entstand aus der Verschmelzung der Wörter Java, der verwendeten Programmiersprache, und Eliza, dem Namen eines der ersten Dialogprogramme, das der Informatiker Joseph Weizenbaum im Jahr 1966 entwickelt hat. Inzwischen setzen die Freehal-Programmierer vor allem auf die Programmiersprache Perl, womit das J des alten Namens seinen Sinn verloren hat. Freehal verweist nun auf den Computer Hal 9000 des Raumschiffs Discovery im Film "2001: Odyssee im Weltraum" von Stanley Kubrick.
Im Vergleich zu den psychischen Schwierigkeiten des fiktiven Vorbilds hat Freehal allerdings noch mit grundlegenderen Problemen zu kämpfen. Sie spielen sich in erster Linie auf sprachlicher Ebene ab: Wie zurzeit jede derartige Software schafft es auch Freehal nicht immer, natürliche Sprache richtig zu interpretieren und zu erzeugen. Schon bei aus menschlicher Sicht einfachen Sätzen geraten grammatische Grundlagen wie Satzbau, Tempus, Numerus und Kasus durcheinander und auch die Inhalte ergeben oft wenig Sinn.
| Whitepaper |
|
Usage Landscape Enterprise Open Source Data Integration
Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.
Download PDF (Registrierung erforderlich)
|
|
Daten Migration - Eine Publikation von Bloor Research
Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.
Download PDF (Registrierung erforderlich)
|
Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links"
nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedrucken Fassung entsprechen.
|