Natürlichsprachige Schnittstelle: Unterschied zwischen den Versionen
Zeile 73: | Zeile 73: | ||
=Weiterführende Beispiele für Sprachgesteuerte Systeme= | =Weiterführende Beispiele für Sprachgesteuerte Systeme= | ||
− | + | ||
− | |||
#Eine Seite, welche die verschiedenen Systeme vergleicht: http://ttssamples.syntheticspeech.de/deutsch/ </p> | #Eine Seite, welche die verschiedenen Systeme vergleicht: http://ttssamples.syntheticspeech.de/deutsch/ </p> | ||
Version vom 7. Juli 2011, 09:47 Uhr
Inhaltsverzeichnis
Einleitung
„Schnittstellen ermöglichen die Interaktion zwischen zwei Systemen. Schnittstellen, die die Interaktion zwischen Mensch und künstlichem System per Sprache ermöglichen, tragen daher oft die Bezeichnung „Natürlichsprachliche Schnittstelle“ (natural language interfaces).“, (Zitat: Michael Hess, 2005)
Bei einer natürlichsprachigen Schnittstelle unterscheidet man zwei Möglichkeiten der Interaktion:
- Einseitig natürlichsprachige Interaktion.
- Beidseitig natürlichsprachige Interaktion.
Einseitige Interaktion könnte dabei z.B. die natürlichsprachige Ausgabe eines Computers bzw. Systems sein, genauso wie die natürlichsprachige Anfrage eines Nutzers an den Computer bzw. das System. Wichtig dabei ist, dass die Interaktion nur von einer Seite natürlichsprachlich geführt wird und die andere, zum Beispiel durch Textein und -ausgabe, interagiert.
Beidseitig natürlichsprachige Interaktion setzt voraus, dass beide Interaktionspartner über natürlichsprachige Funktionen verfügen und diese als Kommunikationsmittel einsetzen.
Mit Verweis auf das Kommunikationsmodell von Shannon und Weaver ist es natürlich wichtig, dass beide Kommunikationspartner über den selben Code verfügen, damit sinnvolle Kommunikation zustande kommen kann.
Natürlichsprachige Kommunikation mit künstlichen Systemen
Natürlichsprachige künstliche Systeme könnten dabei zum Beispiel Informationssysteme wie das Internet, Datenbanken und Expertensysteme sein oder auch physische Systeme, wie zum Beispiel Roboter, Haushaltsgeräte, Rollstühle, Diktiermaschinen oder Betriebssysteme etc..
Die nachfolgenden Ausführungen beziehen sich auf die oben aufgeführten Informationssysteme, und sind nur bedingt übertragbar auf die genannten physischen Systeme, die hier nur vollständigkeitshalber erwähnt sein sollten.
Bei einer beidseitig natürlichsprachigen Interaktion unterscheidet man zwischen „Frage-Antwort-Systemen“ und „Dialogsystemen“.
Frage-Antwort-Systeme haben keine Dialogkomponente. Ihre Kommunikation beschränkt sich darauf, auf die, dem System bekannten, Fragen mit Standard-Antworten zu antworten. Dies sind meist fertig gespeicherte, natürlichsprachlich formulierte Antworten.
Dialogsysteme sind im Gegensatz dazu lernfähig. Sie merken sich bereits gestellte Fragen und gegebene Antworten und beziehen diese in ihrem Problemlösen ein. Dialogsysteme können, über ihre Antworten hinaus, auch Rückfragen stellen und passende Ergänzungen dazu anführen.
Erwähnt sei weiterhin, dass einige Systeme über Spracherkennungskomponenten und Synthesekomponenten zur Interaktion in gesprochener Sprache verfügen (siehe: Michael Hess, 2005).
Sprachgenerierung
Die Textgenerierung beschäftigt sich damit, wie man einem Computer beibringen kann, einen sinnvollen, grammatikalisch richtigen und kohärenten Text zu formulieren. Dabei umfasst die Textgenerierung zwei wichtige Komponenten: zum einen die strategische Komponente und zum anderen die taktische Komponente.
Die strategische Komponente beschäftigt sich mit der Bestimmung dessen, was gesagt werden soll. Sie verwendet dabei Such- und Planungsstrategien der Künstlichen Intelligenz.
Die taktische Komponente beschäftigt sich damit, wie etwas gesagt werden soll. Sie bestimmt dabei die Struktur des Textes und trifft grammatikalische und lexikalische Entscheidungen, um die Lesbarkeit eines Textes zu erhöhen. Ein sinnvoller Text kann nur durch die Kombination der beiden Komponenten erzeugt werden.
Maschinelle Verarbeitung gesprochener Sprache
Erzeugen gesprochener Sprache: Sprachsynthese
Die Sprachsynthese setzt sich hauptsächlich damit auseinander, wie man es einem System möglich macht, aus einem geschriebenen Text automatisch gesprochene Sprache zu erzeugen. Dabei gibt es einige Probleme, die die Morphologie einer Sprache betreffen.
Um gesprochene Sprache zu erzeugen, spaltet die Sprachsynthese die einzelnen Wörter in Wortteile auf. Diese könnten z.B. Phoneme, Morpheme, Diphone oder Halbphoneme sein. Je kleiner die einzelnen Wortteile dabei sind, desto schwieriger ist es allerdings, einen flüssigen Redefluss zu erzeugen. Deswegen verwendet man oft Halbphoneme und Diphone statt Phoneme.
Ein weiteres Problem bei der Sprachsynthese ist die Homographie von Wörtern.
Hier seien zwei Beispiele für Homographe angeführt:
- Übersetzen: bei „einen Text übersetzen“ liegt die Betonung auf der dritten Silbe, wohingegen bei „mit einem Schiff übersetzen“ die Betonung auf der ersten Silbe des Wortes liegt.
- Modern: bei „die Holzscheite modern vor sich hin“ liegt die Betonung auf der ersten Silbe wohingegen bei „der Pullover ist modern“ die Betonung auf der zweiten Silbe liegt.
In solchen Fällen muss das System in der Lage sein aus der Syntax und auch der Semantik die richtige Lesart herauszufinden.
Ein weiteres wichtiges Problem ist die Satzmelodie eines Textes; hierbei muss ein System den Sinn des Satzes „verstehen“. Die Satzmelodie kann manchmal sogar, selbst bei gleichen Sätzen, einen Bedeutungsunterschied tragen. Ein sehr einfaches Beispiel wäre, wenn man einen einfachen Aussagesatz alleine durch die Melodie als Frage umformuliert:
„Das Haus steht leer“, oder „Das Haus steht leer?“. Hierbei könnte das System lediglich durch die Interpunktion zur richtigen Lesart finden. Schwierig wird es, wenn selbst die Interpunktion identisch ist.
Ein weiteres Problem ergibt sich selbst bei den alltäglichsten Nachrichtentexten, wenn sich z.B. Fremdwörter in dem Text befinden, bzw. Eigennamen oder Abkürzungen verwendet werden. Ein Beispielsatz dafür wäre:
„Dr. A. Smithe von der NATO (und nicht vom CIA) versorgt z.B. - meines Wissens nach - die Heroin seit dem 15.3.00 tgl. mit 13,84 Gramm Heroin zu 1,04 DM das Gramm.“
Auf der hier verlinkten Page über Sprachsynthese findet man eine Auflistung von natürlichsprachigen Systemen, mit denen genau dieser Satz formuliert wurde.
Hierbei sind die Unterschiede der einzelnen Systeme bei der Aussprache und Satzmelodie gut zu hören.
Erkennen gesprochener Sprache: Spracherkennung
Das Erkennen gesprochener Sprache ist weitaus schwieriger als das Erzeugen gesprochener Sprache. Wortübergänge, auch Junkturen genannt, stellen hier das zentrale Problem dar.
Das Problem setzt sich aus zwei Teil-Problemen zusammen:
- Es ist sehr schwierig für das System, die Sprechpausen zu realisieren.
- Oft werden Phoneme durch die Produktion anderer Phoneme vor und nach dem eigentlichen Phonem beeinflusst. Dies nennt man auch Koartikulation. Ein englischsprachiges Beispiel hierzu wäre das Wort „the“, das, je nachdem welches Wort folgt, anders ausgesprochen wird.
Zentrale Begriffe bei der Koartikualtion sind auch die Assimilation, die Epenthese und die Deletion.
Die Leistungsfähigkeit eines Systems hängt stark von seinem Wortschatz ab. Dabei ist das Fachvokubar unerlässlich für ein gut funktionierendes System. Wenn man sich dabei die Zahlen der bekannten Wörter eines Systems anschaut, sollte man im Hinterkopf behalten, dass der Wortschatz einer Sprache meist in dem Bereich von mehreren Hunderttausend Wörtern angesiedelt ist.
Im Folgenden sind drei Exempel-Wörterbücher aufgeführt:
- IBM ViaVoice.
- Dragon ‘‘Dragon NaturallySpeaking Produktsuite’’.
Schließen möchte ich diesen Absatz mit einem Zitat:
„Spracherkennungssysteme müssen das grundlegende Problem lösen, die richtigen (d.h. vom Sprecher intendierten) Untereinheiten (Phoneme, Silben, etc.) im Sprachsignal zu erkennen. Die vielen Faktoren, die das Sprachsignal beeinflussen (Störgeräusche, Schnupfen, artikulatorische Einflüsse etc.), und das Zusammenbringen von Evidenzen für die richtige Interpretation von verschiedenen linguistischen Ebenen machen Spracherkennung so schwierig“ (Michael Hess, 2005).
Weiterführende Beispiele für Sprachgesteuerte Systeme
- Eine Seite, welche die verschiedenen Systeme vergleicht: http://ttssamples.syntheticspeech.de/deutsch/
Quelle
- Hess, Michael (2005): Einführung in die Computerlinguistik. Online verfügbar unter: http://www.ifi.unizh.ch/cl/hess/classes/ecl1/ecl1.0.pdf. Datum des letzten Zugriffes: 18.01.2006