Descrizione
del Corso
|
Lo
scopo del corso è quello di fornire un'approfondita
introduzione delle principali teorie e tecniche algoritmiche
del Learning Machine. A tal proposito, saranno presentati
modelli fondamentali per la classificazione e la
regressione, e le architetture basate su reti neurali (es.
Deep Learning). Saranno discusse le metodologie per
realizzare e ottimizzare gli algoritmi di apprendimento
automatico, e quelle utili alla valutazione delle
performance dei sistemi di Machine Learning. Si
utilizzeranno librerie software open source in linguaggio
Python per mettere in pratica le nozioni teoriche presentate
nel corso.
Il
corso si propone di formare studenti che:
- comprendano
concetti chiave alla base delle techiche di Machine
Learning
- conoscano
una ampia gamma di algoritmi di apprendimento per
risolvere problemi classici del Machine Learning
(classificazione e regressione)
- comprendano
come effettuare il design e il tuning degli algoritmi al
fine di applicare gli stessi a nuovi set di dati
- siano
in grado di eseguire la valutazione degli algoritmi di
Machine Learning in modo da poter selezionare il modello
migliore
- conoscano
le librerie python utili allo sviluppo di algoritmi di
Machine Learning
|
Argomenti
Principali |
-
Probability Theory and Distributions
- Linear
Models for Regression
- Linear
Models for Classification
- Neural
Networks
- Deep
Learning
- Python
programming and Libraries for Machine Learning
|
Libri
di Testo e Risorse in Rete |
Libri:
- Jacek
M. Zurada, Introduction
to Artificial Neural Systems, 1992
- Raul
Rojas, Neural
Networks - A Systematic Introduction, Springer, 1996
- R.
O. Duda, P. E. Hart, D. G. Stork, Pattern
Classification (2nd ed.), Wiley, 2000
- C.
Bishop, Pattern
Recognition and Machine Learning, Springer, 2006
- T.
Hastie, R. Tibshirani, J. Friedman, The
Elements of Statistical Learning, Springer, 2008
- S.
J.D. Prince, Computer
Vision: Models, Learning, and Inference, Cambridge
University Press, 2012
- G.
James, D. Witten, T. Hastie, R. Tibshirani, Introduction
to Statistical Learning, Springer, 2013
- E.
Alpaydin, Introduction
to Machine Learning, MIT Press, 2014
- I.
Goodfellow, Y. Bengio and A. Courville, Deep
Learning, MIT Press, 2016
- M.
P. Deisenroth, A A. Faisal, and C. Soon On, Mathematics
for Machine Learning, MIT Press, 2019 (Online
Version)
- J.
Torres, First
Contact with Tensor Flow, 2016
- Bradley
N. Miller, David L. Ranum, Problem
Solving with Algorithms and Data Structures using Python,
2016
- Book
- Introduction to Machine Learning by Alex Smola and
S.V.N. Vishwanathan
- Book
- Dive into Deep Learning
- Bayesian
Reasoning and Machine Learning by David Barber
- Stanford
Machine Learning Notes
- Python
- Python-Numpy
Tutorial
- PyTorch
- TensorFlow
- Scikit-Learn
- Machine Learning in Python
- Machine
Learning - Glossary
- Stanford
Machine Learning Notes
- UvA
Course on Deep Learning
- Stanford
Course on Convolutional Neural Network for Visual
Recognition
- Stanford
Course on Deep Learning
- Deep
Learning Tutorial
- Machine
Learning Glossary
- Machine
Learning Crash Course - GOOGLE
- The
Backpropagation Algorithm
- Optimization
Algorithms
- Momentum
- Multi-Class
Classification: one
vs all, one vs one, decision
directed acyclic graph
- Unsupervised
Feature Learning and Deep Learning Tutorial
- Linear
Classification - Softmax Demo
- Neural
Network Demo1,
Demo2
- Backpropagation
- Convoluzione:Demo1,
Demo2,
Demo3,
Demo4
- An
Interactive Node-Link Visualization of Convolutional
Neural Networks - Demo
- 3D
Visualization Framework
- Convolutional
Neural Network CIFAR-10 Demo
- AlexNet
- Paper
- CNN
- PlaceNet Demo
- The
Neural Network Zoo
- RNN
Demo
- GAN
Demo
|
|
Prerequisiti |
Si
utilizzeranno nozioni di base delle seguenti materie:
- Elementi
di Analisi Matematica
- Matematica
Discreta
- Fondamenti
di Informatica
- Programmazione
- Interazione
e Multimedia
- Algoritmi
|
|
Modalità
d'Esame |
|
|
Modalità
di Valutazione
|
Valutazione
del progetto e della relazione: 50%
Valutazione della prova scritta e degli eventuali homework: 50%
|