20810266 - Machine Learning

Il corso consentirà agli studenti di approfondire i metodi e gli algoritmi tipici del Machine Learning, quelli supervisionati, non supervisionati e per rinforzo, e di utilizzarli come strumenti per lo sviluppo di tecnologie innovative. In particolare, verranno studiati gli aspetti delle principali aree della disciplina, tra cui la regressione, la classificazione e il clustering. Verranno poi introdotti i metodi e le tecniche di deep learning e ambienti di sviluppo specializzati. Il corso prevede, oltre a lezioni ed esercitazioni, lo svolgimento di un progetto individuale o di gruppo che consentirà agli studenti di applicare le basi teoriche apprese a lezione a problemi concreti su vari domìni d’interesse. Essi saranno relativi ad esempio a come analizzare grandi e complessi dataset in vari ambiti (e.g., la Health Care, la Data Science, il Data Mining, l’Analisi Finanziaria, i Videogame, la Computer Vision, ecc.), creare sistemi che si adattano e migliorano con il tempo (e.g., Recommender Systems), e così via. Infine il corso prevede seminari monografici (anche aziendali) dedicati a vari casi di studio.

Curriculum

scheda docente | materiale didattico

Programma

1. Introduzione al Corso

- Aree di interesse del Machine Learning.
- Potenzialità dei modelli e dei metodi di ML.

2. Regressione

- Introduzione alla Linear Regression.
- Overfitting nella Regressione.
- Regolarizzazione: Rideg Regression.
- Feature Selection e Lasso.

3. Classificazione

- Logistic Regression per la classificazione.
- Overfitting nella Classificazione.
- Boosting. Algoritmo AdaBoost.
- Naïve Bayes.
- Support Vector Machines.

4. Clustering

- Algoritmi k-means e k-means++
- Expectation Maximization.
- Clustering gerarchico.

5. Reti Neurali Artificiali

- Architettura delle Reti Neurali Artificiali.
- Algoritmo di Apprendimento di Backpropagation.
- Applicazioni delle Reti Neurali Artificiali.

6. Gli ambienti Keras e TensorFlow

- I linguaggi Keras e TensorFlow per lo sviluppo di applicazioni di ML.
- Architetture GPU-based. Le GPU Nvidia Tesla e Volta.
- Uso di TensorFlow con il supporto delle GPU.

7. Riduzione di Dimensionalità

- Compressione e visualizzazione dei dati.
- Principal Component Analysis (PCA).
- Scelta del numero di componenti principali.
- Applicazioni nei Recommender Systems.

8. Reinforcement Learning

- Markov Decision Process.
- Programmazione dinamica.
- Algoritmi di Reinforcement Learning.

9. Introduzione al Deep Learning

- Introduzione alle Deep Forward Networks.
- Cenni sulle Convolutional Neural Networks (CNN).
- Cenni sulle Generative Adversarial Networks (GAN).

10. Casi di Studio e Progetti

Si esporranno vari casi di studio e si proporranno progetti in cui applicare le nozioni apprese su vari domíni d’interesse. In particolare le tematiche trattate potranno riguardare, tra l’altro, applicazioni di metodi e tecniche di ML nelle seguenti aree:

• Social Media Analysis (sentiment analysis, fake news detection, fake users detection, ecc.)
• Financial Machine Learning (algorithmic trading, ecc.)
• Recommender Systems (social RecSys, cultural heritage RecSys, e-commerce RecSys, ecc.)
• Data Science (prediction functions per applicazioni pratiche, ecc.)
• Visione Artificiale (object detection, face detection, face recognition, content-based video analysis, ecc.)
• Bioinformatica (riconoscimento di sequenze genetiche, ecc.)

Testi Adottati

Dispense a cura del docente.

Bibliografia Di Riferimento

S.J.Russel, P.Norvig "Artificial Intelligence: A Modern Approach", 4/Ed (2020). Pearson Education.

Modalità Erogazione

Lezioni ed esercitazioni. Supervisione progetto.

Modalità Valutazione

Prova scritta, valutazione progetto.

scheda docente | materiale didattico

Programma

1. Introduzione al Corso

- Aree di interesse del Machine Learning.
- Potenzialità dei modelli e dei metodi di ML.

