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

From Chrome
Jump to: navigation, search
(Detailed course schedule)
(Detailed course schedule)
Line 137: Line 137:
 
|30/09/2021 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || Error Functions Design (and weight decay)
 
|30/09/2021 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || Error Functions Design (and weight decay)
 
|-
 
|-
|06/10/2021 || Wednesday || 15:15 - 17:00 || T.2.1 (Team 1) || rowspan="2" | [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || rowspan="2" | Overffitting, cross-validation, and Early Stopping
+
|06/10/2021 || Wednesday || 15:15 - 17:00 || T.2.1 (Team 1) || rowspan="2" | [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || rowspan="2" | Overffitting, cross-validation, and Early Stopping (flipped ?)
 
|-
 
|-
 
|06/10/2021 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)  
 
|06/10/2021 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)  
Line 143: Line 143:
 
|07/10/2021 || Thursday || 16:30 - 19:15 || --- || --- || No Lectures (Graduation)
 
|07/10/2021 || Thursday || 16:30 - 19:15 || --- || --- || No Lectures (Graduation)
 
|-
 
|-
|14/10/2020 || Wednesday || 15:15 - 17:00 || Virtual Room|| rowspan="2" | [https://politecnicomilano.webex.com/join/francesco.lattari Francesco Lattari] || rowspan="2" | [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/c4634b880d2c483d90cfee40da2b385b KERAS NN - FFNN and Overfitting]
+
|13/10/2021 || Wednesday || 15:15 - 17:00 || T.2.1 (Team 1)|| rowspan="2" | [https://politecnicomilano.webex.com/join/ xxx xxx] || rowspan="2" | KERAS: FFNN and Overfitting
 
|-
 
|-
|14/10/2020 || Wednesday || 17:30 - 19:15 || Virtual Room  
+
|13/10/2021 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)  
 
|-
 
|-
|15/10/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/353566007b4b46d998dd4da3eb9266cc Facing overfitting, network initialization, and other stuff ...]
+
|14/10/2021 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || Training tricks: activation functions, network initialization, and other stuff...
 
|-
 
|-
|21/10/2020 || Wednesday || 15:15 - 17:00 || 2.0.2 || rowspan="2" | [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || rowspan="2" | [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/f81e84afaa734e07b1de3404b0ce1ab3 The Image Classification Problem]
+
|20/10/2021 || Wednesday || 15:15 - 17:00 || T.2.1 (Team 1)|| rowspan="2" | [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || rowspan="2" | The Image Classification Problem
 
|-
 
|-
|21/10/2020 || Wednesday || 17:30 - 19:15 || 2.1.2  
+
|20/10/2021 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)
 
|-
 
|-
|22/10/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/60b0c685bb0544be93232406b93dc216 Convolutional Neural Networks]
+
|21/10/2021 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || Convolutional Neural Networks
 
|-
 
|-
|28/10/2020 || Wednesday || 15:15 - 17:00 || 2.0.2 || rowspan="2" | [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || rowspan="2" | [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/bf739617705646bf992949a52b4e7220 CNN Training, Transfer Learning and Visualization. Fully Convolutional CNN (Part1).]
+
|27/10/2021 || Wednesday || 15:15 - 17:00 || T.2.1 (Team 1) || rowspan="2" | [https://politecnicomilano.webex.com/join/ xxx xxx] || rowspan="2" | KERAS: Convolutional Neural Networks
 
|-
 
|-
|28/10/2020 || Wednesday || 17:30 - 19:15 || 2.1.2  
+
|27/10/2021 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)
 
|-
 
|-
|29/10/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/47ddba848cac4df287ef38dd5c620a47 CNN Training, Transfer Learning and Visualization. Fully Convolutional CNN (Part2).]
+
|28/10/2021 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || Training with data scarsity
 
|-
 
