introduction to dialogue systems (part ii)

87
Goteborg University Dialogue Systems Lab Introduction to dialogue systems (part II) Staffan Larsson Dialogsystem HT04

Upload: ismail

Post on 16-Jan-2016

66 views

Category:

Documents


0 download

DESCRIPTION

Introduction to dialogue systems (part II). Staffan Larsson Dialogsystem HT04. Overview. Why Develop Speech Applications for the Telephone (Larson ch.1) Dialogue and dialogue genres Dialogue modeling and dialogue systems Research areas & local projects History of dialogue systems - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Introduction to dialogue systems(part II)

Staffan Larsson

Dialogsystem HT04

Page 2: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Overview

• Why Develop Speech Applications for the Telephone (Larson ch.1)

• Dialogue and dialogue genres• Dialogue modeling and dialogue systems• Research areas & local projects• History of dialogue systems• Methodology for dialogue systems design• (Agenter, dialog och talakter)• (Dialogspel)

Page 3: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Research areas & local projects

Page 4: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Problemområden & teorierformell pragmatik för dialogsystem

• hantering av dialogstruktur– dialogspel– talakter

• implicit information– presupposition– implikatur– planigenkänning

• relatera explicit & implicit information till kontext; uppdatera kontext– pronomenlösning (DRT, Centering Theory, abduktion)– planigenkänning– accommodation

• välj/planera yttrande– planering– implicit information?

• kommunikationshantering– ICM, OCM– grounding– konversationsanalys

Page 5: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue phenomena areas

• Recognition• Interpretation• Dialogue management

– incl. ”low-level” communication management

• Generation• Synthesis

• (which ones solved? Which ones are we working on? Which ones are others working on?)

Page 6: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Recognition

• Use contextual information to improve recognition– Multiple simultaneous grammars– Reordeing N-best list based on infostate

• Combining statistical and grammar-based recognition– e.g. backing off to SLM

• Automatic generation of recognition grammars• Recognition of unknown words• Utilizing speaker-dependent recognition when

possible• Improving acoustical models and language models

during dialogue• Outputting word by word

Page 7: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Interpretation

• Context-independent– Robust parsing– Underspecified semantics– Computing presuppositions– Multilinguality

• Context-dependent– Pronoun resolution– Ellipsis resulotion– Deixis resolution– Indirect speech acts– Computing implicatures

• Multimodality– Combining speech and gesture

• Communication management– Understanding communication management moves (feedback, sequencing,

turntaking)

Page 8: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue management

• Dealing with user giving more or different information than requested

• Information sharing between tasks• Multiple possible tasks• Multiple simultaneous tasks

– Jumping back and forth between tasks

• Discussing multiple alternative solutions to a problem

• Arguing for and against alternatives

Page 9: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue management (cont’d)

• Asking and answering questions

• Requesting actions and reporting on the status of onging actions

• Planning joint activities

• Interpreting ambiguous utterances– Linking utterances with the context– Asking clarification questions

Page 10: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Communication management

• Selecting appropriate feedback moves– Dealing with misrecognition, misunderstanding, rejection

• Dealing with user’s feedback moves• Dealing with turntaking

– Distinguish positive feedback from interruptions

• Selecting appropriate sequencing moves• Dealing with user’s sequencing moves• Dealing with user self-corrections• System correcting itself if necessary

– E.g., a better interpretation of the user’s previous utterance is reciveded

Page 11: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Generation

• Deep (”what to say”) vs.surface generation (”how to say it”)

• Context independent– Keeping track of presuppositions

• Context dependent– Information structure– Generating ellipsis– Generating pronouns– Keeping track of implicatures

• Multimodality– Combining speech and gesture

Page 12: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Synthesis

• Intonation• Prosody in general

– Shouting etc– Emotional speech

• Realistic voice quality• Knowing how much has been said

– for turn-taking

• Reasonable time consumption– cacheing

Page 13: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Overall

• Dealing with underspecified information• Incremental interpretation and dialogue

management• Speed (real-time)• Learning• User adaptation

– Acoustical model– Offline informational model– Online informational user model

Page 14: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue systems research in Göteborg: themes

• Early 90’s: Pragmatics-based Language Understanding (Allwood)

• Late 90’s - present: Information state update approach– Dialogue moves

• Abstract representations of utterances• Transitions between information states

– Flexible dialogue– TrindiKit: a dialogue systems toolkit

• Early 00’s - present: Issue-based dialogue management– A generic theory of dialogue, implemented using TrindiKit– Basic idea: dialogue is driven by explicit and implicit questions

(issues)– PhD thesis: Larsson 2002

• Present (current!): Stream-based dialogue management (Lager)

Page 15: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Swedish projects

• SDS (Swedish Dialogue Systems, 98-00)

– With Linköping, Telia and others.• ILT (Interactive Language Technology, 01-04)

– Cooperation with Computer Science, Chalmers

– Application: programming a computerized video recorder via telephone

Page 16: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

EU-Projekt

