Offerta Didattica
ENGINEERING AND COMPUTER SCIENCE
ADVANCED TECHNIQUES OF DATA ANALYSIS
Classe di corso: LM-32, 18 - Classe delle lauree magistrali in Ingegneria informatica
AA: 2021/2022
Sedi: MESSINA
SSD | TAF | tipologia | frequenza | moduli |
---|---|---|---|---|
ING-INF/05 | Caratterizzante | Libera | Libera | No |
CFU | CFU LEZ | CFU LAB | CFU ESE | ORE | ORE LEZ | ORE LAB | ORE ESE |
---|---|---|---|---|---|---|---|
6 | 4 | 0 | 2 | 48 | 24 | 0 | 24 |
LegendaCFU: n. crediti dell’insegnamento CFU LEZ: n. cfu di lezione in aula CFU LAB: n. cfu di laboratorio CFU ESE: n. cfu di esercitazione FREQUENZA:Libera/Obbligatoria MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli ORE: n. ore programmate ORE LEZ: n. ore programmate di lezione in aula ORE LAB: n. ore programmate di laboratorio ORE ESE: n. ore programmate di esercitazione SSD:sigla del settore scientifico disciplinare dell’insegnamento TAF:sigla della tipologia di attività formativa TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio
Obiettivi Formativi
Fornire conoscenza e comprensione dei concetti di base dell’analisi dei dati e dell’apprendimento automatico evidenziando gli aspetti dell’apprendimento supervisionato e non supervisionato mediante lo studio delle basi teoriche e la loro applicazione a problemi reali. Fornire capacità di applicare conoscenza e comprensione mediante una visione critica delle moderne tecniche di analisi dei dati e del loro utilizzo in un sempre crescente numero di ambiti applicativi e fornire altresì le capacità pratiche per l’utilizzo dei principali ambienti di sviluppo di algoritmi di machine learning. Sviluppare l’autonomia nella scelta delle migliori strategie da utilizzare nel progetto in esame. Sviluppare la capacità di esprimersi utilizzando un linguaggio adeguato agli standard del settore e di aggiornarsi sull’evoluzione tecnologica nell’ambito del machine learning. Sviluppare la capacità di comprendere gli aspetti rilevanti di un problema e di progettare e implementare algoritmi di machine learning.Learning Goals
Metodi didattici
Il corso, al fine di raggiungere gli obiettivi formativi previsti, si svolge prevalentemente attraverso lezioni frontali. Sono inoltre previste esercitazioni in aula ed esercitazioni guidate svolte dagli studenti con lo scopo di stimolare l’approccio ai problemi con autonomia e senso critico.Tutte le attività sono svolte con supporto di lavagna digitale (tablet) e computer per la parte di programmazione.Teaching Methods
Prerequisiti
Conoscenza della programmazione in PythonPrerequisites
Verifiche dell'apprendimento
L'esame consiste nella presentazione di un progetto. Il progetto da elaborare viene concordato con il docente durante la seconda parte del corso e consiste nella scelta di un problema e di un relativo dataset e nella successiva applicazione di alcune delle tecniche apprese durante il corso per la risoluzione del problema. Durante la presentazione del progetto saranno chiesti eventuali approfondimenti sugli argomenti trattati durante il corso (definizioni, esempi rilevanti, applicazioni, collegamenti tra i vari argomenti…) con il duplice scopo di verificare il livello di conoscenza e di comprensione dei contenuti del corso e di valutare l'autonomia di giudizio, la capacità di apprendimento, l'abilità comunicativa e la proprietà di linguaggio scientifico e indi valutare le facoltà logico-deduttive acquisite dallo studente. La valutazione è fatta in trentesimi.Assessment
Programma del Corso
-INTRODUZIONE ALL’ANALISI DEI DATI: Raccolta ed immagazzinamento dei dati. Big Data. Il machine learning. Il concetto di data set. Exploratory Data Analysis. Apprendimento supervisionato e non-supervisionato. Interpretazione statistica dei dati. Panoramica dei principali tool per l’analisi dei dati. -LA REGRESSIONE: La regressione lineare. Regressione univariata. Regressione multivariata. Funzione di costo. Training e testing. Regressione come problema di ottimizzazione. L’algoritmo Gradient Descent. Normal equation. Regressione polinomiale.-LA CLASSIFICAZIONE: Classificazione binaria e multi-classe. Logistic regression. Funzione di costo. Decision boundary. Esempi di Classificazione. MNIST dataset. IRIS dataset. Accuratezza. Precision, Recall. Indice F1. Classificazione Softmax.-ANALISI DEGLI ALGORITMI: Capacità di un modello. Underfitting e Overfitting. Learning curves. Regolarizzazione. Scelta dei parametri di un modello. Cross validation.-ALGORITMI SUPERVISIONATI: K-nearest neighbors. Alberi decisionali. Random forest. -ALGORITMI NON-SUPERVISIONATI: Clustering. K-means. -RIDUZIONE DELLA DIMENSIONALITÀ: Visualizzazione. Compressione. L’algoritmo PCA.-LE RETI NEURALI: Il modello di neurone. Il Percettrone. Percettrone multi-strato. L’algoritmo di Back Propagation. Funzioni di attivazione. Regressione e classificazione con le reti neurali. - INTRODUZIONE AL DEEP LEARNING: Il concetto di Deep Learning. Le reti neurali convoluzionali. Le reti neurali ricorrenti.Course Syllabus
Testi di riferimento:
Stephen Marsland – “Machine Learning An Algorithmic Perspective”, Second Edition- Chapman and Hall/CRC - ISBN: 9781466583337
Aurélien Géron – “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow”, 2nd Edition - O'Reilly - ISBN: 9781492032649
Esami: Elenco degli appelli
Elenco delle unità didattiche costituenti l'insegnamento
Docente: DARIO BRUNEO
Orario di Ricevimento - DARIO BRUNEO
Giorno | Ora inizio | Ora fine | Luogo |
---|---|---|---|
Martedì | 15:00 | 17:00 | Dipartimento di Ingegneria - 7° piano - blocco B |
Note: