Dialogové systémy SIN01 Sociální informatika RNDr. Jaromír Plhák, Ph.D. Podzim 2017 Osnova • Principy dialogových systémů • Druhy dialogových systémů • Modely dialogových systémů • Využití dialogových systémů • Konverzační programy • Turingův test • VoiceXML Dialogové systémy • Reflektují v maximální míře požadavek na snadné ovládání počítačových systémů • Rozšiřují možnosti využívání počítačových systémů i pro nezkušené a handicapované uživatele DS komunikace s uživatelem • Komunikace mluvenou řečí • Izolované, kontinuální, spontánní • Pomocí DTMF (dual-tone multi-frequency, tónová volba) • Psaným textem • Znakovou řečí • Mimikou • Nebo kombinací těchto možností (multimodální) Přenos informací různými smysly Grafická podpora dialogu v přirozené řeči • Talking Heads • Konverzační avatar • Multimodální syntéza řeči Holger August Olga Principy dialogových systémů • Multilingualita • Inteligentní dialogové strategie • Adaptace na uživatele • Schopnost učit se a přizpůsobovat • Zohledňují osobnost a emoce uživatele Výhody dialogových systémů • Komunikace mluvenou řečí je tradiční a pro člověka nejpřirozenější způsob komunikace • Volná komunikace • Snadné ovládání • Přístupné nezkušeným či postiženým uživatelům • Eliminace chyb vzniklých porušením pravidel komunikace • V klasických komunikačních modulech Nevýhody DS • Případné přetížení uživatele spoustou informací • Případná nedůvěra uživatele vůči stroji Struktura DS Zpracování vstupu v přirozeném jazyce vstupní signál (nosič zprávy) ↓ vzorkování a předzpracování signálu ↓ předzpracovaný vstupní signál segmentace a rozpoznávání slov ↓ rozpoznávaná posloupnost slov syntaktická analýza ↓ formálně korektní zpráva sémantická a pragmatická analýza ↓ informační obsah zprávy interpretace zprávy ↓ reakce systému Zdroje znalostí dialogového systému • Stav dialogu (krok dialogu, předchozí vstupy a výstupy) • Lingvistické znalosti (gramatika, výskyt řečových segmentů atd.) • Model úlohy • Reprezentace informací, které během dialogu hledáme) • Model uživatele: • Statický: jazyk, věk, ... • Dynamický: hlas, emoce, intence, ... • Model domény (oblasti) systému • Model znalostí o světě (např.: Únor je po lednu.) • Modelace znalostí: pro různé typy znalostí různě složité Druhy DS • Systémy otázka – odpověď • Jednoduché technické konzultační systémy • Informační dialogové systémy • Information retrieval dialogue systems • Systémy s bází znalostí a expertní systémy • Jazykové portály Expertní systémy • Expertní systémy (DENDRAL, INTERNIST a další), pracují s reprezentacemi znalostí expertů. • Diagnostický expertní systém MYCIN • Vyvinutý pod vedením E. Shortliffa • Systém integroval reprezentace znalostí infekčních nemocí ve formě faktů a inferenčních pravidel • Testování systému potvrdilo shodu expertů se systémem zhruba ve třech čtvrtinách případů. Iniciativa dialogu - iniciativa uživatele • Uživatel: Pojede zítra ráno kolem osmi vlak z Plzně do Prahy? • Systém: V 8:08 hodin pojede rychlík R753 [...] Iniciativa dialogu - iniciativa systému • Systém: Zadejte své jméno a příjmení. • Uživatelka: Katka Jandová • Systém: Zadejte SPZ svého auta. • Uživatelka: ACD 09-57 Iniciativa dialogu – smíšená iniciativa • Uživatel: Máš výsledky posledních her? • Systém: Chcete výsledky první anebo druhé ligy? • Uživatel: První. • Systém: V neděli 22.2.2015 hráli [...] Logický průběh dialogu (1) • Každá promluva uživatele musí dostat odpovídající reakci systému (prompt) • To znamená, že systém musí být připraven na všechno, co by člověk mohl říct • Uživatel může např. říct „Servis.“ anebo „Někoho ze servisu, prosím.“ anebo „Spojte mne prosím s někým ze servisu.“ • Důležitý pro uživatele je přesný návod, co může být řečeno kdy • Struktura jazykového portálu musí být přehledná Logický průběh dialogu (2) • Systém musí vést uživatele přes dialog • Dialog s dialogovým systémem má být co nejpodobnější přirozenému rozhovoru • Systém nesmí dát uživateli příliš mnoho informací najednou • V každém kroku dialogu má systém maximálně nabídnout čtyři alternativy • Systém musí zohledňovat věk a úroveň vzdělání uživatele Zpětná vazba v DS (1) • Zajišťuje kontrolu uživatele nad zadávanými údaji • Zvyšuje robustnost dialogových systémů • Snižuje riziko chyb a nedorozumění • Sumarizující zpětná vazba • U: [během dialogu zadá informace] • S: [v momentě, kdy informace vytváří souhrnný celek, tyto informace souhrnně rekapituluje] Zpětná vazba v DS (2) • Různé dialogové strategie: • No-confirm strategy • Systém nepotvrzuje nic • Separate-confirmation strategy • Každý údaj je potvrzen jednotlivě • Confirm-alone strategy • Všechny údaje jsou potvrzeny dohromady • Confirm-plus-initiative strategy • Potvrzení údajů systémem a iniciativa na zisk dalších dat • Každou strategii musí řídit dialogový manažer Dialogové strategie • Pro kontrolu správnosti vstupních dat by je systém měl zopakovat a umožnit uživateli korektury • Uživatel by měl mít možnost přerušit systém • Pro zrychlení přechodu na příští dialogový krok • Pro žádost o opakování promluv • Pro korekturu nesprávně zpracovaných údajů • Pro opuštění dialogového kroku, dialogu nebo programu • Pro žádost o pomoc (návod k obsluze) • Dialogová strategie by se měla přizpůsobit uživateli Modely DS a řízení dialogu • Konečně-stavový model • Model na bázi rámců • Model na bázi agentů Konečně-stavový model DS • Struktura je representována konečným automatem (konečným orientovaným grafem) • S případným využitím proměnných • Dialogové strategie jsou reprezentovány pomocí Mealyho automatu • Zásobníkové automaty, turingovy stroje • Petriho sítě • HMM • ... Dialog jako Mealeyho automat • Konečný automat s výstupem • M = (S, ∑, Λ, T, G, s0), kde • S: neprázdná, konečná množina stavů • ∑ : konečná vstupní abeceda • Λ : konečná výstupní abeceda • T: přechodová funkce (T : S × ∑ → S) • G: výstupní funkce (G : S × ∑ → Λ) • s0: počáteční stav Model na bázi rámců • V rámci jednoho „stavu“ systém vyplňuje příslušný „formulář“ (rámec, předlohu) • Sloty, tj. políčka formuláře, mohou být vyplňovány v různém pořadí • Příští krok dialogu je zvolen vzhledem k informacím, které ještě chybí • Iniciativa uživatele je omezená Jak je to daleko od k nejbližší ? Kdy odjíždí vlak z do ? Model na bázi agentů • Využívání metod umělé inteligence • „Agenti“ • Mohou mít vlastní model chování • Mohou reagovat na osobnost a emoce uživatele a učit se Návrh dialogů a modelu Simulace typu Wizard of Oz (1) Simulace typu Wizard of Oz (2) • Získávání realistických dat pro modelaci dialogů • Simulace chování interaktivního automatu člověkem • Mluvením s uživatelem syntetickým anebo změněným hlasem • Výběrem a puštěním předem definovaných odpovědí • Ruční modifikací některých parametrů simulačního systému • Užíváním osoby pro simulaci integrace existujících komponent Kde může nastat chyba • Periferie • Telefon, přenosový protokol • Rozpoznávání řeči • Sémantická analýza • Dialogová strategie • Generátor promluv systému • Řečový syntetizér Typické chyby uživatele (1) • Uživatel přidá víc informace než je požadováno: • Systém: V kolik hodin chcete jít do kina? • Uživatel: Zítra večer v šest hodin do kina Cinestar na film Já, robot. • Uživatel odpoví na jinou otázku: • Systém: V kolik hodin chcete jít do kina? • Uživatel: Do kina Cinestar na film Já, robot. • Uživatel přidá příliš málo informace: • Systém: V kolik hodin chcete jít do kina? • Uživatel: Zítra. Typické chyby uživatele (2) • Uživatel ignoruje informace: • Systém: Tenhle film zítra nedávají. • Uživatel: Chci ho ale přesto vidět. • Uživatel opustí doménu dialogu: • Systém: V kolik hodin chcete jít do kina? • Uživatel: Přítelkyně má narozeniny, proto chci koupit pár vstupenek. Využití DS - komunikace • Interface pro mobilní telefony • Multilinguální podpora telefonní sítě • Inteligentní počítačové telefonní ústředny Využití DS - doprava • Informace a zajišťování jízdenek a letenek • Letadlové, letištní, lodní a vlakové DS Využití DS - zdravotnictví • První pomoc při diagnostice problémů • DS pro pacienty • Podpora dokumentace • Vyhledávací systémy Využití DS – asistivní technologie • Nevidomí • Hluchoněmí • Mentálně postižení • Uživatelé s jiným typem postižení Využití DS – vědecký výzkum • Knihovní DS • Vyhledávání referencí a citací • Inferenční a verifikační systémy pro exaktní obory Využití DS – právní obory • Vyhledávací a dotazovací systémy • Právní expertní systémy Využití DS - vojenství • DS pro podporu velení • DS pro simulaci vojenských operací • DS pro komunikaci v extrémních situacích Využití DS – finanční oblast • DS pro bankovní operace • DS pro burzovní operace • Poradní systémy Využití DS – a další ... • Inteligentní byt (prostor) • Podpora sportu • DS proti závislostem • Podpora obchodních politických jednání • ... a mnoho dalších možností Turingův test (1) • Alan Turing • 1950 • „Computing Machinery and Intelligence“ • Stroj lze považovat za inteligentní, pokud nejsme schopni rozeznat jeho výstup od výstupu člověka • https://www.csfd.cz/film/283747-kod- enigmy/prehled/ Turingův test (2) • Oddělené místnosti • Člověk • Předmět zkoumání • Testující klade dotazy v přirozené jazyce • Získá zpět odpovědi • Počítač prošel, pokud testující nepozná zda komunikuje s člověkem nebo strojem Turingův test – námitky • Nepokrývá všechny aspekty • Argument čínského pokoje • John Searle (1980) • Schopnost generovat odpověď bez znalosti jazyka • Opisování kontextu • Mechanická práce s neznámými symboly Turingův test (4) • Loebnerova cena • $100.000 - Pokud splní Turingův test • $3.000 - Každoročně pro nejlepší Chatbot (1) • Simulační konverzační systémy • Výrazně vyžívají pattern-matching • Techniky a zdroje odvozené z empirického přístupu k NLP (rozsáhlé korpusy, heuritiky …) • Značkovací jazyk • AIML (ML=MarkUp Language) WHAT IS YOUR NAME Chatbot (2) • ELIZA (1966) • Joseph Wiezenbaum • Pokoušel imitovat psychoterapeuta • Úprava vět zadaných uživatelem => odpověď • Inteligentní komunikace je schopen i neinteligentní program • Terapeut • PARRY (1972) • Simulace paranoidního schizofrenika ELIZA (ukázka) Men are all alike. In what way? They're always bugging us about something or other. Can you think of a specific example? Well, my boyfriend made me come here. Your boyfriend made you come here. He says I'm depressed much of the time. I am sorry to hear that you are depressed. It's true, I am unhappy. Do you think coming here will help you not to be unhappy? I need some help; that much seems certain. What would it mean to you if you got some help? Perhaps I could learn to get along with my mother. Tell me more about your family. My mother takes care of me. Who else in your family takes care of you? My father. Your father. You are like my father in some ways. What resemblance do you see? PARRY (ukázka) (1) • Person: How long have you been in the hospital ? • About a week. • Are you depressed ? • No. • Were you taking drugs ? • No. • What is your problem ? • People make me nervous. • How do they do that ? • They stare at me. • Why? • Maybe they don't like the way the way I look. • Do you look unusual in some way ? • Why are you interested in my looks ? PARRY (ukázka) (2) • Person: Are you Italian? • My background is British, but I was born in this country. • Do you know any Italian crooks? • I try to avoid the underworld. • Are you afraid of the underworld? • The mafia are the worst gangsters. • Are you connected with the mafia? • You know, they know me. • How do they know you? • They spy on me. Když se potká PARRY s ELIZOU • ELIZA: Would you like to discuss your nerves? • PARRY: I guess so. • ELIZA: What does that suggest to you? • PARRY: What are you getting at? • ELIZA: What answer would please you most? • PARRY: It's not a matter or like or dislike. • ELIZA: What else would you like to discuss? • PARRY: I am getting tired of answering the same questions over and over. • ELIZA: What resemblance do you see? • PARRY: Why do you need to know that? • ELIZA: What do you think? • PARRY: I don't understand your motives. • ELIZA: Why don't you understand my motives? Chatbot • Rosette • Bruce Wilcox • Vítěz Loebnerovy ceny 2011 • http://www.loebner.net/Prizef/loebner-prize.html Rosette (1) • My name is Ed. What is your name? • My name is Rosette. • Which is larger, an ant or an anteater? • Anteater is bigger. • What month of the year is it? • June • What is my name? • You are Ed. • Dave is older than Steve but Steve is older than Jane. Who is youngest, Steve or Jane? • Jane is youngest. • What day will it be tomorrow? • The day after today. Rosette (2) • Hello I am Tiberius • Greetings. • How are you? • Pretty good, thanks. How are you? • Not good • Not is such a negative word. My name is Rosette. What is your name? • Still tiberius • Nice to meet you, still. • I'm not still. I'm still tiberius. • Rosette: Nice to meet you, not still. • You got me wrong. I'm not still and also not not still. I am Tiberius. • OK. Rosette (3) • Rosette: Hi. How are you today? • Terrible. The doctor said I am going to die in 3 days. • Rosette: Excellent. VoiceXML • Standardní XML formát pro specifikaci interakčních dialogů mezi člověkem a počítačem • Interpretovaný jazyk • Komerční i open-source řešení • Základní prvky • „tags“ pro příkazy o syntéze řeči, rozpoznávání řeči, dialogovém managementu pouštění nahrávek • Aktuální verze: 2.1 (2007) • Příprava verze 3.0 VoiceXML - Hello World! xmlns="http://www.w3.org/2001/vxml" xml:lang="en-US">
Goodbye!
VoiceXML - ukázka
Would you like coffee, tea, or nothing ?
Zdroje • Interakce člověk–počítač v přirozeném jazyce • www.kiv.zcu.cz/studies/predmety/icp/ICP_LS13/icpkap09.pdf • S. Schaden. Dialogmodelle und Dialog-modellierung. Universität Duisburg-Essen, 2007. • http://www.shameacademy.de/chapters/mmi/ppt/vortrag_schaden_dialog.p df • PA156 Dialogové systémy – L. Bártek