21210464 - Machine learning and data processing

Acquisire elementi di base, concetti e strumenti fondamentali, basati su metodi computazionali, per rappresentare l’apprendimento, la conoscenza e il ragionamento in condizioni di incertezza. Progettare e sviluppare strumenti software basati su tecniche di apprendimento automatico (machine learning) per risolvere problemi di analisi di dati, knowledge discovery e supporto alle decisioni in presenza di informazione incerta o incompleta.
scheda docente | materiale didattico

Programma

Intelligenza artificiale e fondamenti di machine learning. Tipi di intelligenza artificiale, sistema di IA classico, definizione di machine learning, approccio classico e ambiti applicativi. Fondamenti di machine learning, tipi di apprendimento, metodi di addestramento, metodi di generalizzazione. Apprendimento supervisionato per problemi di regressione. Modelli lineari, errore quadratico medio, apprendimento come minimizzazione del MSE. Regression polinomiale. Overfitting e underfitting. Esempi di programmazione in linguaggio Matlab e Python. Algoritmi fondamentali per l’apprendimento supervisionato. Macchine a vettori di supporto, iperpiani di separazione con vincoli soft-margin, kernel trick e linearità. Alberi decisionali ad apprendimento automatico, scelta degli attributi e dei valori, entropia dell’informazione. Ensemble learning, modelli in parallelo, random forest. Apprendimento con reti neurali artificiali. Il percettrone. Le reti multi-layer perceptron (MLP). Clustering con reti neurali. Cenni alle architetture Deep Learning avanzate. Esempi di programmazione in linguaggio Matlab e Python. Analisi, selezione e trasformazione dei dati. Analisi di immagini, scomposizione negli spazi di colore YUV/YCbCr. Analisi dei dati tempo/frequenza, trasformata di Fourier (cenni), spettrogrammi. Esempi di programmazione in linguaggio Matlab e Python.

Testi Adottati

Dispense a cura del Docente sulla piattaforma Moodle e MS Teams di Ateneo.
Libro: G. Barone, “Machine Learning e Intelligenza Artificiale: metodologie per lo sviluppo di sistemi automatici”, Dario Flaccovio Editore, 217 pp