madeleine, a ravenclaw exercise in the medical …madeleine, a ravenclaw exercise in the medical...
TRANSCRIPT
Madeleine, a RavenClaw Exercise in the Medical Diagnosis Domain
Dan Bohus, Alex Rudnicky
MITRE Workshop on Dialog Management,Boston, October 2003
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Overall Architecture
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
RecognitionSPHINX
SynthesisFESTIVAL
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Overall Architecture (internals)
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
HUB
FESTIVALSERVER
RecognitionSPHINX
SynthesisFESTIVAL
Galaxy
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Overall Architecture
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
RecognitionSPHINX
SynthesisFESTIVAL
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Overall Architecture
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
Text I/OTTYServer
RecognitionSPHINX
SynthesisFESTIVAL
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Developed Resources
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
Text I/OTTYServer
Grammar
Templates
RavenClawDialogTask
Specification
Back-end(perl)
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Development Time
ParsingPHOENIX/HELIOS
Dialog Manag.RAVENCLAW
Back-end(perl)
Language Gen.ROSETTA
Text I/OTTYServer
Grammar
Templates
RavenClawDialogTask
Specification
Back-end(perl)
RC Fixes 2h15, 11%
RavenClaw 4h, 19%
Design 4h, 18% Setup
1h10, 5%
Grammar3h45, 18%
Backend3h20, 16%
Templates 2h45, 13%
Total: 21:15h
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Captures all domain-specific dialog (task) logic with a hierarchical descriptionThe authoring effort is focused entirely here
Dialog Task (Specification)
Domain-independent Dialog Engine
Manages dialog by executing the dialog task specificationProvides domain-independent conversational strategies
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Welcome
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
LoadSymptoms
R:Headache R: R: R:
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
headache
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
R:Headache R: R: R:
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
headache
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
R:Headache R: R: R:
GeneralFeel
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
headache
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw Architecture
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
R:Headache R: R: R:
GeneralFeel
How are you feeling today?
general_feeling
chart
have_fever
diagnostic
HowAreYou
Expectation Agenda
general_feeling: [good], [bad], [soso]
general_feeling: [good], [bad], [[good], [bad], [[good], [bad], [sosososososo]]]
general_feeling: [good], [bad], [[good], [bad], [[good], [bad], [sosososososo]]]have_fever: [fever]. ![yes], ![no]![yes], ![no]![yes], ![no]headache: [headache], ![yes], ![no]![yes], ![no]![yes], ![no]cough: [cough], ![yes], ![no]![yes], ![no]![yes], ![no]……
GeneralFeel
I:Glad I:Sorry
Not so good, I think I have a fever[soso](not so good)[fever](I think I have a fever)
headache
GeneralFeel
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Illustrated FeaturesDynamic generation of dialog task structure
Symptoms loaded from backend, appropriate structures to “talk about them” created on-the-flyNew symptoms – no DM changes
Dynamic dialog control policyThe order in which symptoms are addressed is controlled by the backend
Conversational skills
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Illustrated FeaturesDynamic generation of dialog task structure
Symptoms loaded from backend, appropriate structures to “talk about them” created on-the-flyNew symptoms – no DM changes
Dynamic dialog control policyThe order in which symptoms are addressed is controlled by the backend
Conversational skills
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Dynamic Dialog Control …
Dialog Stack
Madeleine
Hi, this is Madeleine, the automated…How are you today?Not so good, I think I have a headacheSorry to hear you’re not feeling so good,Tell me more about your symptoms…Do you have abdominal pain?
Madeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
R:Headache R: R: R:
Diagnose
Expectation Agenda
general_feeling
chart
have_fever
diagnostic
headache
Backend Decision Tree
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Illustrated FeaturesDynamic generation of dialog task structure
Symptoms loaded from backend, appropriate structures to “talk about them” created on-the-flyNew symptoms – no DM changes
Dynamic dialog control policyThe order in which symptoms are addressed is controlled by the backend
Conversational skills
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Conversational SkillsCorresponding agencies added automatically to the dialog task tree
HelpWhat Can I Say?RepeatSuspend / ResumeStart OverTimeout handling (not illustrated)
Still need all the language generation prompts and grammar, but some of those are develop-once, too
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
ConclusionHighlights
Set task posed no challenges to the frameworkEasy to implement
Dynamic dialog structure and controlAutomatic use of domain-independent conversational skills
Lowlights?Toolkit perspective: how easy would it be for someone else to build it?Asynchronous behaviors? (timing)Couple of bugs / fixes (or is that a highlight?)…
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
RavenClaw GroundingMadeleine
E:LoadSymptoms GeneralFeel
R:HowAreYou? I:Glad I:Sorry
Diagnose
Fever Travel
R:AskFever E:MeasureTemp I:InformFever
I:Welcome
R:Headache R: R: R:
general_feeling
chart
have_fever
diagnostic
headache
Grounding EngineStateIndicators
Strategies
10-127-2003 Madeleine: a RavenClaw exercise in the medical diagnosis domain…
Other RavenClaw systemsLARRI – Language Assistant for Retrieval of Repair InformationRoomLine – Conference room reservation within SCSLet’s Go! (BusLine) – Bus schedule information in PittsburghTeamTalk – Command and control for a team of robotsEureka – Dialog interface to a clustered web search engine (Vivisimo)