1 / 31

Managing Dialogue

Managing Dialogue. Julia Hirschberg CS 4706. Dialogue Manager. Controls the architecture and structure of dialogue Takes input from ASR/NLU components Maintains some sort of state Interfaces with Task Manager Passes output to NLG/TTS modules. Four Architectures for Dialogue Management.

joellen
Download Presentation

Managing Dialogue

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Managing Dialogue Julia Hirschberg CS 4706

  2. Dialogue Manager • Controls the architecture and structure of dialogue • Takes input from ASR/NLU components • Maintains some sort of state • Interfaces with Task Manager • Passes output to NLG/TTS modules

  3. Four Architectures for Dialogue Management • Finite State • Frame-based • Information State • Markov Decision Processes • AI Planning

  4. Finite-State Dialogue Management • A trivial airline travel system scenario • Ask the user for a departure city • For a destination city • For a time • Whether the trip is round-trip or not

  5. Finite State Dialogue Manager

  6. Finite-State Dialogue Managers • System completely controls the conversation with the user • Asks the user a series of questions • Ignores (or misinterprets) anything the user says that is not a direct answer to the system’s questions

  7. Dialogue Initiative • Systems that control conversation like this are system initiative or single initiative • Initiative: who has control of conversation • In normal human-human dialogue, initiative shifts back and forth between participants.

  8. System Initiative • Systems which completely control the conversation at all times are called system initiative • Advantages: • Simple to build • User always knows what they can say next, sort of…. • System always knows what user can say next • Known words: Better performance from ASR • Known topic: Better performance from NLU • Ok for very simple tasks (entering a credit card, or login name and password) • Disadvantage: • Too limited

  9. Problems with System Initiative • Real dialogue involves give and take • In travel planning, users might want to say something that is not the direct answer to the question. • E.g. answering more than one question in a sentence: • Hi, I’d like to fly from Seattle Tuesday morning • I want a flight from Milwaukee to Orlando one way leaving after 5 p.m. on Wednesday

  10. User Initiative • User directs the system • Generally, user asks a single question, system answers • System can’t ask questions, engage in clarification dialogue or confirmation dialogue • Used for simple database queries • User asks question, system gives answer • Web search is user initiative dialogue

  11. Single Initiative + Universals • Can give users more flexibility by adding universal commands • Universals: commands you can say anywhere • As if we augmented every state of FSA with these • Help • Start over • Correct • Describes many implemented systems • Still doesn’t allow user to say what they want to say

  12. Mixed Initiative • Conversational initiative can shift between system and user • Simplest kind of mixed initiative: use the structure of the frame itself to guide dialogue • Slot Question • ORIGIN What city are you leaving from? • DEST Where are you going? • DEPT DATE What day would you like to leave? • DEPT TIME What time would you like to leave? • AIRLINE What is your preferred airline?

  13. Frames are Mixed-Initiative • User can answer multiple questions at once • System asks questions of user, filling any slots that user specifies • When frame is filled, do database query • If user answers 3 questions at once, system has to fill slots and not ask these questions again • Avoid strict constraints on order of finite-state architecture

  14. Extending to Multiple frames • E.g. flights, hotels, rental cars • Flight legs: Each flight can have multiple legs, which may need to be discussed separately • Presenting the flights (If there are multiple flights meeting users constraints) • Has slots like 1ST_FLIGHT or 2ND_FLIGHT so user can ask “how much is the second one” • General route information: • Which airlines fly from Boston to San Francisco • Airfare practices: • Do I have to stay over Saturday to get a decent airfare?

  15. Implementing Multiple Frames • Need to be able to switch from frame to frame • Based on what user says • Disambiguate which slot of which frame an input is supposed to fill, then switch dialogue control to that frame. • Main implementation: production rules • Different types of input cause different productions to fire • Each can flexibly fill in different frames • Can also switch control to different frame

  16. Defining Mixed Initiative • Mixed Initiative could mean • User can arbitrarily take or give up initiative in various ways • Only possible in very complex plan-based dialogue systems • No commercial implementations • Important research area • Something simpler and quite specific

  17. True Mixed Initiative

  18. How mixed initiative is usually defined • Two factors • Open prompts vs. directive prompts • Restrictive versus non-restrictive grammar

  19. Open vs. Directive Prompts • Open prompts • System gives user very few constraints • User can respond as they please: • “How may I help you?” “How may I direct your call?” • Directive prompts • Explicitly instructs user how to respond • “Say yes if you accept the call; otherwise, say no”

  20. Restrictive vs. Non-restrictive grammars • Restrictive grammar • Language model which strongly constrains the ASR system, based on dialogue state • Non-restrictive grammar • Open language model which is not restricted to a particular dialogue state

  21. Definition of Mixed Initiative

  22. VoiceXML • Voice eXtensible Markup Language • An XML-based dialogue design language • Makes use of ASR and TTS

  23. Voice XML • Each dialogue is a <form>. (Form is the VoiceXML word for frame) • Each <form> generally consists of a sequence of <field>s, with other commands

  24. Sample VXML Document <form> <field name="transporttype"> <prompt> Please choose airline, hotel, or rental car. </prompt> <grammar type="application/x=nuance-gsl"> [airline hotel "rental car"] </grammar> </field> <block> <prompt> You have chosen <value expr="transporttype">. </prompt> </block> </form>

  25. VoiceXML interpreter • Walks through a VXML form in document order • Iteratively selecting each item • If multiple fields, visit each one in order. • Special commands for events

  26. A VXML Document <noinput> I'm sorry, I didn't hear you. <reprompt/> </noinput> • “noinput” means silence exceeds a timeout threshold <nomatch> I'm sorry, I didn't understand that. <reprompt/> </nomatch> • “nomatch” means confidence value for utterance is too low • Notice “reprompt” command

  27. Another VXML Document <form> <block> Welcome to the air travel consultant. </block> <field name="origin"> <prompt> Which city do you want to leave from? </prompt> <grammar type="application/x=nuance-gsl"> [(san francisco) denver (new york) barcelona] </grammar> <filled> <prompt> OK, from <value expr="origin"> </prompt> </filled> </field> • “filled” tag is executed by interpreter as soon as field filled by user

  28. Another VXML Document <field name="destination"> <prompt> And which city do you want to go to? </prompt> <grammar type="application/x=nuance-gsl"> [(san francisco) denver (new york) barcelona] </grammar> <filled> <prompt> OK, to <value expr="destination"> </prompt> </filled> </field> <field name="departdate" type="date"> <prompt> And what date do you want to leave? </prompt> <filled> <prompt> OK, on <value expr="departdate"> </prompt> </filled> </field>

  29. Another VXML Document <block> <prompt> OK, I have you are departing from <value expr="origin”> to <value expr="destination”> on <value expr="departdate"> </prompt> send the info to book a flight... </block> </form>

  30. Summary: VoiceXML • Deals well with simple, frame-based mixed initiative dialogue. • Most common in commercial world (too limited for research systems) • But useful to get a handle on the concepts.

  31. Next Class • Dialogue Acts and Information State

More Related