Neural Networks for Data Science Applications

Master's Degree in Data Science (2023-2024)

For the previous year (2022-2023), refer to this page.

Important Info

Material: slides, assignments, and grading will be done via Google Classroom.
Timetable: Wednesday 5-7 PM (Aule A5 + streaming in A6, Via Ariosto), Friday 8-11 (Aule A5 + streaming in A6, Via Ariosto).

News

  • On December 1st we will have a seminar on unifying neural representations.
  • Classes will start on September 27th (see the faculty calendar).

General overview

The course provides a general overview on neural networks as compositions of differentiable blocks, that are optimized numerically. We describe common building blocks including convolutions, self-attention, batch normalization, etc., with a focus on image, audio, and graph domains. The course combines rigorous mathematical descriptions with many coding sessions in TensorFlow.

More information about the topics, the exam, organization, etc. can be found on the introductory slides.

Teaching assistants

Jary Pomponi
Jary Pomponi (post-doc)
Alessio Devoto
Alessio Devoto (PhD student)
Gaetano Saurio
Gaetano Saurio (PhD student)
Alessandro Baiocchi
Alessandro Baiocchi (PhD student)
Francesco Verdini
Francesco Verdini (PhD student)

Material

Lab sessions (mandatory) implemented in TensorFlow are in blue. Homeworks and projects (mandatory) are in red. Seminars (optional) are in green.

  Date Content Material
L0 27/09 About the course Slides
Video
L1 27/09 Introduction Slides
Video
L2 29/09 Preliminaries Slides
Video (1/2)
Video (2/2)
L3 4/10, 6/10 Linear models Slides
Video (1/3)
Video (2/3)
Video (3/3)
- 6/10 The AI software ecosystem (basics) Slides
E1 11/10 Lab session: logistic regression from scratch Notebook
L4 13/10 Fully-connected models Slides
Video (1/2)
Video (2/2)
L5 18/10, 20/10 Automatic differentiation Slides
Video (1/2)
Video (2/2)
L6 25/10, 27/10 Convolutional neural networks Slides
Video
L7 27/10 Convolutions beyond images Slides
Video (1/2)
Video (2/2)
E2 07/11 Lab session: building CNNs with the Functional API Notebook
H1 - Homework: Saliency maps for interpretability Template
Video
L8 10/11, 15/11 Building deep convolutional networks Slides
Video (1/3)
Video (2/3)
Video (3/3)
E3 17/11 Lab session: text classification with 1D CNNs Notebook
Video (1/3)
Video (2/3)
Video (3/3)
L9 29/11 Attention-based neural networks (transformers) Slides
Video (1/3)
Video (2/3)
Video (3/3)
S1 01/12 Unifying Representations in Neural Models
(Donato Crisostomi, Marco Fumero)
Slides (1/3)
Slides (2/3)
Slides (3/3)
Notebook
Video (1/2)
Video (2/2)
L10 13/12 Transfer learning Slides
Video
E4 - Lab session: Keras 3.0, JAX, and einops (optional) Notebook
H2 - Homework 2: advanced transfer learning Template
Video