• PLUS (Pragmatics-based Language Understanding, c:a 91)• TRINDI (Task Oriented and Instructional Dialogue, 97-00)

– Development of the Information State Approach– TrindiKit, GoDiS

• SIRIDUS (Specification, Interaction and Reconfigurability in Dialogue Understanding Systems, 00-02)

– Continuation of TRINDI; further development• D’Homme (Dialogue in the Home Environment, 01)

– The intelligent home• TALK (Talk and Look, Tools for Ambient Intelligence, 03-06)

– Extending the IS approach to multimodal and multilingual dialogue– Scenarios

• in-car• in-home

Page 17: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

A short history of dialogue systems

Page 18: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

The Turing test

• Can a machine be intelligent? Is ”artificial intelligence” (AI) possible?

• Turing offers an operational definition of intelligence• Turing (1912-1954): ”the Turing test”

– Test person A has a dialogue (via a text terminal) with B.– A:s goal is to decide whether B is a human or a machine– If B is a machine and manages to deceive A that B is a

human, B should be regarded as intelligent (able to think; ”a grade A machine”)

– (This is a simplified version of the Turing test)

Page 19: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

The Turing test and dialogue

• According to the Turing test – what is fundamentally human?– The ability to carry out a dialogue using natural

language

• Why is this fundamental?– Assumption: In dialogue, all other human capabilities

show themselves (directly or indirectly)

• This means that ...– ... in order to make a computer use natural language

in the same way and on the same level as a human, it needs to be endowed with human-level intelligence

Page 20: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Artificial Intelligence

• Goal– simulate human/intelligent behaviour/thinking

• Weak AI– Machines can be made to act as if they were

intelligent

• Strong AI– Agents that act intelligently have real, conscious

minds

• It is possible to believe in strong AI but not in weak AI

Page 21: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Cognitivism and GOFAI

• Descartes:– Understanding and thinking is forming and using symbolic

representations

• Until the mid-80’s, the paradigm of AI was cognitivism, the idea that thinking is, essentially, symbol manipulation

• The physical symbol hypothesis (Newell & Simon):– ”A physical symbol system has the necessary and sufficient

means for intelligent action.”– All intelligent behaviour can be captured by a system that

reasons logically from a set of facts and rules that describe the domain

• This is sometimes referred to as GOFAI (Good Old Fashioned AI)

Page 22: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue systems as GOFAI?

• Since around 1986, GOFAI has been abandoned by many AI researchers– Instead, focus on connectionism, embodied interactive automata,

reinforcment learning, probabilistic methods, etc.• However, a large part of current dialogue systems research adheres

to the GOFAI paradigm– Information States, for example…

• Why? – It seems to be the most workable method for the complex problems of

natural language dialogue– It appears to be useful for improving on current human-computer

interfaces, although a major breakthrough of NL interfaces is needed to prove this conclusively

• But is it also a step on the way towards ”human-level” natural language understanding in computers?– Does it scale up?

Page 23: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

AI paradigms

• Cognitivism / GOFAI– physical symbol hypothesis– GPS (Newell & Simon)– Still the dominant type of system

• ”Emergent AI”– Connectionism– Reinforcement learning– Interactive AI; embodied automata (Brooks, ...)– Society of Mind (Minsky)

Page 24: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Definition of ”dialogue system”?

• System able to participate in producing coherent sequences of natural language utterances (taking ”coherent” with a grain of salt)

• Not ”one-shot” systems– where previous dialogue cannot affect

interpretation of current utterance– e.g. most NL database interfaces– even Eliza can return to previous topics!

Page 25: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

”Classic” systems 1966-1972

• ELIZA (Weizenbaum 1966)– what we would today call a chatterbot; the

same goes for PARRY

• PARRY (Colby 1973)

• SHRDLU (Winograd 1972)– Perhaps the first real dialogue system

Page 26: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

SHRDLU

• ”Blocks world”

Page 27: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

– Person: PICK UP A BIG RED BLOCK. – Computer: OK. (does it) – Person: GRASP THE PYRAMID. – Computer: I DON'T UNDERSTAND WHICH PYRAMID YOU MEAN. – Person: FIND A BLOCK WHICH IS TALLER THAN THE ONE YOU ARE HOLDING AND PUT IT INTO THE

BOX. – Computer: BY "IT", I ASSUME YOU MEAN THE BLOCK WHICH IS TALLER THAN THE ONE I AM

HOLDING. – Computer: OK. (does it) – Person: WHAT DOES THE BOX CONTAIN? – Computer: THE BLUE PYRAMID AND THE BLUE BLOCK. – Person: WHAT IS THE PYRAMID SUPPORTED BY? – Computer: THE BOX. – Person: HOW MANY BLOCKS ARE NOT IN THE BOX? – Computer: FOUR OF THEM. – Person: IS AT LEAST ONE OF THEM NARROWER THAN THE ONE WHICH I TOLD YOU TO PICK UP? – Computer: YES, THE RED CUBE. – Person: IS IT SUPPORTED? – Computer: YES, BY THE TABLE. – Person: CAN THE TABLE PICK UP BLOCKS? – Computer: NO. – Person: CAN A PYRAMID BE SUPPORTED BY A BLOCK? – Computer: YES. – Person: CAN A PYRAMID SUPPORT A PYRAMID? – Computer: I DON'T KNOW. – Person: STACK UP TWO PYRAMIDS. – Computer: I CAN'T. – Person: WILL YOU PLEASE STACK UP BOTH OF THE RED BLOCKS AND EITHER A GREEN CUBE OR

