Natural Language Processing for Software Engineering
| Program start date | Application deadline |
| 2025-09-01 | - |
Program Overview
Natural Language Processing for Software Engineering
Description
The course deals with text search and extraction. The course will present techniques and approaches for the representation of natural language text as a numerical embedding, to support search on large corpora. Then, we will consider various algorithms for text analysis at the syntactic and semantic level, including parts of speech tagging, constituency and dependency parsing, semantic role labelling, text summarization, sentiment analysis and language models. We will cover also large language models and prompt engineering. Students will develop a search engine that can query a large Python code repository.
Objectives
This course deals with the extraction of knowledge from text, using natural language processing algorithms, and its use to address several software engineering tasks.
Teaching Mode
In presence
Learning Methods
Students will be involved in practical exercises and will experiment with the presented techniques by applying them to the course project.
Examination Information
- Optional written mid-term exam
- Final oral exam
- Optional homework
- Mandatory project
Education
- Master of Science in Artificial Intelligence, Lecture, Elective, 1st year
- Master of Science in Artificial Intelligence, Lecture, Elective, 2nd year
- Master of Science in Software & Data Engineering, Lecture, 2nd year
- PhD programme of the Faculty of Informatics, Lecture, Elective, 1st year (2.0 ECTS)
Additional Information
- Semester: Fall
- Academic year:
- ECTS: 3.0
- Language: English
