Overview
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 large language models (LLMs) and the development of chatbots.
Learning outcomes
On completion of the course, you will be able to:
- explain central concepts, models and algorithms in NLP
- implement NLP methods and apply them to realistic problems
- evaluate NLP components and systems using appropriate methods
Course content
The course covers the following content:
- Introduction to natural language processing
- Statistical and neural language models
- Word representations
- Syntactic and semantic analysis
- Neural network architectures
- Large language models
- Program libraries and datasets
- Evaluation methods
- Current research and development
Course format
We teach this course through video lectures, online teaching sessions, and tutored computer labs. We expect you to also study independently, both individually and in groups. When you plan your time for the course, you should calculate approximately
- 26 hours to watch the video lectures and complete the quizzes
- 12 hours to attend the teaching sessions
- 40 hours to prepare for, work on, and reflect on the labs
If you need help or want feedback, you can contact us via email or chat or book an appointment.
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.