A PYRAMID? – Computer: OK. (does it) – Person: WHICH CUBE IS SITTING ON THE TABLE? – Computer: THE LARGE GREEN ONE WHICH SUPPORTS THE RED PYRAMID. – Person: IS THERE A LARGE BLOCK BEHIND A PYRAMID? – Computer: YES, THREE OF THEM: A LARGE RED ONE, A LARGE GREEN CUBE, AND THE BLUE ONE. – Person: PUT A SMALL ONE ONTO THE GREEN CUBE WHICH SUPPORTS A PYRAMID. – Computer: OK. (does it) – Person: PUT THE LITTLEST PYRAMID ON TOP OF IT. – Computer: OK. (does it)

Page 28: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab– Person: DOES THE SHORTEST THING THE TALLEST PYRAMID'S SUPPORT SUPPORTS

SUPPORT ANYTHING GREEN? – Computer: YES, THE GREEN PYRAMID. – Person: WHAT COLOR IS IT? – Computer: BY "IT", I ASSUME YOU MEAN THE SHORTEST THING THE TALLEST PYRAMID'S

SUPPORT SUPPORTS. – Computer: RED – Person: HOW MANY THINGS ARE ON TOP OF GREEN CUBES? – Computer: I'M NOT SURE WHAT YOU MEAN BY "ON TOP OF "IN THE PHRASE "ON TOP OF

GREEN CUBES " . –  DO YOU MEAN:

• 1 - DIRECTLY ON THE SURFACE • 2 - ANWHERE ON TOP OF ?

– Person: 2 – Computer: THREE OF THEM. – Person: HAD YOU TOUCHED ANY PYRAMID BEFORE YOU PUT THE GREEN ONE ON THE

LITTLE CUBE? – Computer: YES, THE GREEN ONE. – Person: WHEN DID YOU PICK IT UP? – Computer: WHILE I WAS STACKING UP THE RED CUBE, A LARGE RED BLOCK AND A LARGE

GREEN CUBE. – Person: WHY? – Computer: TO GET RID OF IT. – Person: WHY DID YOU DO THAT? – Computer: TO CLEAN OFF THE RED CUBE. – Person: WHY DID YOU CLEAR OFF THAT CUBE? – Computer: TO PUT IT ON A LARGE GREEN CUBE. – Person: WHY DID YOU DO THAT? – Computer: TO STACK UP THE RED CUBE , A LARGE RED BLOCK AND A LARGE GREEN CUBE. – Person: WHY DID YOU DO THAT? – Computer: BECAUSE YOU ASKED ME TO. – Person: HOW DID YOU DO IT? – Computer: BY PUTTING A LARGE RED BLOCK ON THE TABLE ; THEN LETTING GO OF IT ;

THEN PUTTING A LARGE GREEN CUBE ON IT ; THEN LETTING GO OF THAT CUBE ; THEN PUTTING THE RED CUBE ON THAT CUBE; THEN LETTING GO OF THAT CUBE.

– Person: HOW MANY OBJECTS DID YOU TOUCH WHILE YOU WERE DOING IT? – Computer: FOUR OF THEM.

Page 29: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

– Person: WHAT DID THE RED CUBE SUPPORT BEFORE YOU STARTED TO CLEAN IT OFF?

– Computer: THE GREEN PYRAMID. – Person: THERE WERE FIVE BLOCKS TO THE LEFT OF THE BOX THEN. – Computer: NO, ONLY FOUR OF THEM: THE RED CUBE, TWO LARGE GREEN

CUBES AND A LARGE RED BLOCK. – Person: PUT THE BLUE PYRAMID ON THE BLOCK IN THE BOX. – Computer: OK. (does it) – Person: IS THERE ANYTHING WHICH IS BIGGER THAN EVERY PYRAMID BUT IS

NOT AS WIDE AS THE THING THAT SUPPORTS IT? – Computer: YES, THE BLUE BLOCK. – Person: DOES A STEEPLE – Computer interrupting: SORRY, I DON'T KNOW THE WORD "STEEPLE". – Person: A "STEEPLE" IS A STACK WHICH CONTAINS TWO GREEN CUBES AND A

