Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałMichał Zawadzki Został zmieniony 7 lat temu
1
Agenci konwersujący Anna Dwojak 13 marca 2007 na podstawie książki Daniel Jurafsky & James H. Martin “Speech and Language Processing” rozdział 19: “Dialogue and conversational agents”
2
Jedną z oznak człowieczeństwa jest język. Najwcześniejszym przejawem języka był język mówiony. Najczęstszą formą języka mówionego jest rozmowa, dialog. Jak waż ny jest dialog dla człowieka?
3
Aby człowiek mógł za pomocą naturalnej dla siebie rozmowy załatwiać sprawy z komputerem, tworzone są odpowiednie programy, które nazywane są: ● conversational agents ● spoken dialogue systems ● spoken language systems To, co ważne, chcemy zautomatyzować
4
Planowanie podróży. Zamawianie biletów. Przekierowywanie rozmów. Odpowiadanie na pytania, np o pogodę. Odpytywanie z wiedzy. Wiele, wiele innych... Zastosowania
5
Ludzka rozmowa jest skomplikowaną procedurą. Ma wiele specyficznych właściwości, które twórcy agentów konwersujących wykorzystują, aby ich programy działały bardziej naturalnie. Część pierwsza: Ludzka rozmowa
6
Rozmowa charakteryzuje się strukturą kolejkową. Raz mówi jedna osoba, raz druga itd. Skąd rozmówcy wiedzą, kto i dokładnie kiedy ma mówić? Przerwy między wypowiedziami są zbyt małe, by to one miały byc wyznacznikiem. W rozmowie są miejsca, gdzie inny rozmówca może przejąć kolejkę, tzw TRP (transition-relevance places). Kolejka w rozmowie
7
Zasady zmiany kolejki. W każdym TRP: 1.Jeżeli poprzedni rozmówca wyznaczył następcę, to on musi przejąć kolejkę. 2.Jeżeli poprzedni rozmówca nie wyznaczył nastepcy, każdy może przejąć kolejkę. 3.Jeżeli nikt nie przejmie kolejki, poprzedni rozmówca może mówić dalej. Kolejka w rozmowie
8
Zasada 1 często objawia się w postaci tzw adjacency pairs. Przykłady: pytanie – odpowiedź prośba – zgoda / odmowa propozycja – zgoda / odmowa przywitanie – przywitanie Istnieje również zjawisko significant silence, które oznacza nietypową ciszę pomiędzy zdaniami adjacency pairs. Kolejka w rozmowie
9
Wypowiedź może być traktowana jako pewnego rodzaju akcja, działanie. Niektóre wypowiedzi mają moc zmieniania stanu świata, są to tak zwane performative sentences. Na przykład: Nadaję ci imię Judyta. Zwalniam cię. Akty mowy
10
Wypowiedzenie zdania w konkretnej sytuacji może być różnego rodzaju działaniem: locutionary act: zdanie przynoszące informację, o pewnym ustalonym znaczeniu illocutiuonary act: zdania typu sugestia, ostrzeżenie, pytanie, propozycja, odpowiedź, obietnica perlocutionary act: wpływanie na emocje: rozbawianie, straszenie, perswazja Akty mowy
11
Common ground – pewien zbiór faktów, w które wierzą uczestnicy dialogu, które uznawane są za podstawę porozumienia. Principle of closure - rozmówcy potrzebują nawzajem potwierdzenia, że to, co chcieli osiągnąć swoją wypowiedzią, zostało osiągnięte – najczęściej, że zostali zrozumieni. Grounding
12
Każda wypowiedź ma dwie fazy: 1. Prezentacja 2. Akceptacja Człowiek czuje się zagubiony, jeśli rozmówca nie potwierdza zrozumienia. Grounding
13
Metody akceptacji wypowiedzi: okazywanie dalszej uwagi przejęcie kolejki i kontynuowanie tematu potwierdzenie (mhm, continuer, kiwanie głową) sprafrazowanie wypowiedzi lub jej uzupełnienie powtórzenie części lub całości wypowiedzi Grounding
14
Struktura rozpoczęcia rozmowy telefonicznej: 1.sygnał do rozpoczęcia rozmowy 2.identyfikacja 3.wyrażenie woli rozmowy 4.zgłoszenie tematu Rozpoczęcie rozmowy
15
Sygnałem do rozpoczęcia rozmowy najczęściej jest sam sygnał telefonu. Przyjęte jest, że pierwszy odzywa sie odbierający, ale dzwoniący zgłasza temat rozmowy. Dlatego agenci konwersujący przez telefon rozpoczynają zazwyczaj rozmowę zdaniem: “W czym mogę pomóc?” Rozpoczęcie rozmowy
16
Wnioskowanie pełni dużą rolę w algorytmach, które kierują dialogiem, ponieważ zdania w rozmowie nie zawsze znaczą to, co możnaby wyczytać tylko ze słów, z których się składają. Conversational implicature – odczytywanie znaczenia wypowiedzi na podstawie historii rozmowy, common grounds i pewnych założeń o dialogu w ogóle. Wnioskowanie w planowaniu rozmowy
17
1. Zasada ilości - niech twoja wypowiedź zawiera tyle informacji, ile jest potrzebne - niech twoja wypowiedź nie zawiera niepotrzebnych informacji 2. Zasada jakości - nie mów tego, co uważasz za nieprawdę - nie mów tego na co nie masz wystarczających dowodów 3. Zasada istotności - mów tylko to, co jest istotne 4. Zasada grzeczności - unikaj wulgaryzmów - unikaj dwuznaczności - bądź treściwy - bądź uporządkowany Wnioskowanie w planowaniu rozmowy
18
Systemy konwersujące używane współcześnie mają sześć komponentów, które po kolei omówimy. Część druga: Podstawowe systemy konwersujące
19
Architektura systemu konwersującego Speech Recognition Natural Language Understanding Text-to-Speech Synthesis Natural Language Generation Dialogue Manager Task Manager
20
System ASR (automatic speech recognition) przekształca plik dźwiękowy z wypowiedzią człowieka w tekst pisany. ASR jako część systemu konwersującego może być zoptymalizowany przy użyciu różnych informacji o dialogu. Automatyczne rozpoznawanie mowy
21
Jeżeli to, co może powiedzieć użytkownik jest mocno ograniczone (na przykład odpowiedź na pytanie) używamy: Dialogue-state-specific language model Restrictive grammars Finite state grammar Automatyczne rozpoznawanie mowy
22
Komponent NLU (natural language understanding) tworzy semantyczną reprezentację wypowiedzi. Automatyczne rozumienie języka naturalnego
23
Semantyka frame-and-slot – model semantyczny języka oparty na ramkach i polach do wypełnienia. Automatyczne rozumienie języka naturalnego SHOW: FLIGHTS: ORIGIN: CITY: Boston DATE: DAY-OF- WEEK: Tuesday TIME: PART- OF-DAY: morning DESTINY: CITY: San Francisco
24
Semantic grammar – prosta gramatyka stworzona dla konkretnej dziedziny, w której nazwy nieterminali są pewnymi klasami semantycznymi. Automatyczne rozumienie języka naturalnego SHOW- show me | can I see | I want DEPART_TIME_RANGE- (after | around | before) HOUR | morning | afternoon | evening HOUR- one | two | three... twelve (AMPM) FLIGHTS- (a) flight | flights AMPM- am | pm ORIGIN- from CITY DESTINATION- to CITY CITY- New York | Boston | Denver | Washington...
25
Problemy z semantic grammars: Są nieciągłe – dla lepszego rozpoznawania wypowiedzi dodaje się prawdpodobieństwa. Są tworzone przez człowieka – prawdopodobieństwa można odczytać z dużych korpusów. Automatyczne rozumienie języka naturalnego
26
HMM (Hidden Markow Model) dla rozpoznawania semantyki wypowiedzi – stanami są nazwy pól do wypełnienia (szukanych informacji) a obserwacjami – wypowiedziane słowa. Stan DUMMY odpowiada za słowa, które budują zdanie, ale nie dostarczają żadnej informacji. Automatyczne rozumienie języka naturalnego SHOW FLIGHT DUMMY ORIGIN DEST Show me flights that go from London to San Francisco.
27
HUM (hidden understanding model) – podejście do rozpoznawania znaczenia, które pozwala kategoriom semantycznym formować się w hierarchie i rekursje. Automatyczne rozumienie języka naturalnego Sho w me Atlan ta to Dalla s from203flight Unite d show flight number flight indi- cator airlin e name sho w indi- cator dest origin num- ber airline origi n indi- cator sho w indi- cator dest indi- cator city name city name nonterminal nodes terminal nodes words
28
Komponent Natural Language Generation planuje jak wyrazić słowami to, co należy przekazać użytkownikowi oraz jaka powinna być prozodia. Komponent TTS (text-to-speech) generuje dźwiękową wypowiedź na podstawie tekstu i planu prozodii. Generowanie języka naturalnego
29
Architektura systemu generującego: Generowanie języka naturalnego What to say? How to say it? Speech Synthesiz er Content Planner Proso dy Assig ner Senten ce Planne r Surfac e Realiz er
30
Content Planner decyduje jaką treść przekazać użytkownikowi. Często jest połączony z Dialog Manager. Sentence Planner buduje zdania. Surface Realizer sprawdza, czy zdanie jest zgodne z pewnymi więzami leksykalnymi i gramatycznymi. Prosody Assigner planuje prozodię zdań. Generowanie języka naturalnego
31
Dialogue Manager kontroluję całą strukturę dialogu. Ogólnie mówiąc, otrzymuje wejście od ASR/NLU, przetwarza je, dokonuje zmian w swoim stanie, wysyła wyjście do NLG/TTS. Znany program konwersujący ELIZA miał bardzo prosty algorytm Dialogue Manager – nie zachowywał żadnych informacji, aktualną wypowiedź przekształcał według kilku reguł i zwracał. Dialogue manager
32
FSA (finite-state automata) manager – stany FSA odpowiadają informacjom, jakie system chce uzyskać od użytkownika. Jeśli użytkownik powie coś nie na temat, jest to ignorowane. Dialogue manager Do you want to go from to on ? Is it a one way trip? What date do you want to leave? Where are you going? What city are you leaving from? What date do you want to return? Do you want to go from to on returning on ? Book flight YE S NO YE S NO
33
Single Initiative System – system, w którym dialogiem kieruje tylko jedna ze stron. System Initiative System – system kieruje dialogiem. User Initiative System – użytkownik kieruje dialogiem. Dialogue manager
34
Universal commands – aby nie ograniczać wypowiedzi użytkownika, wprowadza się komendy, które mogą pojawić się w dowolnym miejscu w dialogu (typu help, main menu, restart, correct) Mixed initiative – kontrola nad przebiegiem dialogu przechdzi od systemu do użytkownika i na odwrót. Dialogue manager
35
Frame-based Dialogue Manager – próbuje wypełnić wymagane pola przez zadawanie pytań, ale pozwala też użytkownikowi na samodzielne wypowiedzi i udzielanie informacji. Używa tzw open prompt i directive prompt, musi umieć przełączać się pomiędzy różnymi formularzami i rozpozanwać, które pola wypełnia dana wypowiedź użytkownika. Dialogue manager
36
Voice Extensible Markup Language jest opartym na XML-u językiem służącym do projektowania dialogu wypuszczonym przez W3C. Część trzecia: VoiceXML
37
I’m sorry, I didn’t hear you. I’m sorry, I didn’t understand that. Welcome to the air travel consultant. Which city do you want to leave from? [(san francisco) denver (new york) barcelona] OK, from And which city do you want to go to? [(san francisco) denver (new york) barcelona] OK, to And what date do you want to leave? OK, on OK, I have you are departing from to on send the info to book a flight...
38
<![ CDATA[ Flight ( ?[ (i [wanna (want to)] [fly go]) (i’d like to [fly go]) ([(i wanna)(i’d like a)] flight) ] [ ( [from leaving departing] City:x) { } ( [(?going to)(arriving in)] City:x) { } ( [from leaving departing] City:x [(?going to)(arriving in)] City:y) { }] ?please) City [ [(san francisco) (s f o)] {return( "san francisco, california")} [(denver) (d e n)] {return( "denver, colorado")} [(seattle) (s t x)] {return( "seattle, washington")}] ]]> Welcome to the air travel consultant. What are your travel plans? Which city do you want to leave from? OK, from And which city do you want to go to? OK, to OK, I have you are departing from to. send the info to book a flight...
39
Optymalny system konwersujący to taki, który maksymalizuje efekty (wykonane zadania) przy minimalizacji kosztów (błędów, czasu). Część czwarta: Ocena systemu konwersująceg o
40
Miara ukończonych zadań Ilość prawidłowo wypełnionych pól Ilość uzyskanych informacji Ilość wykonanych poprawnie podzadań Wyniki muszą zostać znormalizowane. Czasem lepszą miarą jakości systemu jest opinia użytkownika o powyższych ilościach niż ich rzeczywiste wartości.
41
Miara efektywności Czas przeznaczony na dialog Ilość kolejek Ilość kolejek przeznaczonych na poprawę błedów Ilość wykonanych zapytań
42
Miara jakości Ilość niezrozumianych przez ASR wypowiedzi Ilość koniecznych poprawek Ilość sytuacji, kiedy użytkownik odpowiadał zbyt wolno Stopień zrozumienia pomiędzy użytkownikiem a systemem (concept accuracy)
43
Zadowolenie użytkownika osiąga się poprzez maksymalizowanie pozytywnych miar, a minimalizowanie negatywnych. Powyższe miary odpowiednio się ze sobą kombinuje. Przeprowadzane są testy – użytkownicy po skorzystaniu z systemu wypełniają ankiety o swoich odczuciach co do ich właściwości. Zadowolenie klienta
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.