2. Regressione

- Introduzione alla Linear Regression.
- Overfitting nella Regressione.
- Regolarizzazione: Rideg Regression.
- Feature Selection e Lasso.

3. Classificazione

- Logistic Regression per la classificazione.
- Overfitting nella Classificazione.
- Boosting. Algoritmo AdaBoost.
- Naïve Bayes.
- Support Vector Machines.

4. Clustering

- Algoritmi k-means e k-means++
- Expectation Maximization.
- Clustering gerarchico.

5. Reti Neurali Artificiali

- Architettura delle Reti Neurali Artificiali.
- Algoritmo di Apprendimento di Backpropagation.
- Applicazioni delle Reti Neurali Artificiali.

6. Gli ambienti Keras e TensorFlow

- I linguaggi Keras e TensorFlow per lo sviluppo di applicazioni di ML.
- Architetture GPU-based. Le GPU Nvidia Tesla e Volta.
- Uso di TensorFlow con il supporto delle GPU.

7. Riduzione di Dimensionalità

- Compressione e visualizzazione dei dati.
- Principal Component Analysis (PCA).
- Scelta del numero di componenti principali.
- Applicazioni nei Recommender Systems.

8. Reinforcement Learning

- Markov Decision Process.
- Programmazione dinamica.
- Algoritmi di Reinforcement Learning.

9. Introduzione al Deep Learning

- Introduzione alle Deep Forward Networks.
- Cenni sulle Convolutional Neural Networks (CNN).
- Cenni sulle Generative Adversarial Networks (GAN).

10. Casi di Studio e Progetti

Si esporranno vari casi di studio e si proporranno progetti in cui applicare le nozioni apprese su vari domíni d’interesse. In particolare le tematiche trattate potranno riguardare, tra l’altro, applicazioni di metodi e tecniche di ML nelle seguenti aree:

• Social Media Analysis (sentiment analysis, fake news detection, fake users detection, ecc.)
• Financial Machine Learning (algorithmic trading, ecc.)
• Recommender Systems (social RecSys, cultural heritage RecSys, e-commerce RecSys, ecc.)
• Data Science (prediction functions per applicazioni pratiche, ecc.)
• Visione Artificiale (object detection, face detection, face recognition, content-based video analysis, ecc.)
• Bioinformatica (riconoscimento di sequenze genetiche, ecc.)

Testi Adottati

Dispense a cura del docente.

Bibliografia Di Riferimento

S.J.Russel, P.Norvig "Artificial Intelligence: A Modern Approach", 4/Ed (2020). Pearson Education.

Modalità Erogazione

Lezioni ed esercitazioni. Supervisione progetto.

Modalità Valutazione

Prova scritta, valutazione progetto.

scheda docente | materiale didattico

Programma

1. Introduzione al Corso

- Aree di interesse del Machine Learning.
- Potenzialità dei modelli e dei metodi di ML.

2. Regressione

- Introduzione alla Linear Regression.
- Overfitting nella Regressione.
- Regolarizzazione: Rideg Regression.
- Feature Selection e Lasso.

3. Classificazione

- Logistic Regression per la classificazione.
- Overfitting nella Classificazione.
- Boosting. Algoritmo AdaBoost.
- Naïve Bayes.
- Support Vector Machines.

4. Clustering

- Algoritmi k-means e k-means++
- Expectation Maximization.
- Clustering gerarchico.

5. Reti Neurali Artificiali

- Architettura delle Reti Neurali Artificiali.
- Algoritmo di Apprendimento di Backpropagation.
- Applicazioni delle Reti Neurali Artificiali.

6. Gli ambienti Keras e TensorFlow

- I linguaggi Keras e TensorFlow per lo sviluppo di applicazioni di ML.
- Architetture GPU-based. Le GPU Nvidia Tesla e Volta.
- Uso di TensorFlow con il supporto delle GPU.

7. Riduzione di Dimensionalità

- Compressione e visualizzazione dei dati.
- Principal Component Analysis (PCA).
- Scelta del numero di componenti principali.
- Applicazioni nei Recommender Systems.

8. Reinforcement Learning

- Markov Decision Process.
- Programmazione dinamica.
- Algoritmi di Reinforcement Learning.

9. Introduzione al Deep Learning

