Agenci konwersujący Anna Dwojak 13 marca 2007 na podstawie książki Daniel Jurafsky & James H. Martin “Speech and Language Processing” rozdział 19: “Dialogue.

Slides:



Advertisements
Podobne prezentacje
Leszek Smolarek Akademia Morska w Gdyni 2005/2006
Advertisements

Nowoczesne narzędzia wykorzystywane w cyklu polityk publicznych
The Present Continuous
Badania operacyjne. Wykład 2
Logiki (nie)klasyczne
badania rynku turystycznego
Dane INFORMACYJNE (do uzupełnienia)
Metody badawcze w socjologii
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Prowadzenie wywiadów grupowych MODUŁ IV Sesja 2B PROGRAM WZMOCNIENIA.
Jest to wyrażenie jednoznacznie stwierdzające, na gruncie danego języka, iż tak a tak jest albo że tak a tak nie jest. Zazwyczaj określa się, iż takim.
Zapis informacji Dr Anna Kwiatkowska.
Metody Symulacyjne w Telekomunikacji (MEST) Wykład 4: Generowanie zdarzeń  Dr inż. Halina Tarasiuk p. 337, tnt.tele.pw.edu.pl.
Bibliotekarz – odkrywca. Agenda Proces tworzenia informacji Indeksy wyszukiwawcze Budowa rekordu w Promaxie Zapytania.
Podstawy programowania
Język angielski czasy PRESENT Continuous NACIŚNIJ SPACJĘ
Egzamin maturalny ustny z języka obcego obowiązujący od roku szkolnego 2011/2012 Prezentacja przygotowana na podstawie informacji zawartych w informatorze.
ANNA BANIEWSKA SYLWIA FILUŚ
Instrukcja MILO moduł klienta.
Autor: Justyna Radomska
System zamawiania on-line
Prezentacja opisuje mechanizm pracy
Automatyka i Robotyka Systemy czasu rzeczywistego Wykład 4.
Języki i automaty część 3.
XML – eXtensible Markup Language
Jak porozumiewać się miedzy sobą by być rozumianym?
Wybrane zagadnienia relacyjnych baz danych
Źródła błędów w obliczeniach numerycznych
CZAS PAST SIMPLE.
Title Slide 1 It starts with you
JESTEŚMY SZKOŁĄ PODSTAWOWĄ I PRZEDSZKOLEM Z POLSKIM JĘZYKIEM NAUCZANIA
Systemy rozproszone  Rozdzielenie obliczeń między wiele fizycznych procesorów.  Systemy luźno powiązane – każdy procesor ma lokalną pamięć; procesory.
Pierwsza sesja Rozpoznanie i planowanie terapii. Jak pokierować pierwszą sesją jak postawić diagnozę i przygotować plan terapii Postępuj metodycznie,
Umiejętność obserwacji.
Andrzej Majkowski 1 informatyka +. 2 Telefon komórkowy „uczy się”. Metoda słownikowa T9 Paweł Perekietka.
Zmiany w ustnym egzaminie maturalnym z języków obcych od 2012 roku
Modelowanie Kognitywne
Projektowanie relacyjnych baz danych – diagramy związków encji
PHP + MySQL Podstawy pracy z bazą danych Damian Urbańczyk.
POLISH LANGUAGE COURSE Lesson 1 Greetings and introducing yourself.
CROSSWORD: SLANG. Konkurs polega na rozwiązaniu krzyżówki. CROSSWORD: SLANG Wypełnione karty odpowiedzi prosimy składać w bibliotece CJK, lub przesyłać.
Komendy SQL do pracy z danymi
Zagadnienie i algorytm transportowy
Automatyczna interpretacja pytań i udzielanie odpowiedzi (Question & Answering)
Diagramy przepływu danych
Model kaskadowy jest czytelny, przejrzysty, ale w istocie niepraktyczny Proces projektowania systemu informacyjnego.
Voice Portals – Portale Głosowe Krótkie wprowadzenie i omówienie.
Projektowanie postaci formularza:
Model warstwowy ISO-OSI
Przetłumacz podane w nawiasach fragmenty zdań na j. angielski.
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
Katarzyna Kowalczyk i Grzegorz Kasprzyk
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania Modelowanie i podstawy identyfikacji 2015/2016 Modele neuronowe – podstawy,
Usługa e-Załączniki Automatyzacja usługi - nowy kanał komunikacyjny Izba Celna w Białej Podlaskiej Prezentuje Leszek Krasa Biała Podlaska, dn r.
Architektura Rafał Hryniów. Architektura Wizja projektu systemu, którą dzielą twórcy Struktura komponentów systemu, ich powiązań oraz zasad i reguł określających.
Interfejs użytkownika „No matter how cool your interface is, less of it would be better”
Writing Ewa Hołubowicz 23 października 2015 Plan  Typy zadań  Cechy wspólne  Instrukcja  Ocena.
Testy jednostkowe. „Test jednostkowy (unit test) to fragment kodu, który sprawdza inny fragment kodu”
Nowe trendy - planowanie negocjacji Wysokie standardy współpracy.
Projektowanie kwestionariusza
Podstawowe umiejętności pomagania
Mówiący jest zawsze swoim słuchaczem, co pozwala na: śledzenie własnych wypowiedzi (self- monitoring) i na sprawdzanie, jakoś coś zostało powiedziane i.
Polish Survival Kit BASIC POLISH WORDS AND EXPRESSIONS, THAT WILL KEEP YOU ALIVE ON THE STREET.
Nurty zarządzania – Szkoła stosunków miedzyludzkich.
Graficzny Interfejs Użytkownika
H.L.A. Hart uważał, iż pod terminem „pozytywizm” kryje się we współczesnej literaturze brytyjskiej i amerykańskiej zbiór następujących twierdzeń:
Co to jest RA7? RA7 jest kombinacją narzędzi i technik bazujących na opatentowanej technologii Nemesysco – Wieloparametrowej Analizie Głosu (Layered Voice.
Uogólnione funkcje języka:
Egzamin gimnazjalny z języka angielskiego - poziom podstawowy.
PODSTAWY PRZEDSIĘBIORCZOŚCI
Zapis prezentacji:

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”

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?

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ć

Planowanie podróży. Zamawianie biletów. Przekierowywanie rozmów. Odpowiadanie na pytania, np o pogodę. Odpytywanie z wiedzy. Wiele, wiele innych... Zastosowania

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

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

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

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

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

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

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

Każda wypowiedź ma dwie fazy: 1. Prezentacja 2. Akceptacja Człowiek czuje się zagubiony, jeśli rozmówca nie potwierdza zrozumienia. Grounding

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

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

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

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

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

Systemy konwersujące używane współcześnie mają sześć komponentów, które po kolei omówimy. Część druga: Podstawowe systemy konwersujące

Architektura systemu konwersującego Speech Recognition Natural Language Understanding Text-to-Speech Synthesis Natural Language Generation Dialogue Manager Task Manager

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

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

Komponent NLU (natural language understanding) tworzy semantyczną reprezentację wypowiedzi. Automatyczne rozumienie języka naturalnego

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

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...

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

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.

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

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

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

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

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

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

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

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

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

Voice Extensible Markup Language jest opartym na XML-u językiem służącym do projektowania dialogu wypuszczonym przez W3C. Część trzecia: VoiceXML

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...

<![ 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...

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

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.

Miara efektywności Czas przeznaczony na dialog Ilość kolejek Ilość kolejek przeznaczonych na poprawę błedów Ilość wykonanych zapytań

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)

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