CS4706: Spoken Language Processing, Spring 2012

Time: Mon/Wed 2:40-3:55
Place: Seeley Mudd 233

Professor Julia Hirschberg (Office Hours M 4:15-6:15 pm)
julia@cs.columbia.edu, 212-939-7114

Teaching Assistants

Rivka Levitan (Office Hours M 12:30-2:30) rlevitan@cs.columbia.edu, 212-939-7147

Erica Cooper (Office Hours W 12:30-2:30) ecooper@cs.columbia.edu, 212-939-7122

Announcements | Academic Integrity | Description
Readings | Resources | Requirements | Syllabus


This course introduces students to research in spoken language in computational linguistics, aka natural language processing (NLP). We will study the different `meanings' that can be conveyed by the way that speakers produce sentences, techniques for analyzing spoken language, methods of developing speech technologies such as text-to-speech systems and speech recognition systems, and applications of speech technologies in the real world, such as spoken dialogue systems (SDS).  Students will build an SDS in a domain of their choice, working in small teams.   NB: This course can be counted as a PhD elective in Advanced AI.  It is a requirement for the MS NLP Track.  There are no official prerequisites for this course except Data Structures or equivalent, and no prior knowledge of NLP will be assumed.


The major requirements of the course are a midterm, a final, and a 3-part class project.  Class participation will also contribute to your final grade.  The project involves building a spoken dialogue system in a domain of your choice.  You will build a text-to-speech (TTS) system and an automatic speech recognition (ASR) system from components we will provide; the dialogue component will involve building a simple system to put inputs and outputs together to accomplish some interesting and useful or fun task.  You are encouraged to do these projects in teams of 2-3.  There will be several project deadlines during the term where we evaluate your project description, your TTS system, your ASR system, and the overall project.  Project deadlines  will be allowed total of 5 late days with no questions asked; after that, 10% per late day will be deducted from the grade for that component, unless you have a note from your doctor.  Do not use these up early!  Save them for real emergencies. 

All students are required to have a Computer Science Account for this class. To sign up for one, go to the CRF website and then click on "Apply for an Account".  The Speech Lab is available for use in homeworks as needed on a signup basis.  Some parts of the project must be done in the Lab.


Academic Integrity

Copying or paraphrasing someone's work (code included), or permitting your own work to be copied or paraphrased, even if only in part, is not allowed, and will result in an automatic grade of 0 for the entire assignment or exam in which the copying or paraphrasing was done. Your grade should reflect your own work. If you believe you are going to have trouble completing an assignment, please talk to Prof. Hirschberg in advance of the due date.  Please see the university policy.

Required texts:

    Daniel Jurafsky and  James H. Martin Speech and Language Processing (second edition). Pearson: Prentice Hall. 2009.  See errata before you do each reading assignment.  There are some typos in algorithms.

    Other required readings are available online via links from this syllabus.


  • 50% Exams

  • 50% Course Project

  •           Class participation will be taken into account in calculating the final grade.

Homework submission procedure is described HERE.

Lab Signup.

Sign-up to use the Linux computers in the Speech Lab. .


·         Praat - Praat resources

·         Help using ToBI - ToBI Annotation Environments

·         Text-to-Speech Links and more...

·         Sox - audio file editing





Reading  Assignments

 HW Due Dates and Other Assignments

Jan 18

It's not what you said, it's how you said it



Jan 23 Spoken Dialogue: Human and Machine J&M 24-24.1, 24.8 Project Description assigned.  Make appointments to talk with Prof or TAs about your project.

Jan 25

From Sounds to Language

J&M 7.1-7.3, 7.5


Jan 30

Acoustics of Speech

J&M 7.4


Feb 1

Tools for Speech Analysis

Praat tutorial 1


Download Praat to your laptop if you have one and bring to class with headphones if you have.

Feb 6 Project Elevator Speeches and Lab Visit BVC Contest Project Description due.

Each team gives a 4-5m elevator speech about project in class.

Feb 8

Speech Generation Overview [pdf]

J&M 8 (pp. 249-50, 281-84); TTS-history; Historical examples


Feb 13

Building a TTS System


Rivka Levitan

Project Part 1 (TTS) assigned

Feb 15

Text Normalization

J&M 8.1, Sproatetal01


Feb 20

Modeling Pronunciation

J&M 8.2; Ghoshaletal09


Feb 22

Prosody Modeling

Hirschberg03, J&M 8.3.0-8.3.4, ToBI labeling conventions

Download and listen to all the ToBI examples.


Feb 27

Predicting Prosody from Text

J&M 8.3.4-8.3.7


Feb 29

Information Status: Focus and Given/New

GBrown83, Prince92, Terken&Hirschberg93

Takehome exercises (due in class Mar 7)

Mar 5

Backend Synthesis and TTS Evaluation [pdf]

J&M &M 8.4-5, 8.6 Tokuda35al02

Project Part 1 due

Project Part 2 (ASR) assigned 

(option: Installing Pocket Sphinx on your laptop)

Mar 7



NB:  Please deposit the take-home exercises for this exam in Courseworks before class.

Mar 12-16

Spring Break



Mar 19 Human Speech Perception J&M 10.7  

Mar 21

ASR: Overview

J&M 9-9.2


Mar 26

Building an ASR System

Sphinx home page, examples: C++, Python

Erica Cooper

Mar 28

Context-Free Grammars

J&M Ch 12-12.4


Apr 2

Language Modeling and Grammars

J&M 4-4.4


Apr 4

Pronunciation Modeling

J&M 6-6.5, 9.3-9.5

 Michael Picheny, IBM Research

Apr 9

Features, Training and Decoding

J&M 9.6-9.9


Project Part 2 due

Project 3 (SDS) assigned; Special Addition

Apr 11

SDS System Architectures

J&M 24.2-3


Apr 16

Recovering from Errors in SDS

J&M 24.5, Hirschbergetal04


Apr 18

Turn-Taking in SDS



Apr 23

Entrainment in SDS



Apr 25

SDS Evaluation

J&M 24.4, Walkeretal97

Preliminary Project Demos

Apr 30

Final Exam



May 1-3

Study Days



May 9

Project Demos (1:10-4)


Project Part 3 due; Special Addition


Links to Resources

cf. also resources available from the text homepage

Places to look up definitions and descriptions of terminology:

  1. Oxford Dictionary of Linguistics
  2. Interesting Language Factoids and Non

Other resources

  1. Karen Chung Language and Linguistics links
  2. CatSpeak
  3. Check out Eliza
  4. Appelt and Israel's information extraction tutorial (IJCAI-99).
  5. Framenet.
  6. Ask Jeeves-- a search engine that answers questions in plain English.
  7. Answer Bus -- another Q/A system.
  8. Columbia's NewsBlaster summarizer
  9. Systran machine translation (also in use at Babelfish)
  10. AT&T Labs - Research Finite State Machine Library
  11. Michael Collins' Parser
  12. On-line dictionaries in many languages.
  13. WordNet
  14. Framenet
  15. CoBuildDirect Corpus
  16. AT&T's SCANMail voicemail browsing/search system
  17. DiaLeague 2001 -- includes a link to an online dialogue system demo.
  18. James Allen's Dialogue Modeling for Spoken Language Systems ACL 1997 Tutorial
  19. Festival speech synthesizer demo and links to other TTS systems
  20. Julia Hirschberg's Intonational Variation in Spoken Dialogue Systems tutorial

Julia Hirshberg Portrait

Julia Hirschberg
Professor, Computer Science

Columbia University
Department of Computer Science
1214 Amsterdam Avenue
M/C 0401
450 CS Building
New York, NY 10027

email: julia@cs.columbia.edu
phone: (212) 939-7114

Download CV

Columbia University Department of Computer Science / Fu Foundation School of Engineering & Applied Science
450 Computer Science Building / 1214 Amsterdam Avenue, Mailcode: 0401 / New York, New York 10027-7003
Tel: 1.212.939.7000 / Fax: 1.212.666.0140