Knowledge Search & Extraction
Persone
Docente titolare del corso
Assistente
Descrizione
The first part of 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. In this part of the course, students will develop a search engine that can query a large Python code repository.
The second part of the course deals with code search and extraction. We will consider techniques to automatically fuzz the code and we will see applications of search based algorithms for automated test case generation. Then, we will consider information extraction for testing in different domains, including grammar based software, web applications, and GUI based systems. In this part of the course, students will develop a search based test case generator for Python.
Obiettivi
This course deals with the search and extraction of knowledge from text and code, using natural language processing and search-based algorithms.
Modalità di insegnamento
In presenza
Impostazione pedagogico-didattica
Students will be involved in practical exercises and will experiment with the presented techniques by applying them to the course projects.
Modalità d’esame
Optional written mid-term exam; final oral exam; optional homework; two mandatory projects.
Offerta formativa
- Master of Science in Artificial Intelligence, Lezione, A scelta, 1° anno
- Master of Science in Artificial Intelligence, Lezione, A scelta, 2° anno
- Master of Science in Software & Data Engineering, Lezione, 2° anno
- Dottorato in Scienze informatiche, Lezione, A scelta, 1° anno (4.0 ECTS)