Goteborg University Dialogue Systems Lab Dialogue and grammar Göteborg University Dialogue Systems Lab Language Technology in Sweden 2004-05-12 Karin Cavallin,

Slides:



Advertisements
Similar presentations
Automata Theory December 2001 NPDAPart 3:. 2 NPDA example Example: a calculator for Reverse Polish expressions Infix expressions like: a + log((b + c)/d)
Advertisements

Configuration management
Non-Native Users in the Let s Go!! Spoken Dialogue System: Dealing with Linguistic Mismatch Antoine Raux & Maxine Eskenazi Language Technologies Institute.
Resurser/ramverkDomän, dialogtypPrakiskt fokusTeoretisk fokus RebeccaTrindikit/godis, GFInterface till handdator [AOD] Uppgradering av applikation, flerspråkighet.
Microsoft® Office Access® 2007 Training
Data Mining and Text Analytics By Saima Rahna & Anees Mohammad Quranic Arabic Corpus.
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 9 Object, Package, Component and Deployment Diagrams (Based on Fowler, 2004,
Goteborg University Dialogue Systems Lab Motivation for using GF with GoDiS TALK meeting Edinburgh 7/
Software Development Languages and Environments. Programming languages High level languages are problem orientated contain many English words are easier.
XISL language XISL= eXtensible Interaction Sheet Language or XISL=eXtensible Interaction Scenario Language.
Requirements and Design
MULTI LINGUAL ISSUES IN SPEECH SYNTHESIS AND RECOGNITION IN INDIAN LANGUAGES NIXON PATEL Bhrigus Inc Multilingual & International Speech.
Integrating Nuance and Trindikit David Hjelm
Natural Language Processing AI - Weeks 19 & 20 Natural Language Processing Lee McCluskey, room 2/07
Stockholm 6. Feb -04Robust Methods for Automatic Transcription and Alignment of Speech Signals1 Course presentation: Speech Recognition Leif Grönqvist.
© 2006 Pearson Addison-Wesley. All rights reserved4-1 Chapter 4 Data Abstraction: The Walls.
Goteborg University Dialogue Systems Lab WP1: GoDiS VCR application Edinburgh TALK meeting 7/
Research about dialogue and dialogue systems and the department of linguistics goal: –develop theories about human dialogue which can be used when building.
Fundamentals of Information Systems, Second Edition
LE A toolkit for building and experimenting with dialogue move engines and systems, based on the information state approach TrindiKit.
Goteborg University Dialogue Systems Lab GoDiS and TrindiKit MITRE workshop 27/10-03 Staffan Larsson Göteborg University Sweden.
Programming. Software is made by programmers Computers need all kinds of software, from operating systems to applications People learn how to tell the.
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
1.3 Executing Programs. How is Computer Code Transformed into an Executable? Interpreters Compilers Hybrid systems.
Data Structures and Programming.  John Edgar2.
CSC 8310 Programming Languages Meeting 2 September 2/3, 2014.
Lecture 1, 7/21/2005Natural Language Processing1 CS60057 Speech &Natural Language Processing Autumn 2005 Lecture 1 21 July 2005.
VoiceXML Builder Arturo Ramirez ACS 494 Master’s Graduate Project May 04, 2001.
Starting Chapter 4 Starting. 1 Course Outline* Covered in first half until Dr. Li takes over. JAVA and OO: Review what is Object Oriented Programming.
Why Analysis Process Refer to earlier chapters Models what the system will do makes it easier for understanding no environment considered (hence, system.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
Grammars.
Data collection and experimentation. Why should we talk about data collection? It is a central part of most, if not all, aspects of current speech technology.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Teaching material for a course in Software Project Management & Software Engineering – part II.
Author: William Tunstall-Pedoe Presenter: Bahareh Sarrafzadeh CS 886 Spring 2015.
Experiments on Building Language Resources for Multi-Modal Dialogue Systems Goals identification of a methodology for adapting linguistic resources for.
CSI 3120, Grammars, page 1 Language description methods Major topics in this part of the course: –Syntax and semantics –Grammars –Axiomatic semantics (next.
1 Computational Linguistics Ling 200 Spring 2006.
Understanding User Requirements. Documenting Use Cases 2 At this stage of the exploration, the participants should be thinking of essential use cases.
Program Development Life Cycle (PDLC)
TMF1013 : Introduction To Computing Lecture 1 : Fundamental of Computer ComputerFoudamentals.
POSTECH DP & NM Lab. (1)(1) POWER Prototype (1)(1) POWER Prototype : Towards Integrated Policy-based Management Mi-Joung Choi
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
© RightNow Technologies, Inc. Ask The Experts: Getting the most out of Smart Assistant David Fulton, Product Manager, Web Experience Center Of Excellence,
Object-Oriented Analysis and Design Fall 2009.
An ICALL writing support system tunable to varying levels of learner initiative Karin Harbusch 1 & Gerard Kempen 2,3 1 University of Koblenz-Landau, Koblenz,
Introduction to Software Development. Systems Life Cycle Analysis  Collect and examine data  Analyze current system and data flow Design  Plan your.
1 Boostrapping language models for dialogue systems Karl Weilhammer, Matthew N Stuttle, Steve Young Presenter: Hsuan-Sheng Chiu.
240-Current Research Easily Extensible Systems, Octave, Input Formats, SOA.
ENTERFACE 08 Project 1 “MultiParty Communication with a Tour Guide ECA” Mid-term presentation August 19th, 2008.
Agenda 1. What we have done on which tasks 2. Further specification of work on all our tasks 3. Planning for deliverable writing this autumn (due in December)
Fundamentals of Information Systems, Second Edition 1 Systems Development.
Introduction to Dialogue Systems. User Input System Output ?
An Alternative Plan Virgil Bierschwale. Redesign Effort? In the “Outline of Redesign Effort” proposal that I received from Scott Henson, we find a massive.
Compiler Construction (CS-636)
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
ICT in Classroom Prepared by: Ymer LEKSI Kukes
TARGETED HELP FOR SPOKEN DIALOGUE SYSTEM SREEDHAR ELLISETTY.
Compiler Construction CPCS302 Dr. Manal Abdulaziz.
Automating programming via concept mining, probabilistic reasoning over semantic knowledge base of SE domain by Max Talanov.
Programming Objectives What is a programming language? Difference between source code and machine code What is python? – Where to get it from – How to.
Software Architecture for Multimodal Interactive Systems : Voice-enabled Graphical Notebook.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
1 M206 Chapter 31: An Overview of Software Development 1.Defining the problem 2.Analyzing the requirement – constructing initial structural model 3.Analyzing.
The PLA Model: On the Combination of Product-Line Analyses 강태준.
Software Development Languages and Environments. Computer Languages Just as there are many human languages, there are many computer programming languages.
Advanced Computer Systems
Introduction to Compiler Construction
Presentation transcript:

Goteborg University Dialogue Systems Lab Dialogue and grammar Göteborg University Dialogue Systems Lab Language Technology in Sweden Karin Cavallin, Robin Cooper David Hjelm, Staffan Larsson

Goteborg University Dialogue Systems Lab Speech recognition and NL interpretation & generation Options for SR: –Statistical language model –Grammar model Options for NL interpretation: –Word/phrase spotting –Grammar & parsing Options for NL generation –Template-based –Grammar-based Can be combined in various ways

Goteborg University Dialogue Systems Lab Are grammars useful for dialogue systems? Most working systems don’t use a grammar! Instead: –keyword or phrase-spotting techniques for interpretation –template-based generation Also, most working systems are built more or less from scratch –do not fully separate application-specific knowledge from general and reusable knowledge

Goteborg University Dialogue Systems Lab GoDiS A dialogue system built using TrindiKit and based on the information state approach Implements a theory of Issue-based Dialogue Management Some goals with GoDiS: –Provide a domain-independent theory covering several dialogue genres –Modularity and reusability of system components –Enable rapid prototyping of new applications Focus on dialogue management These goals have been achieved on the level of dialogue management... –... but not for NL processing

Goteborg University Dialogue Systems Lab SR and interpretation in GoDiS Started out as text-based system –Phrase spotting for interpretation; strings to dialogue moves –Templates for generation; dialogue moves to strings Added SR component –Did not have a corpus, so needed to write a speech recognition grammar by hand

Goteborg University Dialogue Systems Lab tvGoDiS GoDiS application for programming a VCR over the telephone –schedule recordings –remove planned recordings –TV card used for recording television programs as video files Small corpus collected of users calling the system –approx. 100 sessions (calls) and 1100 utterances –misrecognised utterances not yet transcribed –GUI enables immediate access to corpus

Goteborg University Dialogue Systems Lab Example from tvGoDIS corpus TrindiGui displaying a tvGoDiS sessiontvGoDiS session Audio files linked with utterances Access to information state at different stages of the dialogue

Goteborg University Dialogue Systems Lab Problems with GoDiS Mismatch between SR module and interpretation module –correctly recognised speech was misinterpreted –Leads to strange and unexpected behaviour (unexpected interactions with dialogue management)

Goteborg University Dialogue Systems Lab ASR/interpretation mismatch S> Välkommen till videon! För att få hjälp, säg hjälp.Välkommen till videon! För att få hjälp, säg hjälp. S> Låt oss se. Vad kan jag hjälpa dig med?Låt oss se. Vad kan jag hjälpa dig med? U> jag vill spela in ett program (0.6)jag vill spela in ett program S> Vill du lägga till en inspelning?Vill du lägga till en inspelning? U> ja (0.98)ja S> Låt oss se. Menar du från noll ett eller till noll ett?Låt oss se. Menar du från noll ett eller till noll ett? jag vill spela in ett program –Covered by SR grammar –Not covered by phrase spotting lexicon –However spela in and ett are recognized by interpretation module Correct interpretation: –jag vill spela in ett program  request(add_rec_job) Actual interpretation: –spela in  request(add_rec_job –ett  answer(time(1:00)) System assumes ett specifies either when the recording should stop or end – thus the follow-up question

Goteborg University Dialogue Systems Lab Problems with GoDiS Mismatch between interpretation module and generation module –System said something that led the user to believe they could say X –but the system does not understand X

Goteborg University Dialogue Systems Lab Interpretation/generation mismatch S> Du kan lägga till en inspelning, ta bort en planerad inspelning, och lista planerade inspelningar. För att börja om, säg börja om. För att sluta, säg sluta.Du kan lägga till en inspelning, ta bort en planerad inspelning, och lista planerade inspelningar. För att börja om, säg börja om. För att sluta, säg sluta. S> huvudmenyn. Vad kan jag hjälpa dig med?huvudmenyn. Vad kan jag hjälpa dig med? U> lista inspelningar (0.75)lista inspelningar S> Ockey. gå till inspelningar.Ockey. gå till inspelningar. S> Låt oss se. Vill du lägga till en inspelning, radera dina inspelningar eller få information om dina inspelningar?Låt oss se. Vill du lägga till en inspelning, radera dina inspelningar eller få information om dina inspelningar? Help message suggests that the user can say lista inspelningar But help message is not up- to-date, and neither is SR grammar. Instead interpretation module finds word inspelningar The user is asked to choose between roughly the same alternatives that was presented in the help message

Goteborg University Dialogue Systems Lab Bugs can of course be fixed... –would take lots of time –no guarantee that new bugs won’t be introduced –no guarantee that all bugs have shown up These solutions are not reusable Instead, we want a general and principled solution –enable reuse and rapid prototyping of applications, including grammars

Goteborg University Dialogue Systems Lab Solution, part 1: single grammar for SR, interpretation, generation No mismatches between the grammars Only one grammar needs to be written for each application However: –the different modules may require different kinds of grammars, in different formats So: –We need to be able to generate all 3 grammars from a single grammar However, we may not want the exact same coverage for SR, interpretation and generation grammars –May not want to understand everything that can be generated

Goteborg University Dialogue Systems Lab Solution, part 2: use GF! GF is a powerful tool for mutilingual grammar development Can be used to generate grammars in various other formats Subgrammars can be extracted from larger grammars –SR, interpretation and generation subgrammars may have different coverage In addition, GF offers resource grammars in several languages –This promises to further decrease the time needed for writing a new application grammar

Goteborg University Dialogue Systems Lab GF GoDiS Grammar Application grammars –User grammar –System grammar –Shared grammar, used by user grammar and system grammar Utility grammars –Weekday, Time, Channel Application grammars may use –Utility grammars –Resource grammars

Goteborg University Dialogue Systems Lab GF VCR grammar One abstract syntax –GoDiS dialogue moves as GF abstract trees Three concrete syntaxes –Swedish –English –GoDiS dialogue moves in prolog notation Statistics: –Abstract syntax : ~420 lines of code –Concrete syntax : Prolog: ~440 lines of code Swedish: ~440 lines of code

Goteborg University Dialogue Systems Lab Parsing Swedish to abstract syntax > p -cat=DMove -lang=Swe "spela in från kvart över tolv" request (vcr_add_rec_job_args1 (startTimeToStoreReq (startTimeToStore (time hour12 minute15))))

Goteborg University Dialogue Systems Lab Linearising abstract syntax to Prolog notation > l -lang=Prolog request (vcr_add_rec_job_args1 (startTimeToStoreReq (startTimeToStore (time hour12 minute15)))) request(add_rec_job, answer(start_time_to_store(12 : 15))

Goteborg University Dialogue Systems Lab Translating Prolog to Swedish > t -cat=DMove Prolog Swe "request(add_rec_job, answer(start_time_to_store(12 : 15))" spela in från tolv femton spela in från tolv och femton spela in från femton över tolv spela in från femton minuter över tolv spela in från kvart över tolv

Goteborg University Dialogue Systems Lab Time Grammar A multilingual grammar module Swedish, English, Prolog, started on French and Catalan.

Goteborg University Dialogue Systems Lab Constructing concrete syntaxes for time expressions isn’t always trivial Abstract: time hour12 Minute30 Prolog: 12 : 30 English: half past twelve / half twelve Swedish: halv ett klockan två klockan två och femton ?klockan fjorton two o’clock *two fifteen o’clock *fourteen o’clock Corpus studies needed

Goteborg University Dialogue Systems Lab Another problem am or pm? på morgonen på eftermiddagen på kvällen på natten

Goteborg University Dialogue Systems Lab Combining GF and statistical methods for robustness Use GF to generate a corpus to use as a baseline for SLM training Use GF-generated SR grammars in initial system and collect corpus to be used for training SLMs for speech recognition For recognized out-of-grammar string, try to find nearest in-grammar string; confirm this with user (Gorrell 2003)

Goteborg University Dialogue Systems Lab Conclusion Keeping track of separate SR, interpretation and generation grammars in a dialogue system is time-consuming GF offers the possibility of rapid prototyping of grammars for use in dialogue system applications –Generate other grammar formats from GF –Resource grammars for several languages GF can be combined with statistical methods for robustness