Overview

Published

January 13, 2025

Natural Language Processing (NLP) enables computers to work with human language. In this course, you will explore the core models and algorithms that underpin modern NLP, with a strong emphasis on practical experience. The course focuses particularly on large language models (LLMs) and the development of chatbots.

Learning outcomes

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

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

Course content

The course covers:

  • Concepts, models and algorithms of natural language processing
  • Relevant machine learning methods
  • Validation methods
  • NLP applications
  • NLP tools, software libraries, and data
  • NLP research and development
  • Societal, environmental and ethical aspects of NLP

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

  • 24 hours to watch the video lectures and complete the quizzes
  • 16 hours to attend the teaching sessions
  • 40 hours to prepare for, work on, and reflect on the labs
  • 80 hours to plan, work on, and document the project

Course literature

Natural language processing is a fast-moving field, and there is currently no single textbook that covers the course content. As a side reading, we recommend the following work in progress:

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, January 2025.

Course evaluations

The most recent course evaluations are available below: