voiceportale medienpraxis ii: edv tobias göbel bernhard schröder
TRANSCRIPT
VoicePortaleMedienpraxis II: EDVVoicePortaleMedienpraxis II: EDV
Tobias GöbelBernhard Schröder
2
EinführungEinführung
Speech/Dialog/Voice ApplicationsSprachdialogsystemeSprachanwendungen
Natürlichsprachliche AuskunftssystemeVoice-Portale
.
.
3
Dialogsysteme in der PraxisDialogsysteme in der Praxis
„Einfache“ gesprochensprachliche Frage-Antwort-Systeme
I.d.R. keine (tiefen-)linguistische VerarbeitungKeine DiskursanalyseForm-Filling oder Menüstrukturen
Anwendungen:InformationsportaleAuskunftssysteme
TelefonbankingEntertainment
...
4
Die Komponenten eines DialogsystemsDie Komponenten eines Dialogsystems Sprachsynthese (Text-to-Speech, TTS)
Automatische Konvertierung von orthographischem Text in gesprochene Sprache (= Soundfiles)Alternativ: voraufgenommene Sprache verwenden
Spracherkennung (Automatic Speech Recognition, ASR)
Automatische Konvertierung gesprochener Sprache in (orthographischen) Text mit Hilfe von Grammatiken[DTMF-Erkennung, Tonwahl]
5
Voice BrowserVoice Browser Parst und interpretiert die Dialogbeschreibungssprache
(hier: VoiceXML) Arbeitet die Dialoge prozedural ab, steuert Synthese
und Erkennung
6
BeispielanwendungenBeispielanwendungen
Auskunftssystem Entertainment Informationsportal
Klingeltöne „talking t-zones“Klingeltöne „talking t-zones“
7
Erstellung einer SprachanwendungErstellung einer Sprachanwendung
1. Erstellung eines Konzepts– Was soll die Anwendung leisten– Wer soll die Applikation anrufen? (Benutzerprofile)
2. Voice User Interface (VUI) Design– Dialog Flow erstellen – Personas definieren– Prompts ausformulieren
3. Technische Realisierung– Implementierung des Dialogs (VoiceXML, Grammatiken etc.)– Verfeinerung des Dialogflusses
4. Deployment5. Evaluation, Anpassungen L
ife-
cycl
e M
anag
emen
tL
ife-
cycl
e M
anag
emen
t
8
VUI DesignVUI Design Verständliche, intuitiv nachvollziehbare Benutzerführung
Klare Navigationshinweise (je nach Design der Anwendung) Wichtig: eindeutige Fragen stellen, die wenig Spielraum
für allzu freie Antworten lassenBeispiel: KlingeltöneKlingeltöne
– s. Soundfiles
Abwechslung durch „Random Prompting“
9
VUI Design: Event HandlingVUI Design: Event Handling Event Handling: Abfangen bestimmter Ereignisse
während des DialogablaufsNoInput: Der Anrufer schweigt, obwohl das System auf Input wartet (oder: das System hat ihn nicht gehört)NoMatch: Der Anrufer sagt etwas, was nicht zur Situation/Frage passt ( was nicht von den aktiven Grammatiken gematcht werden kann)Help: Der Anrufer verlangt nach weiteren NavigationshinweisenError: Laufzeitfehler (der Plattform)
– Internetverbindung unterbrochen– Fehler in der Verarbeitung von Ressourcen zur Laufzeit (z.B. Syntaxfehler in
Grammatiken)– ...
10
VoiceXMLVoiceXML Eine XML-basierte Sprache zur Beschreibung von
natürlichsprachlichen Mensch-Maschine-DialogenBasiert auf Entwicklungen von Motorola (VoxML), IBM (SpeechML), AT&T und Lucent TechnologiesVersion 1.0 als W3C Note (05/2000)Seitdem in der Hand der W3C Voice Browser Working GroupVersion 2.0 als Candidate Recommendation (02/2003)
Formulare und Menüs als grundlegende Dialogkonstrukte
11
Computer: Herzlich Willkommen. Welchen Film möchten Sie sehen?Anrufer: Herr der RingeComputer: An welchem Tag möchten Sie „Der Herr der Ringe“ sehen?Anrufer: Am MontagComputer: Wie viele Karten möchten Sie reservieren?Anrufer: DreiComputer: Ich reserviere für Sie drei Karten für „Der Herr der Ringe“
am Montag. Ihre Reservierungsnummer lautet...
Computer: Herzlich Willkommen bei der Kinokartenbestellung. Wie kann ich Ihnen helfen?
Anrufer: Ich hätte gerne drei Karten für Herr der RingeComputer: An welchem Tag möchten Sie „Der Herr der R...Anrufer: Am MontagComputer: Ich reserviere für Sie drei Karten für „Der Herr der Ringe“
am Montag. Ihre Reservierungsnummer lautet...
Directed
Dialog
Directed
Dialog
Mixed
-Initiative
Mixed
-Initiative
DialogvariantenDialogvarianten
12
Vor- und NachteileVor- und Nachteile
Directed Dialog:Dialoge sind klar und eindeutigSystemhinweise unmissverständlichDialoge wirken starr, unflexibel
Mixed-Initiative Dialog:Dialoge wirken natürlicherDialoge können effizienter (=kürzer) werdenFehleranfällig
13
Aufbau einer VoiceXML-AnwendungAufbau einer VoiceXML-Anwendung
Application
Application
Root Document
Document
DialogDialogDialog
Document
DialogDialogDialog
Document
DialogDialogDialog
14
MenüsMenüs Bieten eine Auswahl an Optionen, aus denen
der Benutzer eine wählen kann
<?xml version="1.0"?><vxml version="1.0" application="root.vxml"><menu id="main"> <prompt>Bitte wählen Sie: <enumerate/> </prompt> <choice next="#lehre">Lehrveranstaltungen</choice> <choice accept="approximate" next="#cl"> Informationen zur Computerlinguistik </choice> <choice accept="approximate" next="#phonetik"> Informationen zur Phonetik </choice></menu>
15
FormulareFormulare Sammeln Benutzereingaben Form Items
Input Items:– <field>: Definition eines Formularfelds– <record>: Sprachaufnahme einer Benutzereingabe– <transfer>: Anrufweiterleitung zu einer anderen Nummer– <subdialog>: Ausführung eines Subdialogs („Function Call“)
Control Items:– <block>: enthält ausführbaren Code– <initial>: dient als Startpunkt für Mixed-Initiative-Dialoge
16
FormulareFormulare
Die Felder eines Formulars entsprechen Variablen, die gefüllt werden sollen
<field name=„stadt“> Diese Variablen können verarbeitet werden:
<if cond=„stadt==‚Bonn‘“> <goto next=„Bonn.vxml“ /></if>
<if cond=„stadt“> <goto expr=„‘wetter.vxml#‘+stadt“ /></if>
17
Formular - BeispielFormular - Beispiel<?xml version="1.0"?><vxml version="1.0" application="root.vxml"><form> <block> <prompt>Herzlich Willkommen!</prompt> </block> <field name="stadt"> <prompt>Für welche Stadt wünschen Sie eine Wetterauskunft? </prompt> <grammar type="application/gsl"> [berlin bonn frankfurt hamburg stuttgart] </grammar> </field>..
18
.
. <field name="zeit"> <prompt>Für wann wünschen Sie die Vorhersage für <value expr="stadt"/>? </prompt> <grammar type="application/gsl"> [heute morgen übermorgen] </grammar> <catch event="nomatch noinput help"> Sagen Sie heute, morgen oder übermorgen </catch> </field> <filled namelist="stadt zeit"> <submit next="weather.php" namelist="stadt zeit"/> </filled></form></vxml>
19
VoiceXML TutorialsVoiceXML Tutorials W3C-Seiten
Homepage der Voice Browser Working Group: www.w3c.org/VoiceSpezifikation VoiceXML: www.w3.org/TR/voicexml20
Tutorials/Referenzenwww.w3.org/Voice/Guide/www.voxpilot.com/help/helpTagref.html http://cafe.bevocal.com/docs/tutorialwww.fi.muni.cz/~gazi/VoiceXML/tutorial.html...
20
Form Interpretation AlgorithmForm Interpretation Algorithm Beschreibt detailliert die Vorgehensweise von Voice
Browsern bei der Abarbeitung eines Dialogs Vier Phasen:
Initialization (Variablen, Zähler etc.)Selection (Auswahl des nächsten Dialogelements)Collection (Abspielen der Prompts, Aktivierung der Grammatiken, Sprach-/DTMF-Erkennung)Processing (Event Handling, Verarbeitung der Eingabe)
Explizite Navigation durch<goto>, <subdialog>, <submit> und <link>
Loo
p
21
GrammatikenGrammatiken
Dienen zur Eingrenzung möglicher Benutzereingaben
Verbesserung der Spracherkennung Haben Gültigkeitsbereich (Scope)
Es existieren verschiedene Formate
<link next="menu.vxml"> <grammar>Hauptmenü</grammar></link>