This is an overview of the PhD-level course Deep Learning for Natural Language Processing, taught by Marco Kuhlmann and Richard Johansson. The course will run as a distance course in the second half of the Spring term of 2020.
The goal is to introduce machine learning techniques used in modern natural language processing (NLP). Ideally, after finishing this course, you will have some familiarity with the state of the art in NLP and you’ll be able to understand modern research papers in this field, and you’ll have some practical experience coding up some of the well-known models.
See also a separate page that describes the content of the course a bit more extensively.
Main course book:
Yoav Goldberg, Neural Network Methods for Natural Language Processing. Morgan Claypool, 2017. Pre-print version
Jacob Eisenstein, Natural Language Processing. MIT Press, 2019. Pre-print version
Much of the content of the course is not described in a book, so we will also give pointers to research papers and survey articles when needed.
The course consists of the following three modules, each of which corresponds to roughly one month’s work.
The content of each module consists of
In the first module, we introduce the most important building blocks used in modern NLP architectures. We will also consider one of the most fundamental NLP tasks: text categorization.
Detailed information about Module 1
In the second module, we will focus on NLP tasks where the goal is to predict a structured object such a sequence or a tree. Applications include well-known use cases such as named entity recognition and syntactic parsing.
Detailed information about Module 2
In the third module, we consider NLP tasks where we want to generate a text as the output, such as machine translation and summarization.