Insegnamento a.a. 2025-2026

30678 - MACHINE LEARNING (MODULE II - DEEP LEARNING)

Department of Computing Sciences

Course taught in English

Class timetable
Exam timetable
Go to class group/s: 45
BIG (8 credits - I sem. - OB  |  INF/01)
Course Director:
LUCA BIGGIO

Classes: 45 (I sem.)
Instructors:
Class 45: LUCA BIGGIO


Suggested background knowledge

The prerequisites for this course include a solid understanding of calculus, linear algebra, probability, and statistics, along with basic prior programming experience in Python.

Mission & Content Summary

MISSION

The course offers an introduction to Deep Learning (DL), with a focus on recent advances in Natural Language Processing (NLP). It is structured into lectures that cover the fundamental concepts of the field, complemented by practical tutorials and exercises, where these concepts are further expanded and practically implemented through live coding sessions (mainly in Python).

CONTENT SUMMARY

The course is organized along the following themes:

  • Recap of Machine Learning (ML) fundamentals.
  • Introduction to Neural Networks and the connectionist paradigm: from the perceptron to Multi-Layer Perceptrons (MLPs), universality theorems, the backpropagation algorithm, and principles of Neural Network design.
  • The rise of Deep Learning: Convolutional Neural Networks (CNNs), regularization techniques, and residual connections. Basics of Recurrent Neural Networks (RNNs), attention mechanisms, and Transformers.
  • Introduction to Natural Language Processing (NLP): text preprocessing, static and contextual word embeddings, language modelling, and neural approaches to text processing—from neural machine translation to modern large language models (LLMs).

Intended Learning Outcomes (ILO)

KNOWLEDGE AND UNDERSTANDING

At the end of the course student will be able to...
  • Understand the motivations, historical origins, and evolution of Deep Learning.
  • Recognize the strengths, limitations, and appropriate applications of neural networks.
  • Grasp the key architectural and design principles underlying modern Deep Learning systems.
  • Understand the fundamental concepts of Natural Language Processing (NLP) and the technical aspects of applying modern Deep Learning methods to NLP tasks.

APPLYING KNOWLEDGE AND UNDERSTANDING

At the end of the course student will be able to...
  • Design, implement, and evaluate Deep Learning algorithms for a range of tasks.
  • Translate research concepts and ideas into practical implementations and real-world applications.
  • Employ advanced Deep Learning frameworks and platforms effectively.

Teaching methods

  • Lectures
  • Individual works / Assignments

DETAILS

  • Core lectures: Face-to-face lectures introducing students to the core concepts of the course.
  • Tutorial sessions: for deeper exploration of advanced topics.
  • Practical exercise sessions: focused on coding, hands-on assignments, and in-class implementation.

Assessment methods

  Continuous assessment Partial exams General exam
  • Written individual exam (traditional/online)
    x
  • Individual Works/ Assignment (report, exercise, presentation, project work etc.)
x    

ATTENDING STUDENTS

Some individual assignments during the semester (30% of the final grade) + an end of semester reduced written exam (70% of the final grade).


NOT ATTENDING STUDENTS

A single full written exam (100% of the final grade).


Teaching materials


ATTENDING AND NOT ATTENDING STUDENTS

  • Slides and notes will be provided throughout the course. Within these resources, additional readings will be provided to students to expand on more advanced topics.
  • Books:
    • Bishop, Chris, and Bishop, Hugh. Deep Learning: Foundations and Concepts, Springer, 2024
    • Prince, Simon J.D. "Understanding Deep Learning". MIT press (2023)
    • Goodfellow, Ian, et al. Deep learning. Vol. 1. No. 2. Cambridge: MIT press, 2016.
Last change 29/08/2025 16:49