Summer 2015

Course Overview

Interactive applications have become ubiquitous around the world on phones and other devices.  Since voice is the most natural medium for human communication, spoken dialog is becoming an essential part of the interface.  However, creating an effective spoken dialog application requires more than just programming skills.  It requires knowledge from many disciplines including linguistics, artificial intelligence, computer-human interaction, and computational linguistics. This course will bring together the essential elements of these fields and the software skills and tools required to build an effective dialog system and guide students through hands-on projects applying that knowledge to real applications.

Dates: June 1 - July 31
Time: Mondays & Thursdays 10-12 & 1-3
Location: Volen 106


Dr. Marie Meteer
Office: Feldberg 127
Office Hours: Monday & Thusday 3-4 and by appointment

Teaching Assistant

Yuchen Zhang:

Learning Objectives

At the end of the course students will

  • Understand the basic principles of the fields that are underlie spoken dialog, including:
    • Fundamental linguistic principles of discourse
    • Basic undestanding of speech recognition and speech synthesis technologies
    • Applied natural language processing techniques
    • Artificial Intelligence techniques for plan recognition and task execution
    • Human-computer Interaction (HCI) and Voice User Interface (VUI) design
  • Understand the architecture of spoken dialog systems and the capabilities and limitations of the software components required to execute the application, such as
    • Speech recognition
    • Grammars and language models
    • Speech recognition evalution
    • Natural language processing components
    • Speech synthesis
    • Dialog modules
  • Be able to apply this knowledge to building spoken dialog applications using industry and research tools.


  • This site ( will provide the detailed schedule and assignments. The schedule will evolve based on class progress and interest, so check it regularly.
  • Quizes and individual assigments will be submitted on Latte.
  • I've set up a Piazza site for the class forums/blogs. Participation on those forums will count towards your class participation portion of the grade.
  • Code or data will be made available through Dropbox.
  • There is a Googledocs folder for shared written documents. Groups will add their own subdirectories for keeping design documents. There is also a folder for documentation on "Useful Tools". Feel free to add comments (keeping them brief and to the point).

While I think each of these platforms works best in their different roles, keeping everything in sync can be a challenge. If you see a discrency or leftover dates from another semester, please email me.


  • 40% programming assignments: There will be 4-5 programming assignment exercising the principles covered in the lectures that will expose students to a variety of programming languages and tools that are typically used in spoken dialog development in research and industry.
  • 40% Homework and take home quizzes: Periodic homework assignments and take home quizzes will allow students to synthesize the knowledge from readings and lectures and consider the application of the principles in multiple contexts.
  • 20% Class participation: Students will be required to participate in class discussions, work in groups, and submit to class blog discussions.