ID:
164596
Tipo Insegnamento:
Opzionale
Durata (ore):
48
CFU:
6
SSD:
ANALISI NUMERICA
Url:
MATEMATICA/DIDATTICO Anno: 1
MATEMATICA/DIDATTICO Anno: 1
MATEMATICA/GENERALE Anno: 1
MATEMATICA/GENERALE Anno: 1
MATEMATICA/TEORICO Anno: 1
Anno:
2024
Dati Generali
Periodo di attività
Primo Semestre (18/09/2024 - 20/12/2024)
Syllabus
Obiettivi Formativi
Scopo dell'insegnamento è fornire a studentesse e studenti conoscenze teoriche iniziali e alcune abilità pratiche per comprendere, analizzare e risolvere semplici problemi di apprendimento automatico. Particolare attenzione è dedicata all'approfondimento degli aspetti matematici e numerici che supportano i metodi e gli algoritmi. Le principali conoscenze che ci si attende siano acquisite al termine dell'insegnamento sono:
- dichiarative: conoscenza della corretta terminologia e del significato delle locuzioni standard utilizzate nell'ambito dell'apprendimento automatico, con particolare riferimento alle formulazioni matematiche soggiacenti i modelli, i metodi e gli algoritmi di risoluzione dei problemi;
- concettuali: conoscenza di alcuni dei principali aspetti fondazionali che sono alla base dell'apprendimento automatico, con particolare riguardo alla formulazione dei problemi di tipo probabilistico e ai principali metodi di tipo funzionale per i problemi di base di classificazione e regressione;
- procedurali: conoscenza di alcuni dei principali algoritmi di soluzione dei problemi di base dell'apprendimento statistico e dei contesti nei quali possono essere efficacemente utilizzati;
- metacognitive: conoscenza di alcune classi di metodi, conoscenza dei criteri che possono indirizzare la scelta di un particolare metodo di soluzione in relazione al contesto nel quale deve essere utilizzato e al tipo e quantità di dati a disposizione,
Le principali abilità che ci si aspetta vengano acquisite al termine dell'insegnamento, anche attraverso l'attività laboratoriale (sia in aula/lab, che in autonomia), sono:
- capacità di riconoscere alcuni tipi di problemi di apprendimento statistico (principalmente supervisionato), di comprenderne le peculiarità e di saperli ricondurre al corretto insieme di risultati teorici;
- capacità di individuare un opportuno metodo di soluzione fra quelli studiati;
- capacità di applicare correttamente gli algoritmi di soluzione a semplici problemi test, mediante implementazione diretta in R, Matlab o altro linguaggio interpretato, oppure di utilizzare correttamente alcuni strumenti software forniti dall'ambiente di sviluppo;
- abilità di analizzare le prestazioni computazionali.
- dichiarative: conoscenza della corretta terminologia e del significato delle locuzioni standard utilizzate nell'ambito dell'apprendimento automatico, con particolare riferimento alle formulazioni matematiche soggiacenti i modelli, i metodi e gli algoritmi di risoluzione dei problemi;
- concettuali: conoscenza di alcuni dei principali aspetti fondazionali che sono alla base dell'apprendimento automatico, con particolare riguardo alla formulazione dei problemi di tipo probabilistico e ai principali metodi di tipo funzionale per i problemi di base di classificazione e regressione;
- procedurali: conoscenza di alcuni dei principali algoritmi di soluzione dei problemi di base dell'apprendimento statistico e dei contesti nei quali possono essere efficacemente utilizzati;
- metacognitive: conoscenza di alcune classi di metodi, conoscenza dei criteri che possono indirizzare la scelta di un particolare metodo di soluzione in relazione al contesto nel quale deve essere utilizzato e al tipo e quantità di dati a disposizione,
Le principali abilità che ci si aspetta vengano acquisite al termine dell'insegnamento, anche attraverso l'attività laboratoriale (sia in aula/lab, che in autonomia), sono:
- capacità di riconoscere alcuni tipi di problemi di apprendimento statistico (principalmente supervisionato), di comprenderne le peculiarità e di saperli ricondurre al corretto insieme di risultati teorici;
- capacità di individuare un opportuno metodo di soluzione fra quelli studiati;
- capacità di applicare correttamente gli algoritmi di soluzione a semplici problemi test, mediante implementazione diretta in R, Matlab o altro linguaggio interpretato, oppure di utilizzare correttamente alcuni strumenti software forniti dall'ambiente di sviluppo;
- abilità di analizzare le prestazioni computazionali.
Prerequisiti
Per seguire proficuamente il corso, è necessario aver preventivamente assimilato le seguenti conoscenze:
- calcolo differenziale e integrale per funzioni reali di una o più variabili reali;
- elementi di algebra lineare e analisi numerica (calcolo numerico);
- fondamenti di probabilità e statistica;
- fondamenti di programmazione in R o Matlab o altro linguaggio di programmazione interpretato;
- molto utili, anche se non obbligatorie: nozioni di ottimizzazione numerica.
- calcolo differenziale e integrale per funzioni reali di una o più variabili reali;
- elementi di algebra lineare e analisi numerica (calcolo numerico);
- fondamenti di probabilità e statistica;
- fondamenti di programmazione in R o Matlab o altro linguaggio di programmazione interpretato;
- molto utili, anche se non obbligatorie: nozioni di ottimizzazione numerica.
Metodi didattici
L'insegnamento si svolge totalmente in presenza, attraverso lezioni frontali ed esercitazioni, anche in laboratorio, con l'utilizzo di R, oppure dell'ambiente di calcolo Matlab e di alcuni toolboxes, oppure di altro linguaggio di programmazione interpretato.
Se richiesto, le lezioni potranno essere trasmesse in streaming e registrate. Le eventuali registrazioni saranno disponibili nella Google Classroom dell'insegnamento, insieme all'altro materiale del corso.
Il codice di accesso alla Classroom è disponibile sul sito del corso di studi.
Se richiesto, le lezioni potranno essere trasmesse in streaming e registrate. Le eventuali registrazioni saranno disponibili nella Google Classroom dell'insegnamento, insieme all'altro materiale del corso.
Il codice di accesso alla Classroom è disponibile sul sito del corso di studi.
Verifica Apprendimento
L'esame consiste in una prova orale, durante la quale verranno poste domande sulla parte teorica e sugli algoritmi presentati a lezione. Inoltre, ci sarà una discussione riguardante le attività laboratoriali svolte durante il corso.
Scopo delle domande e della discussione è la valutazione del livello di apprendimento raggiunto rispetto agli obiettivi formativi: conoscenze teoriche e capacità di comprensione; capacità di applicazione di concetti ed algoritmi a casi specifici; abilità di utilizzo degli strumenti di calcolo descritti nel corso.
Nella valutazione si terrà conto anche della chiarezza e correttezza espositiva, nonché dell’autonomia di giudizio dimostrate da studentesse e studenti.
Scopo delle domande e della discussione è la valutazione del livello di apprendimento raggiunto rispetto agli obiettivi formativi: conoscenze teoriche e capacità di comprensione; capacità di applicazione di concetti ed algoritmi a casi specifici; abilità di utilizzo degli strumenti di calcolo descritti nel corso.
Nella valutazione si terrà conto anche della chiarezza e correttezza espositiva, nonché dell’autonomia di giudizio dimostrate da studentesse e studenti.
Testi
Appunti del docente.
Testi:
- M.P. Deisenroth, A.A. Faisal. C.S. Ongm, “Mathematics for Machine Learning”, Cambridge University Press, Aprile 2020;
- T. Hastie, R. Tibshirani, J. Friedman, “The Elements of Statistical Learning. Data mining, inference and prediction”, 2nd ed., Springer, 2017;
- T.M. Mitchell, “Machine Learning”, WCB/McGraw-Hill, 1997.
Testi:
- M.P. Deisenroth, A.A. Faisal. C.S. Ongm, “Mathematics for Machine Learning”, Cambridge University Press, Aprile 2020;
- T. Hastie, R. Tibshirani, J. Friedman, “The Elements of Statistical Learning. Data mining, inference and prediction”, 2nd ed., Springer, 2017;
- T.M. Mitchell, “Machine Learning”, WCB/McGraw-Hill, 1997.
Contenuti
Il corso prevede 48 ore di lezioni frontali, che sono tenute tutte in presenza. Gli argomenti presentati nelle lezioni si possono raggruppare in tre macro-argomenti: introduzione, aspetti fondazionali, approcci di tipo funzionale.
1) Introduzione (circa 4 ore):
- il problema dell’apprendimento statistico; esempi; problemi di apprendimento ben definiti;
- bias, conoscenza a priori, tassonomia;
- la forma matematica del problema: il framework formale dell'apprendimento statistico; perdita, errori, rischio.
2) Aspetti fondazionali dell'apprendimento statistico (circa 28 ore):
- cercare un modello per i dati: il ruolo della probabilità e dell’inferenza; minimizzazione del rischio empirico (ERM) e overfitting; classi di ipotesi a dimensione finita; assunzione di realizzabilità; misurare l'accuratezza della predizione;
- rischiando s’impara: minimizzazione del rischio; la scelta del modello. PAC learning e PAC learning agnostico; scelta della funzione di perdita;
- questioni di convergenza: convergenza uniforme, il “trucco” della discretizzazione;
- il ruolo della conoscenza a priori e l'errore di decomposizione; il teorema “no-free-lunch” (NFLT);
- classi infinite di ipotesi e la teoria di Vapnik-Cervonenkis; il teorema fondamentale dell'apprendimento statistico;
- apprendibilità non uniforme; l'approccio della minimizzazione del rischio strutturale (SRM); il paradigma della lunghezza minima di descrizione e il criterio di Occam;
- consistenza delle nozioni di apprendimento;
- il problema della complessità computazionale nell'apprendimento statistico.
3) Approcci di soluzione di tipo funzionale (circa 16 ore):
- usare gli iperpiani: modellizzazione lineare; dal perceptron alla regressione logistica;
- selezione del modello e validazione; decomposizione dell'errore usando la validazione; curve di apprendimento;
- cosa aiuta la soluzione: apprendimento in presenza di convessità, lipshitzianità, regolarità; funzioni surrogate di perdita;
- la regolarizzazione di Tikhonov: come stabilizzare la soluzione; la regola RLM per la regressione; controllare il compromesso fra accuratezza e stabilità;
- cercare i minimi in condizioni avverse: cenni ai sottogradienti e alla discesa del gradiente stocastico (SGD); SGD per la minimizzazione del rischio;
- cenni al metodo delle macchine a vettori di supporto (SVM).
Sono previste attività di laboratorio, nelle quali alcuni degli algoritmi proposti vengono implementati, oppure utilizzati mediante procedura già disponibili e applicati a semplici problemi di apprendimento. Questa parte di attività verrà svolta in R, in Matlab o in altro linguaggio interpretato di programmazione.
La pianificazione temporale dei contenuti è indicativa e potrà subire modifiche nel corso dell’insegnamento, tenendo conto delle eventuali difficoltà incontrate da studentesse e studenti.
1) Introduzione (circa 4 ore):
- il problema dell’apprendimento statistico; esempi; problemi di apprendimento ben definiti;
- bias, conoscenza a priori, tassonomia;
- la forma matematica del problema: il framework formale dell'apprendimento statistico; perdita, errori, rischio.
2) Aspetti fondazionali dell'apprendimento statistico (circa 28 ore):
- cercare un modello per i dati: il ruolo della probabilità e dell’inferenza; minimizzazione del rischio empirico (ERM) e overfitting; classi di ipotesi a dimensione finita; assunzione di realizzabilità; misurare l'accuratezza della predizione;
- rischiando s’impara: minimizzazione del rischio; la scelta del modello. PAC learning e PAC learning agnostico; scelta della funzione di perdita;
- questioni di convergenza: convergenza uniforme, il “trucco” della discretizzazione;
- il ruolo della conoscenza a priori e l'errore di decomposizione; il teorema “no-free-lunch” (NFLT);
- classi infinite di ipotesi e la teoria di Vapnik-Cervonenkis; il teorema fondamentale dell'apprendimento statistico;
- apprendibilità non uniforme; l'approccio della minimizzazione del rischio strutturale (SRM); il paradigma della lunghezza minima di descrizione e il criterio di Occam;
- consistenza delle nozioni di apprendimento;
- il problema della complessità computazionale nell'apprendimento statistico.
3) Approcci di soluzione di tipo funzionale (circa 16 ore):
- usare gli iperpiani: modellizzazione lineare; dal perceptron alla regressione logistica;
- selezione del modello e validazione; decomposizione dell'errore usando la validazione; curve di apprendimento;
- cosa aiuta la soluzione: apprendimento in presenza di convessità, lipshitzianità, regolarità; funzioni surrogate di perdita;
- la regolarizzazione di Tikhonov: come stabilizzare la soluzione; la regola RLM per la regressione; controllare il compromesso fra accuratezza e stabilità;
- cercare i minimi in condizioni avverse: cenni ai sottogradienti e alla discesa del gradiente stocastico (SGD); SGD per la minimizzazione del rischio;
- cenni al metodo delle macchine a vettori di supporto (SVM).
Sono previste attività di laboratorio, nelle quali alcuni degli algoritmi proposti vengono implementati, oppure utilizzati mediante procedura già disponibili e applicati a semplici problemi di apprendimento. Questa parte di attività verrà svolta in R, in Matlab o in altro linguaggio interpretato di programmazione.
La pianificazione temporale dei contenuti è indicativa e potrà subire modifiche nel corso dell’insegnamento, tenendo conto delle eventuali difficoltà incontrate da studentesse e studenti.
Lingua Insegnamento
ITALIANO
Corsi
Corsi
MATEMATICA
Laurea Magistrale
2 anni
No Results Found
Persone
Persone
No Results Found