Computer Laboratory

Course pages 2012–13


Natural Language Processing

Lecturer: S.H. Teufel

No. of lectures: 8

Suggested hours of supervisions: 2

Prerequisite courses: Regular Languages and Finite Automata, Probability, Logic and Proof, and Artificial Intelligence


This course aims to introduce the fundamental techniques of natural language processing and to develop an understanding of the limits of those techniques. It aims to introduce some current research issues, and to evaluate some current and potential applications.


  • Introduction. Brief history of NLP research, current applications, generic NLP system architecture.

  • Finite-state techniques. Inflectional and derivational morphology, finite-state automata in NLP, finite-state transducers.

  • Prediction and part-of-speech tagging. Corpora, simple N-grams, word prediction, stochastic tagging, evaluating system performance.

  • Parsing and generation. Generative grammar, context-free grammars, parsing and generation with context-free grammars, weights and probabilities.

  • Parsing with constraint-based grammars. Constraint-based grammar, unification.

  • Compositional and lexical semantics. Simple compositional semantics in constraint-based grammar. Semantic relations, WordNet, word senses, word sense disambiguation.

  • Discourse and dialogue. Anaphora resolution, discourse relations.

  • Applications. Combination of components into applications.


At the end of the course students should

  • be able to discuss the current and likely future performance of several NLP applications;

  • be able to describe briefly a fundamental technique for processing language for several subtasks, such as morphological processing, parsing, word sense disambiguation etc.;

  • understand how these techniques draw on and relate to other areas of computer science.

Recommended reading

* Jurafsky, D. & Martin, J. (2008). Speech and language processing. Prentice Hall.

For background reading, one of:
Pinker, S. (1994). The language instinct. Penguin.
Matthews, P. (2003). Linguistics: a very short introduction. OUP.

Although the NLP lectures don’t assume any exposure to linguistics, the course will be easier to follow if students have some understanding of basic linguistic concepts.

For reference purposes:
The Internet Grammar of English,