- Introduzione alle Deep Forward Networks.
- Cenni sulle Convolutional Neural Networks (CNN).
- Cenni sulle Generative Adversarial Networks (GAN).

10. Casi di Studio e Progetti

Si esporranno vari casi di studio e si proporranno progetti in cui applicare le nozioni apprese su vari domíni d’interesse. In particolare le tematiche trattate potranno riguardare, tra l’altro, applicazioni di metodi e tecniche di ML nelle seguenti aree:

• Social Media Analysis (sentiment analysis, fake news detection, fake users detection, ecc.)
• Financial Machine Learning (algorithmic trading, ecc.)
• Recommender Systems (social RecSys, cultural heritage RecSys, e-commerce RecSys, ecc.)
• Data Science (prediction functions per applicazioni pratiche, ecc.)
• Visione Artificiale (object detection, face detection, face recognition, content-based video analysis, ecc.)
• Bioinformatica (riconoscimento di sequenze genetiche, ecc.)

Testi Adottati

Dispense a cura del docente.

Bibliografia Di Riferimento

S.J.Russel, P.Norvig "Artificial Intelligence: A Modern Approach", 4/Ed (2020). Pearson Education.

Modalità Erogazione

Lezioni ed esercitazioni. Supervisione progetto.

Modalità Valutazione

Prova scritta, valutazione progetto.

scheda docente | materiale didattico

Programma

1. Introduzione al Corso

- Aree di interesse del Machine Learning.
- Potenzialità dei modelli e dei metodi di ML.

2. Regressione

- Introduzione alla Linear Regression.
- Overfitting nella Regressione.
- Regolarizzazione: Rideg Regression.
- Feature Selection e Lasso.

3. Classificazione

- Logistic Regression per la classificazione.
- Overfitting nella Classificazione.
- Boosting. Algoritmo AdaBoost.
- Naïve Bayes.
- Support Vector Machines.

4. Clustering

- Algoritmi k-means e k-means++
- Expectation Maximization.
- Clustering gerarchico.

5. Reti Neurali Artificiali

- Architettura delle Reti Neurali Artificiali.
- Algoritmo di Apprendimento di Backpropagation.
- Applicazioni delle Reti Neurali Artificiali.

6. Gli ambienti Keras e TensorFlow

- I linguaggi Keras e TensorFlow per lo sviluppo di applicazioni di ML.
- Architetture GPU-based. Le GPU Nvidia Tesla e Volta.
- Uso di TensorFlow con il supporto delle GPU.

7. Riduzione di Dimensionalità

- Compressione e visualizzazione dei dati.
- Principal Component Analysis (PCA).
- Scelta del numero di componenti principali.
- Applicazioni nei Recommender Systems.

8. Reinforcement Learning

- Markov Decision Process.
- Programmazione dinamica.
- Algoritmi di Reinforcement Learning.

9. Introduzione al Deep Learning

- Introduzione alle Deep Forward Networks.
- Cenni sulle Convolutional Neural Networks (CNN).
- Cenni sulle Generative Adversarial Networks (GAN).

10. Casi di Studio e Progetti

Si esporranno vari casi di studio e si proporranno progetti in cui applicare le nozioni apprese su vari domíni d’interesse. In particolare le tematiche trattate potranno riguardare, tra l’altro, applicazioni di metodi e tecniche di ML nelle seguenti aree:

• Social Media Analysis (sentiment analysis, fake news detection, fake users detection, ecc.)
• Financial Machine Learning (algorithmic trading, ecc.)
• Recommender Systems (social RecSys, cultural heritage RecSys, e-commerce RecSys, ecc.)
• Data Science (prediction functions per applicazioni pratiche, ecc.)
• Visione Artificiale (object detection, face detection, face recognition, content-based video analysis, ecc.)
• Bioinformatica (riconoscimento di sequenze genetiche, ecc.)

Testi Adottati

Dispense a cura del docente.

Bibliografia Di Riferimento

S.J.Russel, P.Norvig "Artificial Intelligence: A Modern Approach", 4/Ed (2020). Pearson Education.

Modalità Erogazione

Lezioni ed esercitazioni. Supervisione progetto.

Modalità Valutazione

Prova scritta, valutazione progetto.