Overview

Published

January 12, 2024

Natural Language Processing (NLP) develops methods for making human language accessible to computers. This course aims to provide you with a theoretical understanding of the models and algorithms that power modern NLP, and with practical experience in applying them to realistic problems. The course focuses on methods based on deep learning.

Learning outcomes

On completion of the course, you 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

Course content

The course covers

  • 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

in the following areas: language models, representation learning, and structured prediction.

Course format

We teach this course through video lectures, on-campus teaching sessions, tutored computer labs, and supervision in connection with a final project. We expect you to also study independently, both individually and in groups. When you plan your time for the course, you should calculate approximately

  • 30 hours to watch the video lectures and work with the quizzes
  • 18 hours to attend the on-campus sessions
  • 56 hours to prepare for, work on, and reflect on the labs
  • 56 hours to plan, work on, and reflect on the project

Course literature

Natural language processing is a fast-moving field, and there is currently no single textbook that covers the course content. However, we will assign individual sections from the following books:

Course evaluations

The most recent course evaluations are available below: