30562 - MACHINE LEARNING AND ARTIFICIAL INTELLIGENCE
Course taught in English
Go to class group/s: 27
Lezioni della classe erogate in presenza
- Basic concepts in machine learning - Programming in Python, including Numpy
The mission of the course is to introduce the students to state-of-the-art approaches of modern artificial intelligence. The course will focus on deep learning architectures at the frontier of current research and applications, including image classification, image generation, translation, recommender systems, reinforcement learning, and more.
- Introduction to AI and Machine Learning;
- Deep learning systems and examples of state-of-the-art capabilities in different domains;
- Basic concepts and basic theoretical background around artificial neural networks;
- Gradient descent variants and automatic differentiation techniques;
- Basic tools (PyTorch, git, ssh, Tensorboard, etc.);
- Architectures and implementations for Image Classification and Language Modelling;
- Unresolved issues in deep learning and outlook.
- Describe how state-of-the-art deep learning systems work
- Reproduce the results of state-of-the-art deep learning systems (assuming the computational resources are available)
- Select a sensible architecure when faced with a new problem
- Estimate the computational resources necessary for training and deploying these models
- Identify shortcomings, caveats and limits of state-of-the-art deep learning systems
- Illustate the pipeline used during training and deploying these models
- Formulate state-of-the-art models in code
- Evaluate current research literature and understand it
- Apply these models using appropriate tools
- Assess and validate the models
- Face-to-face lectures
- Exercises (exercises, database, software etc.)
Face-to-face lectures will introduce fundamental and advanced concepts around modern machine learning and artificial intelligence. During the exercises, the students will (under the guidance of the instructor) implement and train state-of-the-art models partially or fully, and also validate the quality of the trained models.
The final grade will be determined by a group project (50%) and the result of a written indvidiual exam (50%).
The group project will verify that the student is able to design, train and validate a machine learning approach to solve a concrete problem, using the concepts and architectures treated in class. The written individual exam will assess the students' understanding of the theoretical concepts treated in class and also their capability of quantative reasoning around the models studied.
We will use original research works as far as possible. These and additional material will be distributed during the lectures.
Books that will be useful for following the course are:
- Goodfellow, Ian, Yoshua Bengio, and Aaron Courville. Deep learning. MIT press, 2016.
- Shalev-Shwartz, Shai, and Shai Ben-David. Understanding machine learning: From theory to algorithms. Cambridge university press, 2014. (The first few chapters, for the theory parts).