Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity Řečová interakce a sociální sítě Luděk Bártek Fakulta informatiky Masarykova univerzita Brno podzim 2018 Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Q Způsoby implementace dialogových rozhraní Q Dialogová komunikace Q Standardy W3C Voice Browser Activity O VoiceXML Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML 1 o Prostředky logického programování (Prolog, ...) • uchování databáze znalostí - pomocí faktů v jazyce Prolog o průběh dialogu byl řízen interpretem jazyka na základě pravidel pro logické programování. • Vyšší programovací jazyky • C - příklad systém AudiC vyvíjený na Fl; dialogový systém na programování v jazyce C • ... • Proprietami nástroje - CSLU Toolkit • RAD nástroj pro tvorbu a výzkum řečové komunikace - vyvinut na Center for Spoken Language Understanding of Oregon Graduate Institute (nyní Oregon Health&Science University) Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML o Značkovací jazyky pro popis dialogových rozhraní • 2. polovina 90. let 20. století. • VoxML (1999) o Standardy W3C VoiceBrowser Activity - přelom století Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Standardy W3C Voice Browser Activity 9 VoiceXML - popis dialogové strategie. • SRGS - popis gramatiky pro rozpoznávání řeči. • SISR - doplnění SRGS o sémantickou interpretaci promluvy. • SSML - popis prozodických vlastností generované promluvy. • a další viz stránky W3C Voice Browser Working Group Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML PSTN: • Uživatel používá ke komunikaci veřejnou telefonní sít. • Počítač je připojen k veřejné telefonní sítí - závěrečná digitalizace probíhá na straně poskytovatele služby (server(y) telefonní ústředna poskytovatele, ...). VolP: • Komunikace digitalizována na straně uživatele: • uživatelův počítač • VolP telefon. Komunikace uživatelský počítač server: prostřednictvím některého VolP protokolu: • SIP • H.323 proprietami protokoly (Skype, ...) Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML • Textová komunikace: • SMS o IM webové rozhraní • DTMF • Vyrovnání rozdílů mezi různými protokoly - standard Ca Control XML Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML poznávání řeči a sémantická interpretace Je vhodné umožnit co nejpřirozenější komunikaci - nutnost rozpoznávání souvislé promluvy a schopnost korektního určení zadaných dat. • Relativně nízké úspěšnost rozpoznávání - pro zvýšení se používají gramatiky (JSGF, SRGS, ...). Získání relevantních dat z rozpoznané promluvy - sémantická interpretace. • Bývá součástí gramatiky pro rozpoznávání řeči - pravidlům je přiřazena sémantická interpretace. • atribut • dceřiný element. • Lze provádět odvozování sémantiky na základě sémantiky částí promluvy - pomocí výrazů v jazyce ECMAScript. • JSGF - součást specifikace. • SRGS - související standard SISR. Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Řízení průběhu dialogu Průběh dialogu řízen dialogovou strategií. • Jazyky pro zápis dialogové strategie: • VoiceXML • CalIXML • Jedná se o značkovací jazyky - nutnost interpretace VoiceXML platformy: • J VoiceXML • VoiceGlue • Voxeo (Aspect) P rop hecy • Tellmee [24]7 Studio • OptimTalk Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Generování promluvy a syntéza řeči • Generování promluvy: • Rámce výstupních promluv jsou součástí dialogové strategie (VoiceXML). • Vlastní promluva zapsána pomocí jazyků pro popis syntetizované řeči: • SABLE • SSML Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML laiogove Korpusy • Dialogový korpus • rozsáhlá databáze průběhů dialogů • mluvená resp. textová • textový může obsahovat buď přepisy hlasových dialogů nebo záznam textové komunikace. • Může obsahovat navíc informace: • účastníci (věk, pohlaví, obeznámenost s tématem, ...) • téma dialogu • výsledek dialogu • hodnocení průběhu dialogu z pohledu obou účastníků • ... Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Tvorba dialogového korpusu O Záznam reálných dialogů živých lidí • různé zdroje • záznamy rozhovorů mezi lidmi • záznamy z linek podpory • záznamy komunikace s existujícím dialogovým rozhraním nebo jeho prototypem • on-line diskuse/ dialogy na Internetu. O Simulace průběhu dialogu • metoda Wizard of Oz Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML • Vychází z pohádky L F. Bauma - The Wonderfull Wizard of Oz. • Dialogové rozhraní je nahrazeno lidským operátorem, který simuluje chování dialogového rozhraní. • Měl by se držet navržené dialogové strategie. 9 Průběh dialogu je zaznamenáván. • Lze použít prostředky pro zvýšení důvěryhodnosti komunikace uživatele s počítačem: • operátor využívá odpovídající IS - převádí uživatelské dotazy do formy vhodné pro IS • operátor nekomunikuje s uživatelem přímo a prostřednictvím TTS a případně ASR Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Generování dialogových rozhraní z korpusu Korpus - rozsáhlá databáze označkovaných dat" • řečové korpusy • textové korpusy • dialogové korpusy • Na základě korpusu lze generovat dialogové rozhraní, které korpusu vyhovuje: O Vytvoří se korpus metodou Wizard of Oz (komunikuje pouze 11 v IVU \ čarodej J. O Odstranění konfliktů a převod korpusu na dialogové rozhraní. O Kombinované vytvoření nového korpusu • Čaroděj se snaží v maximální možné míre využívat navržené dialogové rozhraní. Odstranění konfliktů a vytvoření další verze dialogového rozhraní. O Pokud je rozhraní v pořádku, proces končí, jinak se pokračuje krokem 3. Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML \ A /o f~° \ l~ '__r>___ a _ i ■ ■. W3C Voice Browser Activity • 1999 - založena W3C Voice Browser Group. • Cíl - návrh standardů umožňujících přístup k Webu pomocí hlasu a telefonu. ■v • Členové: • Hewlet-Packard • Nuance Communication 9 Lucent Technologies • Motorola • ScanSoft • IBM • Telíme Networks • Vocalocity • ... Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Standardy W3C Voice Browser Activity o VoiceXML - jazyk pro popis dialogových strategií. 9 Speech Recognition Grammar Specification - jazyk pro zápis gramatik pro podporu rozpoznávání řeči. 9 Semantic Interpretation for Speech Recognition - jazyk pro podporu sémantické interpretace rozpoznané promluvy. o Speech Synthesis Markup Language - jazyk pro popis prozodických charakteristik pro syntézu řeči. • Pronunciation Lexicon Specification - jazyk pro popis výslovnosti pro rozpoznávání a syntézu řeči. o Call Control XML - jazyk pro popis řízení telefonního spojení uživatele a systému. • State Chart XML - jazyk pro popis obecně použitelných stavových automatů. Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML izhraní - nástroje • Standardy W3C jsou značkovací jazyky - nutná interpretace. • Existuje řada platforem: • volně dostupné desktopové - JVoiceXML, Public VoiceXML, • komerční desktopové - OptimTalk • dříve existovala volně dostupná verze • laboratoř LSD má zakoupenou licenci na laboratorní stroje. • Volně dostupné on-line - VolP ústředna Asterisk + VoiceGlue/OpenVXI, ... • Komerční on-line - Voxeo Prophecy Voxeo Prophecy, • . .. (viz Přehled dostupných implementací u W3C) Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Yl\/ll Značkovací jazyk pro popis dialogových strategií. Historie: 1995 - započat vývoj Phone Markup Language (PML, AT&T) 1998 - založeno VoiceXML fórum (AT&T, IBM, Lucent, Motorola) - spojení úsilí při návrhu jednotného standardu jazyka pro popis a návrh dialogových rozhraní. 2000 - VoiceXML fórum uvolnilo VoiceXML 1.0. Přijato mezi doporučení W3C. 9 Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Cíle I • Minimalizace interakce mezi klientem a serverem - více interakcí v jednom dokumentu. • Odstínění vývojáře od nízkoúrovňových a platformě závislých detailů. • Oddělení Ul od aplikační logiky. o Přenositelnost služeb mezi implementačními platformami. • Snadná použitelnost pro jednoduché dialogy a podpora komplexních dialogových rozhraní. Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML en ES 3 Ji ■ II • Kořenový element vxrn/ - povinné atributy: • version - číslo verze - aktuálně 2.1 • xmlns - deklarace jmenného prostoru dokumentu . Musí obsahovat http://www.w3.org/2001/vxml • Dialogy a dílčí dialogy (subdialogy) - reprezentace pomocí elementů • form - skládá se ze vstupních polí, ... (viz dále) • menu - obsahuje položky, které se odkazují na další formuláře dialogu. • subdialog - odpovídá volání funkce ve strukturovaném programování. • grammar - gramatika přiřazená dialogu • definice a ošetření událostí.- throw/catch Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity VoiceXML Způsob interpretace dokumentu - Form Interpretation Algorithm O Výběr vstupního pole - vybere se první vstupní pole, které vyhovuje (nemá přiřazenu hodnotu a pokud obsahuje vstupní podmínku, tak ta je splněna). Pokud takové pole není, dialog končí. Q Přehraje se jeho výzva. O Získají se vstupy od uživatele a ošetří se případné události (nomatch, noinput, filled) O Pokračuje se krokem 1. Luděk Bártek Řečová interakce a sociální sítě Způsoby implementace dialogových rozhraní Dialogová komunikace Standardy W3C Voice Browser Activity Obsahuje: • vstupní pole: o field • record • transfer • object • subdialog • řídící příkazy: • block 9 initial Ukázky dialogů s iniciativou systému - dokumenty dostupné na ad rese http: //www. f i . muni. cz/ ~bar /pt>095/ Luděk Bártek Řečová interakce a sociální sítě