University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Postgraduate Course: Advanced Natural Language Processing (INFR11059)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 11 (Postgraduate) AvailabilityAvailable to all students
SCQF Credits20 ECTS Credits10
Summary***PLEASE NOTE: This course has been replaced by INFR11125 Accelerated Natural Language Processing, please see the entry for that course.***

The course will synthesize recent research in linguistics, computer science, and natural language processing with the aim of introducing students to theoretical and computational models of language. The course will familiarize students with a wide range of linguistic phenomena with the aim of appreciating the complexity, but also the systematic behaviour of natural languages like English, the pervasiveness of ambiguity, and how this presents challenges in natural language processing. In addition, the course introduce the most important algorithms and data structures that are commonly used to solve many NLP problems.

The course will cover formal models for representing and analyzing syntax and semantics of words, sentences, and discourse. Students will learn how to analyse sentences algorithmically, using hand-crafted and automatically induced treebank grammars, how to make monotonic syntactic derivations, and build interpretable semantic representations. The course will also cover a number of standard algorithms that are used throughout language processing. Examples include Hidden Markov Models, the EM algorithm, and state space algorithms such as dynamic programming.
Course description Part I: Words
* Inflectional and derivational morphology
* Finite state methods and Regular expressions
* Word Classes and Parts of speech
* Sequence Models (Markov and Hidden Markov models, smoothing)
* The Viterbi algorithm, Forward Backward, EM
* Maximum Entropy Models

Part II: Syntax
* Language and Complexity (e.g., Chomsky hierarchy, the Pumping Lemma)
* Syntactic Concepts (e.g., constituency, subcategorisation, bounded and unbounded dependencies, feature representations)
* Analysis in CFG - Greedy algorithms---Shift-reduce parsing
* Divide-and-conquer algorithms---CKY
* Chart parsing
* Lexicalised grammar formalisms (e.g., TAG, CCG, dependency grammar)
* Trans-CF grammars
* Statistical parsing (PCFGs, dependency parsing)
* Search algorithms: Breadth-first, depth-first search, A* search
* Minimum spanning trees for dependency parsing

Part III: Semantics and Pragmatics
* logical semantics and compositionality
* Semantic derivations in grammar
* Lexical Semantics (e.g., word senses, semantic roles)
* Discourse (e.g., anaphora, speech acts, )

Part IV: Corpus creation and Evaluation
* Markup, annotation
* Evaluation measures

Relevant QAA Computing Curriculum Sections: Not yet available
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Students MUST NOT also be taking Foundations of Natural Language Processing (INFR09028)
Other requirements This course is open to all Informatics students including those on joint degrees. For external students where this course is not listed in your DPT, please seek special permission from the course organiser.

Programming at the level of Computer Programming for Speech and Language Processing or equivalent.
Information for Visiting Students
High Demand Course? Yes
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Students should be able to construct examples of ambiguous Natural Language sentences and provide a written explanation of how ambiguity arises in natural language and why this is a problem for computational analysis.
  2. Given a grammar, semantics and sentence, students should be able to construct a syntatic and semantic analysis of the sentence.
  3. Given an appropriate NLP problem, students should be able to apply sequence models, parsing and search algorithms and provide a summary of their operation in this context.
  4. Given an appropriate NLP problem, students should be able to analyse the problem and decide which data structures and algorithms to apply. ? Review and classify search algorithms and ways of manipulating dynamic data structures.
  5. Given two NLP algorithms, students should be able to describe how they are related and illustrate differences and limitations by providing illustrative examples.
Reading List
Jurafsky and Martin, Speech and Language Processing, 2nd edition, 2008.
Additional Information
Course URL
Graduate Attributes and Skills Not entered
KeywordsNot entered
Course organiserDr Sharon Goldwater
Tel: (0131 6)51 5609
Course secretaryMs Katey Lee
Tel: (0131 6)50 2701
Help & Information
Search DPTs and Courses
Degree Programmes
Browse DPTs
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Important Information
© Copyright 2015 The University of Edinburgh - 18 January 2016 4:13 am