Hide menu

Natural Language Processing (CUGS Core)


Status Active - open for registrations
School National Graduate School in Computer Science (CUGS)
Division NLP
Owner Marco Kuhlmann
Homepage http://www.ida.liu.se/divisions/aiics/nlp/courses/nlp/

  Log in  

Course plan


Natural Language Processing (NLP) develops methods for making human language accessible to computers. This course aims to provide you with a theoretical understanding of and practical experience with the advanced algorithms that power modern NLP. The course focuses on methods based on deep neural networks.

Recommended for

Doctoral students in computer science and other disciplines with previous experience in machine learning

The course was last given

Spring 2021. The course is an adaptation of a well-established Master's-level course targeted at students in engineering (TDDE09).


On completion of the course, the student should be able to:

* explain central concepts, models, and algorithms of NLP
* implement NLP algorithms and apply them to realistic problems
* evaluate NLP components and systems with appropriate methods
* identify, assess, and make use of NLP research literature


* discrete mathematics, calculus, linear algebra, probability theory
* good knowledge of programming, data structures, and algorithms
* machine learning

The lab series for the course uses Python.


* state-of-the-art algorithms for the analysis and interpretation of natural language
* relevant machine learning methods with a focus on deep neural networks
* validation methods
* NLP applications
* NLP tools, software libraries, and data
* NLP research and development


The course is given in the form of lectures, computer labs, and supervision in connection with a project.


The reading for this course consists of individual sections from the following books:

Jacob Eisenstein. Introduction to Natural Language Processing. MIT Press, 2019. Pre-print version available online

Daniel Jurafsky and James H. Martin. Speech and Language Processing. An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. Draft chapters in progress, December 2021.


Marco Kuhlmann


Marco Kuhlmann


The course consists of the following modules:

* Practical assignments, 3 credits (U, G)
* Project assignments, 3 credits (U, G)

Alternatively, you can replace the project module with an extended set of practical assignments.

To pass the course, you must pass both modules.


6 credits

Organized by

Department of Computer and Information Science, Linköping University


This is a CUGS Core course.

Page responsible: Director of Graduate Studies