Difference between revisions of "Artificial Neural Networks and Deep Learning"

From Chrome
Jump to: navigation, search
(Detailed course schedule)
(Detailed course schedule and recordings)
Line 127: Line 127:
  
 
Recordings of lectures and lab sessions are linked from the google calendar events associated to the corresponding lecture.
 
Recordings of lectures and lab sessions are linked from the google calendar events associated to the corresponding lecture.
 
 
<!--
 
<!--
 
  For a google calendar you might [https://boracchi.faculty.polimi.it/teaching/AN2DLCalendar.htm look here!]
 
  For a google calendar you might [https://boracchi.faculty.polimi.it/teaching/AN2DLCalendar.htm look here!]

Revision as of 19:14, 8 January 2023


The following are last-minute news you should be aware of ;-)

* 08/01/2023: update of the teaching material in the page ... a new detailed syllabus will follow too
* 21/12/2022: Grades of the first challenge (v2). 


Course Aim & Organization

Neural networks are mature, flexible, and powerful non-linear data-driven models that have successfully been applied to solve complex tasks in science and engineering. The advent of the deep learning paradigm, i.e., the use of (neural) network to simultaneously learn an optimal data representation and the corresponding model, has further boosted neural networks and the data-driven paradigm.

Nowadays, deep neural networks can outperform traditional hand-crafted algorithms, achieving human performance in solving many complex tasks, such as natural language processing, text modeling, gene expression modeling, and image recognition. The course provides a broad introduction to neural networks (NN), starting from the traditional feedforward (FFNN) and recurrent (RNN) neural networks, till the most successful deep-learning models such as convolutional neural networks (CNN) and long short-term memories (LSTM).

The course's major goal is to provide students with the theoretical background and the practical skills to understand and use NN, and at the same time become familiar and with Deep Learning for solving complex engineering problems.

Teachers

The course is composed of a blending of lectures and exercises by the course teachers and a teaching assistant.

Course Program and Syllabus

This goal is pursued in the course by:

  • Presenting major theoretical results underpinning NN (e.g., universal approx, vanishing/exploding gradient, etc.)
  • Describing the most important algorithms for NN training (e.g., backpropagation, adaptive gradient algorithms, etc.)
  • Illustrating the best practices on how to successfully train and use these models (e.g., dropout, data augmentation, etc.)
  • Providing an overview of the most successful Deep Learning architectures (e.g., CNNs, sparse and dense autoencoder, LSTMs for sequence to sequence learning, etc.)
  • Providing an overview of the most successful applications with particular emphasis on models for solving visual recognition tasks.

We have compiled a detailed syllabus of the course that students can use to double-check their preparation before the exam.

  • TBD

Detailed course schedule and recordings

A detailed schedule of the course is given in the form of google calendar; topics are just indicative while days and teachers are correct up to some last-minute change (I will notify you by email). Please note that not all days we have lectures!!

For the AN2DL Course Google Calendar look here!

Note: the course is given in parallel to two sessions, the Computer Science session, and the Bioengineering + Mathematical Engineering session. Two calendars exist; lectures are the same, but the scheduling is not necessarily aligned. The previous link points to the Computer Science session, on the same page you find the link to the BIO + MTM session one.

Lectures will be recorded and shared afterward, no streaming of lectures is foreseen.

Recordings of lectures and lab sessions are linked from the google calendar events associated to the corresponding lecture.

Course Evaluation

Course evaluation is composed of two parts:

  • A written examination covering the whole program graded up to 20/30
  • 2 home projects in the form of a "Kaggle style" challenge practicing the topics of the course graded up to 5/30 each

The final score will sum up the grade of the written exam and the grade of the home projects. Home projects are not compulsory and they are issued only once a year.

Teaching Material (the textbook)

Lectures will be based on material from different sources, teachers will provide their slides to students as soon they are available. As a general reference, you can check the following textbook, but keep in mind that teachers will not follow it strictly

  • Deep Learning. Ian Goodfellow, Yoshua Bengio, and Aaron Courville, MIT Press, 2016.

Regarding the Python programming language, we will provide you with the basics about NumPy and python scripting in case you want some introductory material you can check here

  • Python tutorials: these are the official python tutorials, we suggest 3.An Informal Introduction to Python (Numbers, Strings, Lists), 4.More Control Flow Tools (if, for, range, functions), 5.Data Structures (More on lists, Dictionaries), 9.Classes.

Course Slides

Slides from the lectures by Matteo Matteucci

Slides from the lectures by Giacomo Boracchi are available in his webpage; for your convenience, I am giving pointers to the slide here for you (in case you note discrepancies please notify me)

  • [2021/2022 The Image Classification Problem]
  • [2021/2022 Convolutional Neural Networks]
  • [2021/2022 CNN Parameters and Training with Data Scarcity]
  • [2021/2022 Fully Convolutional CNN and CNN for Semantic Segmentation]
  • [2021/2022 CNN for Localization, CNN Explanations and Famous Architectures]
  • [2021/2022 Autoencoders and Generative Adversarial Networks]
  • [2021/2022 Object Detction Networks and Metric Learning]

Slides from the practicals by Francesco Lattari and Eugenio Lomurno will be published here after each lab session: CHECK THIS FOLDER!

External Sources

Exams

Politecnico di Milano exams will be held digitally in presence via the Politecnico di Milano remote exam platform using the Safe Exams Browser, it works only on Windows and iOS so please be prepared and test it in advance. You can have a flavor of what to expect by looking at some past exam calls.

Note: written exams will be graded 20 points plus 10 points are given by 2 software challenges issues only during the semester. Laude will be given to students who, beside getting the highest grade, will show participation in class, will perform particularly well in the challenges (this includes the quality of the report), will submit ahead of time the written exams.