|-
|04/11/2020 || Wednesday || 15:15 - 17:00 || 2.0.2 || rowspan="2" | [https://politecnicomilano.webex.com/join/francesco.lattari Francesco Lattari] || rowspan="2" | [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/ae5d7492ccd84168820295a96f86e797 KERAS NN - Convolutional Neural Networks]
+
|03/11/2020 || Wednesday || 15:15 - 17:00 ||T.2.1 (Team 1)|| rowspan="2" | [https://politecnicomilano.webex.com/join/ xxx xxx] || rowspan="2" | KERAS: Convolutional Neural Networks
 
|-
 
|-
|04/11/2020 || Wednesday || 17:30 - 19:15 || 2.1.2  
+
|03/11/2020 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)
 
|-
 
|-
|05/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || [https://politecnicomilano.webex.com/recordingservice/sites/politecnicomilano/recording/playback/8a475196b91a4fb5b2ddaac94fb763dd Fully Convolutional CNN, CNN for image segmentation]
+
|04/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || Famous CNN architectures
 
|-
 
|-
|11/11/2020 || Wednesday || --- || --- || --- || -- No Lecture (Prove in Itinere) --
+
|10/11/2020 || Wednesday || --- || --- || --- || -- No Lecture (Prove in Itinere) --
 
|-
 
|-
|12/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || [https://politecnicomilano.webex.com/politecnicomilano/ldr.php?RCID=ba034f944508406bb2f8d0ed0dc2c1be CNN for localization and detection]
+
|11/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || Fully Convolutional CNN, CNN for image segmentation
 
|-
 
|-
|18/11/2020 || Wednesday || 16:15 - 18:15 ||Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || [https://politecnicomilano.webex.com/politecnicomilano/ldr.php?RCID=5855e086526f4a38b15a482bbc06aef1 GANs]
+
|17/11/2020 || Wednesday || 15:15 - 17:00 ||T.2.1 (Team 1)|| rowspan="2" | [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || rowspan="2" | CNN for localization and detction
 
|-
 
|-
|19/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/matteo.matteucci Matteo Matteucci] || [https://politecnicomilano.webex.com/webappng/sites/politecnicomilano/recording/2ebf7788731540f1866a9554db5ef379 Recurrent neural networks + LSTM]
+
|17/11/2020 || Wednesday || 17:30 - 19:15 || T.2.1 (Team 2)
 +
|-
 +
|18/11/2020 || Thursday || 16:30 - 19:15 || Virtual Room || [https://politecnicomilano.webex.com/join/giacomo.boracchi Giacomo Boracchi] || GANs
 
|-
 
|-
 
|25/11/2020 || Wednesday || 16:15 - 18:15 || Virtual Room || [https://politecnicomilano.webex.com/join/francesco.lattari Francesco Lattari] || [https://politecnicomilano.webex.com/politecnicomilano/ldr.php?RCID=5c9d857b4d1aa39d8dda3c50a797fb6d KERAS NN - Autoencoder, classification, segmentation]
 
|25/11/2020 || Wednesday || 16:15 - 18:15 || Virtual Room || [https://politecnicomilano.webex.com/join/francesco.lattari Francesco Lattari] || [https://politecnicomilano.webex.com/politecnicomilano/ldr.php?RCID=5c9d857b4d1aa39d8dda3c50a797fb6d KERAS NN - Autoencoder, classification, segmentation]

Revision as of 00:58, 14 September 2021


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

14/09/2021: Website under maintenance ... come back later


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 network 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 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 student can use to double check their preparation against before the exam.

  • [2020/2021] Course Syllabus: a detailed list of topics covered by the course and which students are expected to know when approaching the exam

Detailed course schedule

A detailed schedule of the course can be found here; 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!!

Note: Lecture timetable interpretation
* On Wednesday, in T.2.1, Team 1, starts at 15:15, ends at 17:00
* On Wednesday, in T.2.1, Team 2, starts at 17:30, ends at 19:15
* On Thursday, in teacher webex room, starts at 16:30, ends at 19:15
Note: Teams division is based on your Codice Persona (and should minimize overlap)
* Team 1: odd Codice Persona
* Team 2: even Codice Persona


Date Day Time Room Teacher Topic
15/09/2021 Wednesday 15:15 - 17:00 T.2.1 (Team1 ) Matteo Matteucci Course Introduction + Deep Learning Intro
15/09/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
16/09/2021 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Introduction to Deep Learning + Introduction to Feed Forward Neural Networks
22/09/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) xxx xxx Python Intro + Numpy
22/09/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
23/09/2021 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Feed forward neural networks and Backpropagation
29/09/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) xxx xxx KERAS: Tensorflow and FNN
29/09/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
30/09/2021 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Error Functions Design (and weight decay)
06/10/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) Matteo Matteucci Overffitting, cross-validation, and Early Stopping (flipped ?)
06/10/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
07/10/2021 Thursday 16:30 - 19:15 --- --- No Lectures (Graduation)
13/10/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) xxx xxx KERAS: FFNN and Overfitting
13/10/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
14/10/2021 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Training tricks: activation functions, network initialization, and other stuff...
20/10/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) Giacomo Boracchi The Image Classification Problem
20/10/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
21/10/2021 Thursday 16:30 - 19:15 Virtual Room Giacomo Boracchi Convolutional Neural Networks
27/10/2021 Wednesday 15:15 - 17:00 T.2.1 (Team 1) xxx xxx KERAS: Convolutional Neural Networks
27/10/2021 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
28/10/2021 Thursday 16:30 - 19:15 Virtual Room Giacomo Boracchi Training with data scarsity
03/11/2020 Wednesday 15:15 - 17:00 T.2.1 (Team 1) xxx xxx KERAS: Convolutional Neural Networks
03/11/2020 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
04/11/2020 Thursday 16:30 - 19:15 Virtual Room Giacomo Boracchi Famous CNN architectures
10/11/2020 Wednesday --- --- --- -- No Lecture (Prove in Itinere) --
11/11/2020 Thursday 16:30 - 19:15 Virtual Room Giacomo Boracchi Fully Convolutional CNN, CNN for image segmentation
17/11/2020 Wednesday 15:15 - 17:00 T.2.1 (Team 1) Giacomo Boracchi CNN for localization and detction
17/11/2020 Wednesday 17:30 - 19:15 T.2.1 (Team 2)
18/11/2020 Thursday 16:30 - 19:15 Virtual Room Giacomo Boracchi GANs
25/11/2020 Wednesday 16:15 - 18:15 Virtual Room Francesco Lattari KERAS NN - Autoencoder, classification, segmentation
26/11/2020 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Se2Seq Learning and Word Embedding
02/12/2020 Wednesday 16:15 - 18:15 Virtual Room Matteo Matteucci Attention Mechanisms
03/12/2020 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci The Transformer (and challenge presentation in the first 20 minutes)
09/12/2020 Wednesday 16:15 - 18:15 Virtual Room Francesco Lattari KERAS NN - Recurrent Neural Networks
10/12/2020 Thursday 16:30 - 19:15 Virtual Room Matteo Matteucci Questions and Answers
16/12/2020 Wednesday 16:15 - 18:15 Virtual Room --- -- Spare Lecture --
17/12/2020 Thursday 16:30 - 19:15 Virtual Room --- -- Spare Lecture --
23/12/2020 Wednesday 16:15 - 18:15 Virtual Room --- -- Spare Lecture --


Course Evaluation

Course evaluation is composed of two parts:

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

The final score will sum 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 text, but keep in mind that teachers will not follow it strictly

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

The remaining material about the course is available through WeBeep.