1 / 129

Dialogsystem

Dialogsystem. Logopediutbildningen VT05 Staffan Larsson sl@ling.gu.se Institutionen för lingvistik, GU. Översikt. Dialogsystem som gränssnitt Dialogmodellering Agenter och dialog TrindiKit och informationstillstånd Ett exempel: BeadieEye Frågebaserad dialoghantering i GoDiS

azuka
Download Presentation

Dialogsystem

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. Dialogsystem Logopediutbildningen VT05 Staffan Larsson sl@ling.gu.se Institutionen för lingvistik, GU

  2. Översikt • Dialogsystem som gränssnitt • Dialogmodellering • Agenter och dialog • TrindiKit och informationstillstånd • Ett exempel: BeadieEye • Frågebaserad dialoghantering i GoDiS • Dialogsystem och AAC

  3. Dialogsystem som gränssnitt

  4. Vad är gränssnitt? • Teknologier som utgör kontaktytan mellan människan och maskinen • Tillåter kommunikation mellan människa och maskin • Exempel: • Skärm • Tangentbord • Mus • Talad dialog? • Gränssnittet bestämmer hur vi relaterar till maskinerna i vardagen

  5. Språket som gränssnitt • Kan språket (det mänskliga, naturliga, talade) användas för att överbrygga gränsen mellan människa och maskin? • Hur? • Genom att få maskiner (datorer) att förstå mänskligt språk och kunna föra dialoger: detta är ett av målet för språkteknologin • Varför? • Talad dialog är – för människor - det mest naturliga sättet att interagera

  6. Dialog och dialogsystem • Dialog: • interaktivt informationsutbyte med hjälp av naturligt språk • Dialogsystem: • Teknologier som möjliggör interaktion mellan människa och maskin med hjälp av (talad) dialog

  7. Praktiska användningsområden (urval) • Demokratisering av teknologi • Dialog som gränssnitt till teknologi som annars hade varit för komplex • Fördel: kräver ingen teknisk fallenhet eller förkunskaper (utöver att kunna tala) • Kommunikationsstöd • För döva • För blinda • Andra funktionshinder • Möjliggöra kommunikation • Tal-till-tal-översättning

  8. Varför är dagens dialogsystem inte bättre? • Exempel: SJ:s tidtabellsupplysning (020 757575), Tidpunkten (077 1414300) • Dessa systems förmåga att föra en dialog ligger ljusår från människans. Varför? • De utgår i stor utsträckning från maskinernas förutsättningar, inte från teorier om den mänskliga dialogförmågan!

  9. Hur ska vi kunna bygga bra dialogsystem? • För det första: Vi måste förstå hur människor använder språk! • Wittgenstein (1889- 1951): • Språklig aktivitet är alltid förankrad i någon specifik mänsklig aktivitet! • Till varje aktivitet hör ett språkspel; ett språk som svenska är i själva verket en samling språkspel • För det andra: vi måste formulera våra teorier på ett sätt som är begripligt för en dator • Formalisering och simulation

  10. Formalisering • Översättning till ett formellt språk • Exempel på formella språk • Matematik • Används för att formalisera bl a fysik • Logik • Programmeringsspråk, t ex Java • Formella språk är generellt sett extremt enkla och regelbundna • Detta gör att datorer kan ”förstå” dem

  11. Simulation • Antag att vi har en teori om (en del av) den mänskliga språkförmågan • Hur ska vi ta reda på om den är sann? • Empiriska studier (lingvistik) • Studera insamlat språkligt material • Gör experiment • Simulering (språkteknologi / datalingvistik) • Översätt teorin till ett datorprogram (formalisera) • Kör programmet och se om beteendet är det förväntade • ”reverse engineering”

  12. Dialogsystem som simulationer • Dialogsystem försöker simulera hela den mänskliga språkförmågan • Att uppfatta, tolka och förstå talade yttranden • Att resonera om vad som ska sägas och när det ska sägas • Att formulera och uttala yttranden

  13. Två sorters språkteknologi? • ”Praktisk” språkteknologi • Förbättra gränssnitt • I princip ointressant huruvida man försöker efterlikna en mänsklig språklig förmåga • Simulerande språkteknologi / datalingvistik • En forskningsmetodik för att utforska den mänskliga språkförmågan • I princip ointressant huruvida resultatet är praktiskt användbart • Dessa sammanfaller i den mån det människolika också är det praktisk användbara • Det finns skäl att tro att möjligheterna att simulera hela den mänskliga språkförmågan är begränsad

  14. Maskinen människan? • Descartes (1596-1650) • Djur är att betrakta som maskiner • Människan har en själ, och skiljer sig därför på ett fundamentalt sätt från djuren • de la Mettrie (1709-1751) • ”Maskinen människan” • Skillnaden mellan människa och maskin är en kvantitativ skillnad i komplexitet • Ingen fundamental skillnad!

  15. Turingtestet • Kan en maskin vara intelligent? • Är ”artificiell intelligens” (AI) möjlig? • Turing (1912-1954): ”Turingtestet” • Testperson A får föra en dialog (via textterminaler) med B. • A:s mål är att försöka avgöra om B är en människa eller en dator • (OBS! Detta är en förenklad version av Turingtestet!)

  16. Turingtest och dialogsystem • Enligt Turingtestet – vad är det fundamentalt mänskliga? • Förmågan att föra en dialog med naturligt språk! • Varför skulle detta vara fundamentalt? • Antagande: I talet visar sig alla andra mänskliga förmågor (direkt eller indirekt)

  17. En svart låda • Turing behandlar i stor utsträckning psyket som en svart låda • Om vi lyckas simulera mänskligt beteende, betyder det att vår teori är korrekt? • Turing: Ja; alla eventuella skillnader är oväsentliga! • Fenomenologisk kritik (Dreyfus, Heidegger) : Nej; även om vi lyckats fånga de centrala iakttagbara aspekterna av det mänskliga psyket i datorn, så ÄR den inte en människa – vi kan inte veta att datorn fungerar som en människa inuti!

  18. Heideggers projekt i Varat och tiden • Beskriv grunderna för det mänskliga varandet • Hur det är att vara människa • Detta kan enligt Heidegger bara göras ”inifrån” • H:s utläggning är ej avsedd att vara begriplig för någon som inte är människa • En sådan förklaring är inte möjlig, hävdar H.; det mänskliga går inte att förklara ”från scratch” • Ändå är det en sådan förklaring som eftersträvas inom AI-forskningen

  19. Principargument mot ”artificiell intelligens” • (här: AI = att datorer skulle kunna förstå språk på samma sätt som människor gör det) • ”Religiösa” argument • Människan har en immateriell själ, vilket maskiner aldrig kan ha • Materiella argument • Varelser av silikon och metall kan aldrig vara sant mänskliga; till detta krävs kött och blod (och neuroner)

  20. Fler principargument • Freudianska argument • Människor och maskiner har radikalt annorlunda konstitution och ursprung; detta ursprung (t ex barnets utvecklingsfaser) är fundamentalt för hur vi förstår världen och språket • Maskiner föds inte av två andra maskiner; de byggs • Fenomenologiska argument • Spädbarn är, strikt talat, inte människor; de måste först socialiseras in i världen • Maskiner socialiseras aldrig in i världen; de programmeras • AI kräver formalisering av tolkningsbakgrund, vardaglig omedveten praktisk förmåga att förstå världen • Men denna ”kunskap” är inte en samling fakta • Människor har en biologisk kropp som ligger till grund för deras sätt att förstå världen • AI förutsätter att intelligens kan abstraheras från kroppen

  21. (Hur människolika ska maskinerna bli?) • Vill man verkligen efterlikna alla mänskliga engenskaper? • Freudianska felsägningar? • Dåligt minne? • Panikångest? Utbrändhet?

  22. Principfrågan – i princip ointressant? • Är det egentligen intressant huruvida människor i princip är / inte är maskiner? Frågan om huruvida en dator kan tänka är inte mer intressant än frågan om huruvida en ubåt kan simma. (E. W. Dijkstra, 1930-2002)

  23. Fel fråga? • Istället för ”Kan maskiner vara intelligenta”: • På vilket sätt kan maskiner vara intelligenta? • Hur simmar ubåtar?

  24. Dialog i begränsade regelbundna domäner • Även om vi inte kan hoppas simulera den mänskliga språkförmågan.. • ...så kan dialogsystem fortfarande göra nytta för att förbättra gränssnitt till datorer och annan teknologi • Detta kan göras för relativt enkla och regelbundna domäner (resebyrå. programmera videon, ordbehandling...) • (Wittgensteins språkspel) • Men även om vi inte försöker simulera mänsklig dialogförmåga i datorn... • ...så måste den kunna delta i en dialog med en människa • detta kräver kunskap om mänsklig kommunikation och dialog

  25. Dialogmodellering

  26. Dialogue modelling • Theoretical motivations • find structure of dialogue • explain structure • relate dialogue structure to informational and intentional structure • Practical motivation • build dialogue systems to enable natural human-computer interaction • (what is natural?)

  27. Informal approaches to dialogue modelling • speech act theory (Austin, Searle, ...) • utterances are actions • illocutionary acts: ask, assert, instruct etc. • discourse analysis (Schegloff, Sacks, ...) • turn-taking, pre-sequences etc. • dialogue games (Sinclair & Coulthard,...) • structure of dialogue segments (rather than separate utterances) • can e.g. be encoded as regular expressions or finite automata • qna-game -> question qna-game* answer

  28. Computational approaches implemented in systems and toolkits • finite state automata (CLSU toolkit, Nuance) • frame-based (Philips, SpeechWorks) • plan-based (TRAINS, Allen, Cohen, Grosz, Sidner, ...) • general reasoning (Sadek, ...) • information states (TRINDI: Traum, Bos, ...)

  29. Why build dialogue systems? • theoretical: test theories (of human-computer dialogue) • e.g. what kind of information does the an artificial dialogue agent need to keep track of? • problem: complex system with many components • practical: natural language interfaces • databases (train timetables etc) • electronic devices (mobile phones,...) • instructional/helpdesk systems • booking flights etc • tutorial systems

  30. What does a system need to be able to do? • speech recognition • parsing, syntactic and semantic interpretation • resolve ambiguities • anaphora and ellipsis resolution, etc... • dialogue management • how does an utterance change the state of the dialogue? • given the current state of the dialogue, what should the system do? • natural language generation • speech synthesis

  31. Why spoken dialogue? • Spoken dialogue is the natural way for people to communicate • as far as possible, computers should adapt to humans rather than the other way around • (but humans will also need to adapt their conversational style) • important to enable system and user to communicate in a natural (human-like) way • mixed initiative • turntaking, feedback, barge-in • handle embedded subdialogues • ...

  32. What’s happening with dialogue systems • Beginning to be used commercially • Limited domains • need to encode domain-specific knowledge; a general system would require general world knowledge • speech recognition is harder with large lexicon • Simple dialogue types • mostly information-seeking • Need to bridge gap between dialogue theory and working systems

  33. Agenter (och dialog)

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

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

  36. Attityder för deliberativa agenter • Privat • Social • Informationsattityd • kunskap / tro • Proattityd • handling, mål

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

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

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

  40. 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) (?)

  41. (Agenter och) dialog Kunskap för dialogagenter Informella approacher Formella ramverk

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

  43. Hur ska kunskap representeras? • Kunskapsrepresentationsspråk, t ex FOL, semantiska nätverk, frames... • Kunskapsbas = mängd av statser + inferensregler • ontologier / typhierarkier (för begreppskunskap)

  44. 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 (?)

  45. Ramverk för dialogagenter • Finita automater • strikt ”flödesschema” från starttillstånd till sluttillstånd • i varje tillstånd är ett begränsat antal handlingar möjliga • Logikbaserade • Rationalitetsaxiom + inferens • axiomatiserad talaktsteori (i modallogik) • problem med komplexitet och avgörbarhet • Planbaserade • Planering & planigenkänning • talakter som planer • problem med komplexitet • Informationstillstånd • dialogdrag, dialogspel, uppdateringsregler • variabel komplexitet deliberativ <-> reaktiv • Dessa kan kombineras!

  46. 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 är handlingar som ändrar • mentala tillstånd • kontexten och dialogtillståndet

  47. Interaktion på flera nivåer • Ide: modellera dialog som handlingar på flera nivåer • ej bara satsnivå (talakter) • 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

  48. TrindiKit

  49. What is TrindiKit? a toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach not a dialogue system in itself

  50. control DME module1 module… modulei modulej module… modulen • Total Information State • (TIS) • Information state proper (IS) • Module Interface Variables • Resource Interface Variables resource1 resource… resourcem

More Related