PYRAMID. – Computer: I UNDERSTAND. – Person: ARE THERE ANY STEEPLES NOW? – Computer: NO. – Person: BUILD ONE. – Computer: OK. (does it) – Person: CALL THE BIGGEST BLOCK "SUPERBLOCK". – Computer: OK. – Person: HAVE YOU PICKED SUPERBLOCK UP SINCE WE BEGAN? – Computer: YES. – Person: WHY DID YOU DROP IT? – Computer: BY "IT", I ASSUME YOU MEAN THE SUPERBLOCK. –  I CAN'T EXPLAIN A NON-EXISTENT EVENT. – Person: IS THERE ANYTHING TO THE RIGHT OF THE RED PYRAMID? – Computer: YES, FOUR THINGS: THE BOX , THE RED CUBE, THE BLUE PYRAMID

AND THE BLOCK NAMED SUPERBLOCK – Person: THANK YOU. – Computer: YOU'RE WELCOME!

Page 30: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogue systems 1978-1986

• GUS (Bobrow 1978) - travel agent, collaborative planning– frame tree, sentence fragments

• OSCAR (Cohen 1978)– speech act planning

• MICS (Carbonell 1979/1981) - political and social interaction(!)• ARGOT (Allen 1982) - computer operator

– dialog grammar, plan recognition• HAM-ANS (Hoppner et al 1983) - portable interface• XCALIBUR (Carbonell et al 1983) – expert system interface

– case frames, ellipsis resolution, error recovery• Fred/Doris (Houghton 1986 thesis)

– dialogue games (Power), speech acts, and planning– agents in microworld

Page 31: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

GUS

• GUS: The Genial Understanding System• Developed in the mid 1970s at Xerox PARC• Aims to provide a cooperative dialogue• Restricted domain of discourse: travel agent

with the goal of booking a return trip• ‘Frame-based’: has expectations about what

is required to complete the call; today we’d call this ‘information-state based’

• Simulated speech input and output via a text interface

Page 32: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

A Sample Dialogue

GUS: Hello. My name is GUS. I can help you plan a simple trip by air. Where do you want to go?

Client: I want to go to San Diego on May 28.GUS: What time do you want to leave?Client: I must be in San Diego before 10am.GUS: Would you like PSA flight 102 that arrives at 915am?Client: What is the next flight?GUS: Air California flight 310 that leaves at 830am and arrives at 1000am.Client: I’ll take the first one.GUS: In what name should I make a reservation, please?Client: Dan Bobrow.GUS: I have confirmed the following flight: PSA flight 102 on Wednesday May 28 from San Jose

to San Diego that leaves at 730am and arrives at 915am. What date do you want to return on?

Client: On Friday in the evening.GUS: Would you like the flight that leaves at 745pm?Client: That’s fine.GUS: I have confirmed the following flight: PSA flight 307 on Friday May 30 from San Diego to

San Jose that leaves at 745pm and arrives at 930pm. Thank you for calling. Goodbye.

Page 33: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

1988-1992

• Unix Consultant (Wilensky et al 1988)– predict user expertise level

• IREPS (Carberry 1988) - information seeking– plan structure, predict user goals

• MINDS (Young et al 1989) – train timetable database– goal trees, hand-coded domain knowledge

• VODIS (1989) - train timetable database– ”object frames”, speech

• ESTEAM-316 (Jullien & Marty 1989) financial advisor– dialogue plans, plan recognition

• SunDial (Peckham 1991) – task-structured history, belief model, speech

• Circuit Fix-it (Smith & Hipp 1992)– ”missing axiom theory”, speech

• TRAINS (Allen 1993)– joint planning– Trains project: http://www.cs.rochester.edu/research/trains/

• (HearSay?)

