ID:
A001532
Durata (ore):
48
CFU:
6
Url:
INGEGNERIA MECCANICA/PERCORSO COMUNE Anno: 1
Anno:
2023
Dati Generali
Periodo Di Attività
Secondo Semestre (26/02/2024 - 17/05/2024)
Syllabus
Obiettivi Formativi
L’obiettivo del corso è quello di fornire allo studente competenze relative alla progettazione di algoritmi per la soluzione di problemi oltre che dei principali framework e software di sviluppo. Saranno date le conoscenze di base sul paradigma della programmazione ad oggetti, le strutture dati ed i principali costrutti di programmazione.
Verranno inoltre studiati gli strumenti alla base dell’analisi dei dati e del Machine Learning analizzando le principali tecniche di apprendimento supervisionato (Regressione e Classificazione) e non supervisionato (Clustering). Il corso si prefissa anche di fornire le metodologie per la selezione, l’implementazione ed il tuning di modelli di apprendimento su set di dati reali.
Gli elementi di teoria acquisiti dallo studente consentiranno l’identificazione e la risoluzione di problemi mediante l’utilizzo degli algoritmi appresi e l’elaborazione in autonomia della migliore soluzione da utilizzare nel caso in esame.
La comprensione degli argomenti è caratterizzata dall’uso di un linguaggio rigoroso che permetta l’esposizione ed argomentazione dei risultati ottenuti e di instaurare una comunicazione con interlocutori esperti del settore.
Verranno inoltre studiati gli strumenti alla base dell’analisi dei dati e del Machine Learning analizzando le principali tecniche di apprendimento supervisionato (Regressione e Classificazione) e non supervisionato (Clustering). Il corso si prefissa anche di fornire le metodologie per la selezione, l’implementazione ed il tuning di modelli di apprendimento su set di dati reali.
Gli elementi di teoria acquisiti dallo studente consentiranno l’identificazione e la risoluzione di problemi mediante l’utilizzo degli algoritmi appresi e l’elaborazione in autonomia della migliore soluzione da utilizzare nel caso in esame.
La comprensione degli argomenti è caratterizzata dall’uso di un linguaggio rigoroso che permetta l’esposizione ed argomentazione dei risultati ottenuti e di instaurare una comunicazione con interlocutori esperti del settore.
Prerequisiti
Conoscenza della matematica e dell’algebra lineare.
Metodi Didattici
Il corso, si svolge prevalentemente attraverso lezioni frontali. Sono inoltre previste esercitazioni in aula ed esercitazioni guidate svolte dagli studenti. Tutte le attività sono svolte con supporto di slide computer per la parte di programmazione.
Verifica Apprendimento
L'esame consiste nella presentazione di un progetto in Python. Il progetto da elaborare viene concordato con il docente 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 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.
La valutazione è fatta in trentesimi.
Testi
Aurélien Géron – “Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow”, 2nd Edition - O'Reilly - ISBN: 9781492032649
Contenuti
-INTRODUZIONE A PYTHON: Variabili, Espressioni, Operatori. Gestione flusso di controllo: istruzioni condizionali, cicli while, cicli for. Strutture dati: liste, tuple, set, dizionari. Gestione dell’input e dell’output. Gestione dei file. Generatori. Funzioni in Python: definizione ed implementazione. Namespace globali e locali. -PROGRAMMAZIONE ORIENTATA AGLI OGGETTI: Classi, Oggetti, Metodi. Concetti di Ereditarità, Overloading, Overriding, Incapsulamento, e Polimorfismo. -MACHINE LEARNING: Apprendimento supervisionato e non supervisionato. Problemi di regressione e classificazione. Visualizzazione e gestione dei dati. -ALGORITMI DI REGRESSIONE: Regressione lineare semplice. Regressione lineare multipla. Regressione polinomiale. Metodo dei minimi quadrati. Algoritmo Gradient Descent. Funzione di costo. Reti neurali artificiali. -ALGORITMI DI CLASSIFICAZIONE: Classificazione binaria e multiclasse. Regressione logistica. Regressione logistica multipla. Funzione di costo. K-Nearest Neighbors (KNN). Alberi decisionali e Random Forests. Reti neurali artificiali. Matrice di confusione. Metriche di Accuratezza Precision, Recall ed F1-score. -ALGORITMI NON SUPERVISIONATI: K-Means clustering. Principal Component Analysis (PCA).
-VALUTAZIONE DEI MODELLI: Curve di apprendimento, condizioni di Underfitting ed Overfitting.
-VALUTAZIONE DEI MODELLI: Curve di apprendimento, condizioni di Underfitting ed Overfitting.
Lingua Insegnamento
ITALIANO
Corsi
Corsi
INGEGNERIA MECCANICA
Laurea Magistrale
2 anni
No Results Found