Studying at the University of Verona
Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.
Study Plan
The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University.
Please select your Study Plan based on your enrollment year.
1° Year
| Modules | Credits | TAF | SSD |
|---|
2° Year It will be activated in the A.Y. 2026/2027
| Modules | Credits | TAF | SSD |
|---|
| Modules | Credits | TAF | SSD |
|---|
| Modules | Credits | TAF | SSD |
|---|
2 modules among:
- 1st year - Knowledge representation, Natural Language Processing, HCI - Multimodal Systems - delivered in 2025/2026
- 2nd year - AI & cloud - delivered in 2026/2027
- 1st and 2nd year - Advanced programming for AI, Computer vision & deep learning - delivered in 2025/2026 and in 2026/2027
2 courses among (mutually exclusive with the previous ones):
- 1st year - Knowledge representation, Natural language processing, HCI - multimodal systems - delivered in 2025/2026
- 2nd year - AI & cloud, Visual intelligence - delivered in 2026/2027
- 1st and 2nd year - Advanced programming for AI, Computer Vision & deep learning, Statistical learning - delivered in 2025/2026 and in 2026/2027 2 courses among the following
- A.A. 2025/2026 Network Science not activated
- A.A. 2026/2027: Complex Systems not activated1 course among the followingLegend | Type of training activity (TTA)
TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.
Advanced Programming for AI (2025/2026)
Teaching code
4S013605
Credits
6
Language
English
Scientific Disciplinary Sector (SSD)
ING-INF/05 - INFORMATION PROCESSING SYSTEMS
Courses Single
Authorized
The teaching is organized as follows:
Theory
Laboratory
Learning objectives
Il corso di Advanced Programming for AI fornisce agli studenti una conoscenza approfondita dei linguaggi di programmazione, degli strumenti e delle architetture software nell’ambito dell’intelligenza artificiale, con un’attenzione particolare al deep learning. Il corso è strutturato per potenziare le competenze di programmazione in Python, con un focus su framework fondamentali come TensorFlow, Keras e PyTorch, e su librerie essenziali come Scikit-learn, Pandas, Matplotlib e SciPy, utilizzate per la costruzione di architetture di apprendimento, la visualizzazione dei dati e l’interpretazione dei modelli. Gli studenti acquisiranno un’esperienza pratica sui principali componenti dei sistemi di deep learning, affrontando concetti chiave come funzioni di perdita (loss functions), funzioni di attivazione (activation functions), ottimizzatori (optimizers), tecniche di regolarizzazione (regularization techniques) e normalizzazione del batch (batch normalization). Inoltre, il corso approfondisce metodologie avanzate di deep learning, tra cui meta-learning, transfer learning, domain adaptation, continual learning, active learning, multi-task learning e federated learning, fino alle più recenti innovazioni nel settore, come i Large Language Models e i Visual Language Models.
Prerequisites and basic notions
Students should have a good knowledge of Python, algebra, and machine/deep learning, as this course introduces advanced deep learning topics.
Program
APAI aims to provide information on programming languages, tools, and software architectures that have emerged in the field of artificial intelligence. Students will improve their programming skills in Python, assemble software modules, manage models and patterns, and deploy them on cloud platforms. Special emphasis is placed on important frameworks such as TensorFlow and PyTorch, along with essential libraries such as Scikit-learn, Pandas, Matplotlib, and SciPy used for building learning architectures, data visualization, and model interpretation. Syllabus: - Introduction to Learning Frameworks: TensorFlow, Keras, PyTorch - Learning Building Blocks: loss functions, activation functions, optimizers, vanishing gradients problems, batch normalization, regularization, dropout - Custom Models: tensors and operations, tensors and NumPy, type conversions, variables, data structures, custom loss functions, custom metrics - Data Loading and Preprocessing: shuffling, parsing, feature preprocessing, transformation chaining - Advanced Methodologies: meta-learning, continual learning, active learning, knowledge distillation, self-supervised learning, Large Language Models (LLMs), Visual Language Models (VLMs)
Bibliography
Didactic methods
Lectures, laboratory experiences and exercises.
Learning assessment procedures
To pass the exam, students must demonstrate a thorough understanding of the principles underlying methods for programming AI-based modules. They must articulate the programming of AI modules clearly and coherently, avoiding digressions. In addition, they must apply the knowledge acquired to solve application problems presented through exercises, questions, and projects. The exam includes an oral assessment and an evaluation of their solutions to laboratory exercises. The oral exam includes both theoretical concepts and practical exercises performed in the laboratory. Additionally, by agreement with the instructor, students will choose to undertake a relevant project and submit a project report detailing their results. The project will be presented concurrently with the oral exam.
Evaluation criteria
Theoretical and applied knowledge of the techniques taught in the course; critical ability to select techniques based on the problem; ability to use the techniques taught in the course.
Criteria for the composition of the final grade
The final grade will be calculated as the arithmetic mean between the grade of the project and that of the oral exam on the theoretical part of the course.
Exam language
Inglese