Page 34: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Other ”modern” systems (still active)(see also http://www-2.cs.cmu.edu/~dbohus/SDS/ - 47 systems)

• TRIPS (Allen)• Galaxy Communicator• Collagen (Sidner)• RavenClaw• WildFire• VerbMobil• SmartKom• ARISE• AutoTutor• WITAS (Lemon)• CONVERSE

• EDIS (Traum 1998)• MIDAS (Bos 1998)• GoDiS (Larsson 2002)• Beetle (Zinn, Moore)• Mission Rehearsal

Exercise (Traum)

Frameworks• TrindiKit• DIPPER• DARPA Communicator

Page 35: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Not quite dialogue systems

• Database query systems

• Text understanding systems

• Chatterbots

Page 36: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Database Query systems(http://www-personal.umich.edu/~abney/ling492/systems.html + smith & hipp)

Also read http://www-personal.umich.edu/~abney/ling492/1961.pdf

• Ask (Thompson & Thompson 1983)• Baseball (Green et al 1961, 1963)• Chat-80 (Warren & Pereira 1982)• Co-op (Kaplan 1982) - two domains

– detection of invalid presuppositions• Core Language Engine (Alshawi et

al 1992) • Datalog (Hafner & Godden 1985) –

multi-domain• DIALOG (Bolc et al 1985) – medical

database• Intellect (Harris 1984)• Janus • Ladder - SRI (Hendrix et al 1978)

– naval info • LanguageAccess (IBM) (Ott 1992)• Loqui

• Lotus HAL • Lunar (Woods 1973, 1978)• Philiqa1 • Planes - Waltz • Pragma (Levine 1990)

– user goal recognition and prediction• PSLI3 (Frederking 1988)

– medical database• Q&A (Symantec) • Rendezvous (Codd 1974)• Rus, Irus, Parlance (BBN) • ROBOT (Harris 1977)• TEAM (Diagram, Dialogic) (Grosz et

al 1987)– multi-domain

• TINA (Seneff 1992)– 2 domains

Page 37: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Text understanding systems

• SAM (Shank & Abelson)– an attempt at formalising everyday

background knowledge needed for interpretation of simple stories

• Discourse system (Allen et al 1989) – advisory dialogue interpretation

Page 38: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Chatterbots(http://www.simonlaven.com)

• Shampage, a brilliant Chatterbot program whose language base is totally configurable. You can set it up anyway you want it, and if you set it up well enough it can become a truly amazing program.

• Eliza, the virtual psychoanalyst. Originally created by MIT scientist Joseph Weizembaum. Several versions available here along with backround information on the worlds most famous chatterbot.

• Fred, the Functional Response Emulation Device. The first program in an ongoing experiment to explore Natural Language communications between people and computer programs.

• Claude, when the author released this program to the world the 'readme.doc' said: "Claude isn't very smart compared to you". This is true, but he's also a clone of the classic Racter Chatterbot.

Page 39: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Svenska ”dialogsystem” / röststyrda tjänster som kan nås via telefon

• Bilregistret (SpeechCraft): 077-114 15 16 • SAS SpeechLine (SpeechCraft): 0770-727 888 • SJ:s automatiska tågtidsupplysning (Presector): 0771-75 75 75,

välj 1 • Sjöfartsverkets sjöväderupplysning (SpeechCraft): 08-612 54 40 • Storstockholms Lokaltrafiks trafikupplysning (SpeechCraft): 08-

600 10 00 • Telias nummerupplysning Autosvar (Presector): 118 888 • teliamobiles röststyrda aktietjänst (SpeechCraft): 4444 (endast

för teliamobile-kunder) • Västernorrlands länstrafik / Din Tur (SpeechCraft): 0771-511

513, välj sedan 1 • Västtrafiks röststyrda tidtabellsupplysning (Sigma): 0771-41 43

00, välj 1

Page 40: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Methodology for dialogue system design

Page 41: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

General R&D cycle

1. decide on initial framework, system, domain2. domain activity communication analysis

• corpus collection and analysis, or other starting point (e.g. existing menu-based system)

3. (re)design of framework, system and / or application

4. (re)implementation of the above5. user testing6. go to 2 until satisfied or out of funds

Page 42: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Corpus collection and analysis

• Collection– Natural dialogue– Wizard-of-Oz (WoZ)– Backseat Driver (BaD?)

• Analysis– Transcription– Distillation– Coding

Page 43: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Naturlig dialog

• Illustrerar verkliga mål & behov• Den person som har samma roll som

systemet beter sig inte som systemet skulle ha gjort -> mer komplex dialog

• Ej klart att att anv. har samma förväntningar på ett system

• Annat språk används mot människa än mot dator?

Page 44: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Wizard of Oz• Anv. tror att han interagerar med dator men egentligen är det en

mamnniska som härmar. – A får en uppgift att utföra (ett scenario); – W har tillgång till ett bakgrundssystem, tex en databas; W kommunicerar

via talsyntes eller text, ev speciellt simuleringsverktyg• Användbart?

– WOZ mäter fördomar; människor kommer att anpa ssa sig till hur system faktiskt beter sig

– m-d dialoger rör sig i enklare domäner -> enklare dialoger ; Varför på förhand avgränsa systemet till enkla dialoger?

• Ekologisk validitet– svårt realistiskt härma, människor stavar fel, skriver långsamt osv; kräver

mycket arbete– "rollspel"- ej realistiskt beteende från användaren– Människor beter sig annorlunda mot en maskin än mot en människa; t ex

inget behov av artighet; kanske inga indirekta talakter• Eller vanemässig & omedveten artighet & indirekthet?

• Oetiskt? Fungerar bara så länge metoden & state of the art är okänd för allmänheten.

Page 45: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Destillering

• skriva om m-m-dialoger så att de liknar m-d-dialoger

• guidelines, skiss över systemets beteende• Används i realistisk situation• Problem:

– arbetskrävande– subjektivt; resultat beror delvis av destillatören– problem med att hålla dialogen koherent

Page 46: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Annotation and analysis

• Dialogue move / speech act annotation– May require domain analysis

• Coding schemas - reliability - kappa

• IS-kodning

• MDI-analys av uppgift?

Page 47: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Evaluering av dialogsystem

• ”Objektiva” kriterier – (e.g. PARADISE framework)– tid det tar att utföra uppgift– antal turer system/användare – andel rättelser – transaction success

• Subjektiva – intervju, frågeformulär – användarvänlighet, naturlighet, klarhet, användarvänlighet,

vänlighet, robusthet

• Dialogue capabilities (e.g. TRINDI ticklist)

Page 48: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Agenter(Wooldridge & Jennings)

Page 49: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Vad är en (artificiell) agent?

• beteendebaserad defintion • autonomi:

– agenter handlar utan direkt inblandning av människor eller andra, och har kontroll över sina egna handlingar och sitt eget interna tillstånd

• social förmåga: – agenter interagerar med andra agenter (inkl. människor), bl a med

hjälp av språk• reaktivitet:

– agenter uppfattar sin omgivning (den fysiska världen, ett grafiskt användarinterface, internet...) och reagerar på förändringar i omgivningen

• proaktivitet: – aganter reagerar inte bara på omgivningen, utan är också kapabla

till målinriktat beteende och kan ta initiativ

Page 50: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Två huvudtyper av ramverk för artificiella agenter

• ”Deliberative”– en agent har en explicit representerad symbolisk modell av världen– beslut fattas genom logiskt slutledning (mönstermatchning,

symbolmanipulation)– teoribaserade– Exempel: General Problem Solver (Newell & Simon)

• Reaktiv– ingen symbolisk modell– ingen komplex symbolprocessning– Exempel: situerade finita automater (Rosenschein & Kaelbling)– tenderar att vara ad hoc

• det finns ocskå hybridteorier– ett reaktivt och ett deliberativt lager

• Är människor reaktiva eller deliberativa? Eller kanske hybrider...

Page 51: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Attityder för deliberativa agenter

• Privat

• Social

• Informationsattityd– kunskap / tro

• Proattityd– handling, mål

Page 52: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Reaktivitet

• Perception– agenter uppfattar världen genom sinnesorganen,

vilket ger upphov till kunskap / trosföreställningar om världen

• Privata informationsattityder– trosföreställningar (beliefs, B)– kunskap (sann berättigad tro)

• Reaktion– kräver förmåga att agera

Page 53: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Proaktivitet

• Initiativ– Agenter har behov, önskningar och

avsikter och försöker ofta ändra världen utgående från dessa

• Kräver– förmåga att planera– förmåga att bestämma sig

• Privat proattityd: intention

Page 54: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Autonomi

• agenter handlar utan direkt inblandning av människor eller andra, och har kontroll över sina egna handlingar och sitt eget interna tillstånd

• Privata attityder (info- och proattityder):– trosföreställningar (beliefs, B)– önskningar/vilja (desires, D)– intentioner (I)

Page 55: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Social förmåga

• Människor är också sociala varelser; de står i sociala relationer till varandra och agerar utifrån dessa

• Sociala informationsattityder:– delad tro/kunskap (shared belief),

• Sociala proattityder – skyldigheter (obligations) – åtaganden (committments), – rättigheter (rights) (?)

Page 56: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialog

•Kunskap för dialogagenter

•Informella approacher

•Formella ramverk

Page 57: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Typer av kunskap som behövs för att kunna delta i en dialog

• sociala informationsattityder (delad kunskap)• statisk

– generell världskunskap för att tolka yttranden– aktivitetsspecifik världskunskap– språklig kunskap; förmåga att tolka och konstruera

yttranden, inkl. kunskap om talakter och dialogspel• dynamisk

– privata och sociala attityder– dialogmodell; ``dialogprotokoll'’: håller reda på

gemensamma antaganden, aktuella frågor, skyldigheter, referenter mm.

Page 58: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Hur ska kunskap representeras?

• Kunskapsrepresentationsspråk, t ex FOL, semantiska nätverk, frames...

• Kunskapsbas = mängd av statser + inferensregler

• ontologier / typhierarkier (för begreppskunskap)

Page 59: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• Hur mycket och vilken typ av kunskap som behövs beror på dialogtyp

• enkel -> komplex– call routing– tidtabellsupplysning– databassökning– programmera video– instruktionsdialog (t ex ge vägbeskrivning)– förhandling– planera framtida aktivitet– vardagligt småprat (?)

Page 60: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Ramverk för dialogagenter

• Logikbaserade– Rationalitetsaxiom + inferens– axiomatiserad talaktsteori (i modallogik)– problem med komplexitet och avgörbarhet

• Planbaserade– Planering & planigenkänning– talakter som planer– problem med komplexitet

• Dialoggrammatik – dialogspel som finita automater genererade av grammatik– ingen information i tillstånd

• Informationstillstånd – dialogdrag, dialogspel, uppdateringsregler– variabel komplexitet deliberativ <-> reaktiv

• Dessa kan kombineras!

Page 61: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Agenter i dialog (Traum 1999)

Översikt över forskning

Page 62: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• En (artificiell) dialogagent kan– interagera och kommunicera med andra agenter på ett

koherent sätt– delta i dialoger (d v s kommunikativa utbyten med en

längre sekvens av yttranden) om ett givet ämne med avsikten att uppnå ett gemensamt övergripande mål

• Yttranden ändrar– mentala tillstånd– kontexten och dialogtillståndet

• Dialog är såpass komplicerat att det går utöver vad samtida agentteorier klarar

Page 63: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Agenter & talaktsteori

• TA gör det möjligt att betrakta kommunikation mellan agenter i ett generellt ramverk för agenters handlande

• MEN i relation till ”vanlig” agentteori skulle TA kräva en mer uttrycksfull logisk formalism för handlingar– flera agenter– samtidig och fallibel handling

Page 64: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Planbaserade approacher till talaktsteori

• Bruce (1975)– planering av yttranden– attityder: belief, want, intention

• Cohen & Perrault (1979)– planering av yttranden– attityder: belief, want

• Allen & Perrault (1980)– igenkänning av indirekta talakter

• Hinkelman (1990)– lingvistiska info + planer för att korrelera form och funktion (d

v s känna igen talakter)

Page 65: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Ickemonotona approacher(varianter av logikbaserade app.)

• Perrault (1990)– defaultlogik för talaktsteori– defaulteffekter av talaktsoperatorer följer om inget i

kontexten motsäger dem– ej direkt implementerbar; kräver komplett indutivt

inferenssystem

• Appelt & Konolige (1988)– omformulering av Perrault i ”autoepistemisk logik”– implementerbart

• McRoy & Hirst (1995)– abduktion för produktion och igenkänning av indirekta

talakter

Page 66: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Andra logikbaserade approacher till talakter

• problem med STRIPS:– tid & förändring representeras inte i

tillräcklig detalj; operatorernas semantik oklar

– kraftfullare handlingslogik krävs, med tydlig semantik

• BDI-baserade logiska ramverk:– Cohen & Levesque– Sadek

Page 67: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

BDI-baserade logiska ramverk:Cohen & Levesque (1990)

• detaljerad dynamisk modallogik för att beskriva handlingar och mentala attityder

• semantik för logiken i termer av möjliga världar• attityder: beliefs, goals• effekter av illokuta akter härleds från generella

principer för rationell kompetens– formaliserade som axiom i logiken

• logiken används för att beskriva agenter och deras handlingar– ej som resurs för agenterna själva

Page 68: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

BDI-baserade logiska ramverk: Sadek

• liksom Cohen & Levesque: logik för handlingar, möjliga världar-semantik

• logiken används som resurser av agenter

• implementerat i dialogsystem

Page 69: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Problem med Cohen & Levesque, Sadek (enligt Traum)

• logiskt allvetande agenter– om en sats p följer logiskt från vad A tror, så tror A

på p– om man tror på en tautologi så tror man t ex på

alla matematiska sanningar• logiken för tid och handlingar fortfarande inte

kraftfull nog för att modellera t ex överlappande tal

• privata attityder (belief, goal, intention) räcker inte för att modellera talakter

• vi behöver även sociala attityder!

Page 70: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Talakter och dialog

• Tidigare nämna teorier fokuserar på isolerade satser

• I dialog kombineras yttranden i en koherent interaktion för att uppnå icke-kommunikativa mål

• Utvidga tidigare approacher till dialog– planbaserade– logikbaserade

Page 71: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Planbaserad dialogteori:Litman & Allen (1985)

• utvidgning av Allen & Perrault• dialoger, ej bara enstaka yttranden• två typer av planer

– domänplaner för att samarbeta för att uppnå mål – diskursplaner för att hantera dialogen; oberoende

av domän

• metaplaner; har andra planer som argument• kan redogöra för längre yttrandesekvenser, t

ex klargörande subdialoger

Page 72: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Logikbaserad dialogteori:Cohen & Levesque (1991)

• axiom för rationellt beteende i dialog• bekräftelse som ”joint action”• sociala (gemensamma) handlingar

– saker man gör tillsammans

• social proattityd: joint intention (delad avsikt)• Dock:

– oklart hur logiken relaterar till faktiska yttranden

Page 73: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Interaktion på flera nivåer

• Ide: modellera dialog som handlingar på flera nivåer – ej bara satsnivå (talakter)

• Föregångare: – Dialogspel, Sinclair & Coulthard (1975)– 4 ”ranks”

• act• move: användning av acts i vissa syften• exchange: sekvens av flera moves• transaction: flera exchanges

Page 74: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• 4 talaktsnivåer (Traum & Hinkelmann 1992)– turtagning– ”grounding”

• bekräftelse att man förstår varandra

– ”core speech acts” (traditionella illokuta akter)• Exempel: Inform, YNQ, Check, Eval, ReqRepair, RecAck• en CSA involverar flera agenter, eftersom de måste

bekräftas

– argumentationshandlingar (retoriska handlingar)• Exempel: Elaborate, Summarize, Clarify, Q&A,

Convince, Find-Plan

Page 75: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Skiss till en teori för talakter för kollektiv av sociala agenter

• För att en talaktsteori ska kunna hantera dialog behöver den följande utvidgningar:– förmåga att resonera om tid

• inklusive överlapp och samtidig handling

– förmåga att resonera om osäkra handlingar• som kan misslyckas och ha oväntade resultat

– hantering av kollektiv av agenter• samarbete

– kunna fungera i realtid– koppla ihop planering och handling

Page 76: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• Kollektiv av agenter -> sociala attityder

• Kan sociala attityder defineras i termer av privata attityder?

• Delad tro (mututal belief)

• Skyldigheter (obligations)

• Delade planer (shared plans)

• Delade intentioner (joint intentions)

Page 77: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Hur kan mutual belief uppnås?

• Man kan inte generellt sett anta att alla handlingar lyckas• Innan man kan veta att MB uppnåts krävs någon form av

bekräftelse, tex ”mm”• Ändå har de flesta formaliseringar av talakter antagit att mutual

belief är en direkt effekt av enskilda talakter (jfr STRIPS)• Detta får olyckliga konsekvenser:

– agenter kan få felaktiga uppfattningar om en annan agents tillstånd – agenten kan inte känna igen bekräftelsehandlingar (feedback) eller

”förstå” varför bekräftelser behövs• Men om varje talhandling måste bekräftas av den tilltalade så är

talakter kollektiva handlingar; båda måste bidra för att handlingen ska kunna slutföras

Page 78: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Skyldigheter (obligations)

• Social proattityd (obligation to do A)– motsvarande informationsattityd: committment

• Krävs (enligt Traum) för att formalisera effekterna av vissa talakter

• Vad en agent borde göra, givet sociala normer• Dessa normer kan formaliseras i ”deontisk logik” (von Wright);

en typ av modallogik• Normerna är inlärda, kulturella, och delade av medlemmarna i

en social gemenskap• Agenter kan välja att ignorera skyldigheter om de krockar med

agentens mål• Kan ej reduceras till (definieras i termer av) privata attityder!

Page 79: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• Igenkänning av intentioner behövs (enligt Traum) inte vanligtvis i vardaglig kommunikation

• Det räcker att man uppfyller sina skyldigheter!TALAKT SKYLDIGHET

S lovar A S uppnår A

S ber om A H accepterar eller förkastar A

S frågar Q H svarar på Q

Page 80: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Dialogspel för agenter:Conversational Game Theory (Lewin 2000)

Page 81: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Informationstillstånd och dialogtillstånd

• Dialogtillstånd – ett tillstånd i en finit automat; ingen information

lagrad i tillståndet

• Informationstillstånd– ett ``dialogprotokoll'' som håller reda på

gemensamma antaganden, aktuella frågor, skyldigheter, referenter mm.

– kan även inkludera privata och sociala attityder– både privat och delad information– kan t o m inkludera dialogtillstånd (t ex ett heltal

som refererar till ett tillstånd i en automat)

Page 82: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

CGT & dialogspelsbaserade agenter

• Teori som tillämpar dialoggrammatik i dialogsystem• Använder också informationstillstånd• Spel representerade som RTNs (Recursive Transition

Networks)– d v s bågar i ett spel kan vara associerade med ett annat

spel

• Kombineras med enkelt informationstillstånd/kontext <Pd, Cm>:– Pd: Propositions under discussion

• < P, d(P) >, där d(P) är ett fokuserat element i P

– Cm: Commitment slate

Page 83: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

• Moves & games är funktioner som uppdaterar kontexten

• Moves uppdaterar Pd• Games uppdaterar Cm

– committments: ej mentala attityder utan ”publika objekt” som man kan bindas till

– social attityd• Ej som i t ex Cohen & Perrault!

– förvillkor och effekter i termer av mentala tillstånd, privata attityder

Page 84: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Move types (urval)

• qw(p): wh-fråga– Pd := < p, 0 >

• rw(p): svar på wh-fråga– Pd := < p, 0 >

• ack: acknowledgement; Pd oförändrad• cnf(c): confirmation

– Pd före = < P, _ >– Pd := < P, c >

• Ryes: ja-svar ; Pd oförändrad• Rno: nej-svar ; Pd oförändrad

Page 85: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Games

• Att spela dialog involverar ”parsning” av spel m h a dialoggrammatiken– parallell, inkrementell parser– rankar möjliga parsningar m h a en preferensmekanism– detta sköts av en ”monitor”

• Men agenten måste också producera egna yttranden– sköts av dialogbidragsgenerator– genererar output om monitorn indikerar att det är systemets

tur– vilken output som väljs beror dels av speltillstånd, dels av

informationstillstånd

Page 86: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

0

4

1 2 3

qw

qw-r

rw

cnf

Ryes|Rno|Rmod

ack

QW(p)

QW(p) -> {qw | qw-r} rw (cnf {Ryes | Rno | Rmod}) ack...

Page 87: Introduction to dialogue systems (part II)

Goteborg University Dialogue Systems Lab

Exempeldialoggame state

infostate

A: Where do you want to travel? 1 Pd = <{dest(X)}, 0>

Cm = {}

B: To Exeter 2 Pd = <{dest(exeter)}, 0>

A: Is your destination Exeter? 4 Pd = <{dest(exeter)}, dest(exeter)>

B: Yes 2

A: Okay 3 Pd =

Cm = {dest(exeter)}