Seminars in artificial Intelligence and Robotics: Natural Language Processing
To pass the exam, students must pass at least 3 out of 4 tests and deliver the course project. Students that do not pass the tests are required to read a paper among those in the list below and prepare a written summary of 3 pages (antiplagiarism sw will be used, so take care to rephrase the paper content in your words. Don't worry: your English will not be evaluated!). The paper is of your choice, but you must obtain the instructor's ack to avoid that the same paper is chosen more than one time. The project is due in any case.
Homeworks are assigned after every lesson. A 15m written test is performed every subsequent lesson.
Study the Viterbi algorithm
. The test will concern the Viterbi algorithm and its use in Part of Speech tagging.
Study basic RegEx
in Perl http://www.cs.tut.fi/~jkorpela/perl/regexp.html
and be ready to write some very simple Regex to identify strings in texts. Think of more high-level (with lexical/semantic constraints) RegEx
to recognize Location names.
Read IBM's Watson paper IBM Question Answering
and Poon and Domingo's USP paper Unsupervised Semantic Parsing
. Be prepared to answer some questions on these two papers.
Install Sphinx and Stanford Parser - Read: Sphinx-4: A Flexible Open Source Framework for Speech Recognition whitepaper
and Stanford parses whitepaper
. You may also want to read: An Introduction to Speech Recognition, B. Plannerer, 2005 and Understanding the CMU Sphinx Speech Recognition System, Chun-Feng Liao, National Chengchi University. The Test will be on May 24th (May 10 lesson wil be held by Prof. Roberto Basili on Machine learning methods for NLP).
This year the project will consist in installing and using Sphinx, an open source toolkit for Speech Recognition. Details will be provided during the course. Sphinx can be downloaded from http://cmusphinx.sourceforge.net/
Here you can find a previous students' project on Sphinx
- Introduction to NLP
- Information Extraction
- Question Answering
- Speech Recognition
- Dialogue systems
- Introduction: Definition of NLP tasks, architecture and methods. An example: Hidden Markov Models and Viterbi algorithm for Part of Speech Tagging Lesson 1.
- Information Extraction Lesson 2.
- Question Answering Lesson 3.
- Speech recognition Lesson 4.
- Machine Learning for NLP (Prof. Roberto Basili) Lesson 5.
- Discourse and Dialogue Lesson 6.
Students can select one of the following papers for the final exam. Students are invited to present a paper of their choice, but this must be agreed with the instructor via email.
- (Initial set of papers, to be enriched)
- An Introduction to Speech Recognition, B. Plannerer, 2005
- Understanding the CMU Sphinx Speech Recognition System, Chun-Feng Liao, National Chengchi University
- Olympus: an open-source framework for conversational spoken language interface research, Dan Bohus, Antoine Raux, Thomas K. Harris, Maxine Eskenazi, Alexander I. Rudnicky
- Towards Conversational Human-Computer Interaction. James F. Allen, Donna K. Byron, Myroslava Dzikovska, George Ferguson, Lucian Galescu, Amanda Stent (AI magazine)
- Conversational robots: building blocks for grounding word meaning. Deb Roy, Kai-Yuh Hsiao and Nikolaos Mavridis
- Comparing objective and subjective measures of usability in a human-robot dialogue system. Mary Ellen Foster, Manuel Giuliani, Alois Knoll
- Spontaneous speech understanding for robust multi-modal human-robot communication. Sonja HŘwel, Britta Wrede
- Conversational gaze mechanisms for humanlike robots. Bilge Mutlu, Takayuki Kanda, Jodi Forlizzi, Jessica Hodgins, Hiroshi Ishiguro
- Spatial role labeling: Towards extraction of spatial relations from natural language. Parisa Kordjamshidi, Martijn Van Otterlo, Marie-Francine Moens
- Understanding Natural Language Commands for Robotic Navigation and Mobile Manipulation. Stefanie Tellex and Thomas Kollar and Steven Dickerson and Matthew R.Walter and Ashis Gopal Banerjee and Seth Teller and Nicholas Roy
- Learning to Follow Navigational Directions. Adam Vogel and Dan Jurafsky
- Toward Understanding Natural Language Directions. Thomas Kollar and Stefanie Tellex and Deb Roy and Nicholas Roy
Project: Train Sphinx (better if using pocket Sphinx for cellular phones) to recognize directions (e.g. in the environment of your Faculty: see a similar corpus of steet directions http://www.ltg.ed.ac.uk/ibl/
). Define a small corpus of 100 short sentences. Measure the performances using the performance indicators presented during the Speech Recognition lesson. Then process the recognized texts with the Stanford parser, and again measure the performances. How many errors are induced by the speech recognizer, how many by the parser? Write a 5-10 page report and comment.
Students that, at the end of the course, did not pass the classroom test will additionally read and present one of the papers in the above list (they can choose the preferred paper, but every student must have a different paper).
NOTE: Students can coordinate their work creating and joining a Google group NLP - 2013
* The Stanford parser (English, Arabic, Chinese) http://nlp.stanford.edu/software/lex-parser.shtml
* The Treetagger (POS tagger and Chunker for many languages including Estonian, Romenian, Latin, Swaili and more) http://www.ims.uni-stuttgart.de/projekte/corplex/TreeTagger/DecisionTreeTagger.html
* A Word Sense Disambiguation tool based on WordNet
* Machine Translation: Google Translate - http://translate.google.com/#
* Multilingual electronic dictionary of football (soccer) language. It is based on FrameNet http://www.kicktionary.de/
*Transcription of the IBL speech corpus (route directions in a University Campus) http://www.ltg.ed.ac.uk/ibl/ibl-transcription.txt
NOTE: details on the IBL corpus are found on http://www.tech.plym.ac.uk/soc/staff/guidbugm/ibl/readme1.html
It is a useful guide on how to build a corpus of expressions and words used by humans instructing an agent moving an artificial environment.
* Sphinx, open source speech recognition http://cmusphinx.sourceforge.net/
, A very large multilingual ontology http://lcl.uniroma1.it/babelnet/
NLP Web Utilities