Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Dialogové systémy Luděk Bártek Laboratoř vyhledávání a dialogu, Fakulta Informatiky Masarykovy Univerzity, Brno jaro 2016 >0 0,0 World Wide Web Dialogové systémy Luděk Bártek W3C Voice ■ 1876 - udělen patent na telefon A. G. Bellovi Browser Activity SRGS ■ WWW XML Formát ■ 1989 - po CERN koluje článek HyperText and Cern (Tim SRGS ABNF formát SISR Burnes Lee) ■ Vánoce 1990 - demonstrován řádkový webový prohlížeč a editor. ■ 1991 - všeobecná dostupnost WWW na počítačích v CERN. ■ 1994 - první setkání W3 konsorcia. W3C Voice Browser Activity Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR 1999 - založena W3C Voice Browser Working Group. Cíl - návrh standardů umožňujících přístup k Webu pomocí hlasu a telefonu. Členové: ■ HP ■ Nuance Communications ■ Lucent Technologies ■ Motorola ■ ScanSoft ■ IBM ■ Telíme Networks ■ Vocalocity Standardy W3C Voice Browser Activity Dialogové systémy Luděk Bártek W3C Voice Browser Activity ■ VoiceXML - jazyk pro popis dialogových strategií. SRGS XML Formát SRGS ■ Speech Recognition Grammar Specification - jazyk pro ABNF formát SISR zápis gramatik pro podporu rozpoznávání řeči. ■ Semantic Interpretation for Speech Recognition - jazyk pro podporu sémantické interpretace. ■ Speech Synthesis Markup Language - jazyk pro popis prozodických charakteristik pro syntézu řeči. Standardy W3C Voice Browser Activity pokračování Dialogové systémy Luděk Bártek W3C Voice LI 1 UVV jC I Activity SRGS ■ Pronunciation Lexicon Specification - popis výslovnosti XML Formát SRGS A l\ 1 ■— ľ ' ■ pro rozpoznávání a syntézu řeči. ABNF format SISR ■ 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ů. Standardy W3C Voice Browser Activity Zpracování Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Standardy jsou značkovací jazyky - nutná interpretace Existuje řada platforem: ■ Volně dostupné desktopové- JVoiceXML, PublicVoiceXML, ... ■ Komerční desktopové - Optimtalk - dříve existovala volně dostupná verze; laboratoř LSD má zakoupenou licenci na laboratorní stroje. ■ Volně dostupné on-online - Asterisk+VoiceGlue resp. OpenVXI, ... ■ komerční on-line - Voxeo Prophecy, Bevocal Cafe - lze vyzkoušet a omezeně používat on-line (max. 2 paralelní hovory). Speech Recognition Grammar Specification Dialogové systémy Luděk Bártek W3C Voice ■ W3C specifikace jazyka pro zápis bezkontextových Browser Activity gramatik pro podporu rozpoznávání řeči. J SRGS XML Formát ■ Aktuální verze 1.0. SRGS ABNF formát SISR ■ Nahradil původně používaný standard JSGF ■ Existují dvě varianty zápisu: ■ XML ■ Augmented Backus-Naur Form (ABNF). ■ Liší se pouze způsob zápisu nikoliv vyjadřovací síla. ■ Možnost použitého zápisu závisí na použité platformě. ■ širší podpora pro XML formát Bezkontextové gramatiky Teorie formálních jazyků Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Gramatika G = (A/, Z, P, S) ■ N - konečná množina neterminálních symbolů ■ Z - konečná množina terminálních symbolů (abeceda jazyka) ■ P - množina pravidel ■ S - kořenový neterminální symbol Bezkontextová gramatika: ■ gramatika G = (A/, Z, P, S) ■ pravidla ve tvaru N —>► {N U Z}* SRGS gramatika XML formát Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Začíná XML prologem ■ . Kořenový element - grammar; obsahuje množinu pravidel (elementů rule). Atributy: ■ version - použitá verze standardu SRGS (aktuálně 1.0). ■ xmhlang- kód jazyka gramatiky. ■ root - id pravidla odpovídajícího kořenovému neterminálu ■ mode - pro jaký způsob komunikace je gramatika určena: ■ dtmf - pomocí DTMF kódů ■ voice - hlasově; implicitní hodnota. Zápis pravidla Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Element rule: m atributy: ■ id — identifikátor pravidla (odpovídá neterminálnímu symbolu na levé straně pravidla). ■ Obsah - pravá strana pravidla: ■ textový obsah - posloupnost term iná In ich symbolu ■ element ruleref- neterminální symbol; odkazovaný pomocí atributu uri. m element one-of- varianty (operátor |). ■ element item - logické členění sekvence; umožňuje např. uvést počet opakování dané části promluvy. Sekvence Dialogové systémy ■ Posloupnost terminálních a neterminálních symbolů. Luděk Bártek SAMPLE^ Mám rád TYP formát SRGS. W3C Voice Browser Activity SRGS XML Formát SRGS ABNF formát SISR Mám rád formát SRGS. ■ Lze ji rozdělit na logické části: tečka červená zelená modrá Umožňuje specifikaci: ■ nepovinných částí promluvy ■ opakujících se částí promluvy Zápis - pomocí atributu repeat u elementu item. Možnosti počtů opakování: ■ n krát - n: opakování ■ < m, n > krát - m-n Chtěl bych ■ < a?, oo) krát - m- Ahoj ■ Slouží k zadání: ■ libovolné nespecifikované promluvy - GARBAGE ■ nevyslovitelného pravidla (zakázání určité promluvy) VOID ■ vždy platného pravidla (i prázdného) - NULL ■ Používají se jako zvláštní neterminální symboly: ■ Příklad použití: z do ABNF formát SRGS Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Čistě textový formát gramatiky vycházející z tradičního formátu BNF. ::= Chci jet z do ".11 ::= ::= vlakem | autobusem BNF podobný formát využívá dále např. JSGF Struktura ABNF zápisu SRGS Dialogové systémy Luděk Bártek W3C Voice Browser Activity ■ Hlavička gramatiky - může obsahovat: SRGS XML Formát ■ specifikaci jazyka gramatiky SRGS ABNF formát ■ režim gramatiky - voice/dtmf SISR ■ kořenový neterminál ■ ■ Pravidla gramatiky ■ formát - Sneterminál = (neterminál terminály ■ neterminál = identifikátor pravidla u XML formátu. 1 -f) <\(y Struktura hlavičky ABNF zápisu SRGS Dialogové systémy Luděk Bártek W3C Voice ■ Začíná identifikací typu dokumentu. Browser Activity ■ #ABNF verzeSRGS kódovánĹgramatiky SRGS XML Formát SRGS #ABNF 1.0 ISO-8859-2 ABNF formát SISR ■ Následuje: ■ specifikace kořenového neterminálu - root Sneterminál; ■ jazyk gramatiky - language kód jazyka] language en-US; ■ režim použitelnosti gramatiky - mode (voice dtmf); ABNF zápis pravidel gramatiky Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Sekvence - sekvence terminálních a neterminálních symbolů oddělených mezerou: Spozdrav = dobrý den; $datum = $den $mesic $rok; Varianty - příslušné sekvence terminálních a neterminálních symbolů oddělené symbolem '|': $dopravni_prostredek = autobus I vlak; Opakování: ■ volitelné části - uzavřeny do '[ ]' ■ m—n - Ukázka SRGS gramatiky v ABNF notaci Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR #ABNF 1.0 UTF-8; root $url; language cs-CZ; mode voice; $url = [$protokol] [$server] tečka (Sdomena tečka) tečka $tld[$cesta]; Sprotokol = http I ftp I telnet I gopher $cesta = (/ $adresar) /[$soubor]; Semantic Interpretation for Speech Recognition Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Sémantika - přiřazuje význam tvrzením. Sémantika v dialogových systémech: ■ přiřazuje interpretaci promluvám a jejich částem ■ umožňuje získání relevantních údajů. SISR - standard z rodiny W3C Voice Browser Activity ■ slouží k sémantické interpretaci promluv ■ publikován v dubnu 2007 ■ aktuální verze 1.0. ■ Je úzce spjat se standardy: ■ ECMA Script - vyhodnocování interpretace používá výrazy jazyka ECMA Script ■ SRGS - vyhodnocování je pomocí atributů přiřazeno gramatice pro rozpoznávání promluvy. ■ JSON - interpretace je vnitřně reprezentována pomocí objektů ve formátu JSON. Přiřazení interpretace části promluvy Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Sémantická interpreta bývá součástí pravidel SRGS Přiřazení interpretace k pravidlu - pomocí „tágu": ■ XML formát SRGS: ■ element tag: {out =,ano,} ■ atribut tag: jo ABNF formát SRGS: ■ interpretace uvedena za interpretovanou částí promluvy. ■ tvar: {interpretace} $potvrzení = $souhlas {ano} | $nesouhlas {ne} Odvozování interpretace na základě dílčích interpretací Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Zápis odvození - pomocí výrazů v jazyce ECMAScript. Přiřazení pravidel pro odvození k pravidlům gramatiky -pomocí atributu/elementu tag. Výsledná interpretace reprezentována pomocí objektů ve formátu JSON. Vyhodnocování promluv: ■ přístup k dílčím interpretacím - interpretace neterminálních symbolů na pravé straně: ■ atributy stínové proměnné rules ■ neterminálu N odpovídá atribut N. ■ vrácení výsledné interpretace z pravidla do nadřazeného pravidla - objekt out. ■ vrácení interpretace do dialogu: ■ atributy objektu out ■ vstupnímu poli N odpovídá atribut N. Vyhodnocování promluv XML formát Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Mám { out= rules. barva + 11;11 + rules .prostředek; } □ Vyhodnocovaní promluv ABNF Formát Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR $vlastnictvi = Mám $barva <0-l> $prostředek { out = rules. barva + 11;11 + rules .prostředek; }; Přiřazení interpretace vstupním polím XML Formát Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR { out.barva = rules.barva; out.prostředek = rules.prostředek; } Přiřazení interpretace vstupním polím ABNF formát Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR $vlastnictvi = mam $barva <0-l> $prostredek { out.barva = rules.barva; out.prostředek = rules.prostředek; }; Zdroje Dialogové systémy Luděk Bártek SRGS XML Formát SRGS ABNF formát SISR Specifikace SRGS Specifikace SISR Specifikace ECMAScript Specifikace JSON