Skip to content
Main menu hidden.

Natural Language Processing

  • Number of credits 7.5 credits
  • Level Master’s level
  • Starting Autumn Term 2022

About the course

This course is an introduction to Natural Language Processing (NLP) for students already proficient in programming and machine learning. The aim is to provide a solid background in theory and techniques used to accomplish different NLP tasks such as understanding and generating natural language. As NLP technologies are used by many people every day, and inform many other "AI" systems, special focus will be given to questions of ethics, equity, and the social impact of these technologies.

The course covers a mix of techniques, including rule-based, statistical, and machine learning methods for NLP. Since language data is at the core of many modern NLP techniques, the course will additionally cover assessment of data quality, as well as developing an understanding of complex issues of representation and data ownership.

Basic concepts and methodology from linguistics are introduced, including aspects of how language is constructed and used, and the importance of context. These are used to ground an understanding both of how effective solutions to NLP tasks are constructed, and the challenges of doing so for various languages.

Beyond this theoretical grounding, there will be practical exercises and assignments focusing on applying various techniques to address tasks within NLP. The coursework also includes actively participating in seminars and writing reports.

Application and eligibility

Natural Language Processing, 7.5 credits

Det finns inga tidigare terminer för kursen Autumn Term 2022 Det finns inga senare terminer för kursen

The information below is only for exchange students


29 August 2022


31 October 2022

Study location




Type of studies

Daytime, 50%

Required Knowledge

Univ: To be admitted you must have (or equivalent) 90 ECTS-credits including 60 ECTS-credits in Computing Science or three years of completed studies within a study programme (180 ECTS-credits). In both cases, includning
* a course (7.5 ECTS-credits) in Machine learning (e.g. 5DV194) that includes Naive Bayes, Hidden Markov Models, Decision Trees and Neural Networks including how backpropagation works
* a course (7.5 ECTS-credits) in Formal languages (e.g. 5DV208 CS3: Computations and languages or 5DV037 Fundamentals of Computer Science) that includes Automata, Turing Machines, Regular languages, Context-free languages, pumping lemma (regular, context free), CYK parser (also passing familiarity with shift-reduce)

It is recommended to have some familiarity with Python (we will use Python in exercises/assignments, so students should either know how to code in Python or be in a situation where they feel confident they can quickly pick it up)

Proficiency in English equivalent to Swedish upper Secondary course English A/5. Where the language of instruction is Swedish, applicants must prove proficiency in Swedish to the level required for basic eligibility for higher studies.


Students applying for courses within a double degree exchange agreement, within the departments own agreements will be given first priority. Then will - in turn - candidates within the departments own agreements, faculty agreements, central exchange agreements and other departmental agreements be selected.

Application code



This application round is only intended for nominated exchange students. Information about deadlines can be found in the e-mail instruction that nominated students receive. The application period is closed.

Contact us

Please be aware that the University is a public authority and that what you write here can be included in an official document. Therefore, be careful if you are writing about sensitive or personal matters in this contact form. If you have such an enquiry, please call us instead. All data will be treated in accordance with the General Data Protection Regulation.

Course is given by
Department of Computing Science