MACHINE LEARNING

LOREDANA CARUCCIO MACHINE LEARNING

0512100064
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA
INFORMATICA
2023/2024

ANNO CORSO 3
ANNO ORDINAMENTO 2017
PRIMO SEMESTRE
CFUOREATTIVITÀ
432LEZIONE
216LABORATORIO
Obiettivi
IL CORSO FORNISCE GLI STRUMENTI METODOLOGICI E TECNOLOGICI FONDAMENTALI PER PROGETTARE ED IMPLEMENTARE SISTEMI DI MACHINE LEARNING PARTENDO DA DATI DI VARIO GENERE, INCLUSO DATI SENSORISTICI, DA RILASCIARE SU VARI TIPI DI PIATTAFORME (AD ES. ROBOT, SIMULATORI DI VEICOLI A GUIDA AUTONOMA E DRONI).
CONOSCENZA E CAPACITÀ DI COMPRENSIONE
AL TERMINE DEL CORSO GLI STUDENTI AVRANNO
•COMPRESO I FONDAMENTI DELLA DISCIPLINA DEL MACHINE LEARNING
•COMPRESO LE FASI PRINCIPALI PER PROGETTARE UN SISTEMA DI MACHINE LEARNING
•COMPRESO I CONCETTI FONDAMENTALI PER LA PREPARAZIONE DI DATI DI ADDESTRAMENTO
•COMPRESO COME ISPEZIONARE I DATI PER SCOPRIRE POTENZIALI RELAZIONI PREDITTIVE
•COMPRESO LE CARATTERISTICHE DEI PRINCIPALI DOMINI APPLICATIVI DEL MACHINE LEARNING
•COMPRESO I PRINCIPALI MODELLI ED ALGORITMI DI MACHINE LEARNING
•COMPRESO I PRINCIPALI ASPETTI ETICI CONNESSI ALL’UTILIZZO DEI SISTEMI DI MACHINE LEARNING

CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE
GLI STUDENTI SVILUPPERANNO LA CAPACITÀ DI ANALIZZARE PROBLEMI REALI E DI SCEGLIERE LE PIÙ OPPORTUNE TECNICHE DI MACHINE LEARNING PER LA LORO RISOLUZIONE, SVILUPPANDO LA CAPACITÀ DI IMPLEMENTARLE ALL’INTERNO DI SISTEMI SOFTWARE. IN PARTICOLARE, ESSI SARANNO IN GRADO DI COMPRENDERE SE UN DETERMINATO PROBLEMA SI PRESTA ALL’UTILIZZO DI TECNICHE DI MACHINE LEARNING PER LA SUA RISOLUZIONE E, IN CASO AFFERMATIVO, COME SCEGLIERE I MODELLI E GLI ALGORITMI PIÙ OPPORTUNI E COME APPLICARE I PASSI METODOLOGICI NECESSARI PER GIUNGERE ALLA FORMULAZIONE ED ALLO SVILUPPO DI UNA SOLUZIONE IDONEA. ESSI SARANNO INOLTRE IN GRADO DI FAMILIARIZZARE RAPIDAMENTE CON NUOVE TEMATICHE DI MACHINE LEARNING E DI INTERAGIRE CON COMUNITÀ DI SVILUPPATORI ED ESPERTI DI QUEST’AREA.
Prerequisiti
UN CORSO DI FONDAMENTI DI BASI DI DATI ED UN LINGUAGGIO DI PROGRAMMAZIONE.
Contenuti
IL CORSO SI CONCENTRERÀ SUI SEGUENTI ARGOMENTI:

•INTRODUZIONE AL MACHINE LEARNING ED ALLA PROGETTAZIONE DI SISTEMI DI ML (4 ORE)
-DEFINIZIONE DEI REQUISITI DI UN SISTEMA ML (1 ORA)
-PIPELINE PER LA PROGETTAZIONE DI UN SISTEMA DI ML (1 ORA)
-APPROCCI DI ML (1 ORA)
-PROBLEMATICHE DI ML: UNDERFITTING ED OVERFITTING (1 ORA)

•DATA ENGINEERING (6 ORE)
-SORGENTI DI DATI (1 ORA)
-FORMATI DI DATI (1 ORA)
-DATI STRUTTURATI E NON STRUTTURATI (1 ORA)
-BATCH VS STREAM PROCESSING (1 ORA)
-CENNI SUI NOSQL DATABASE (2 ORE)

• DATI DI ADDESTRAMENTO (4 ORE)
-CAMPIONAMENTO (1 ORA)
-ETICHETTATURA (1 ORA)
-CLASS IMBALANCE (1 ORA)
-DATA AUGMENTATION (1 ORA)

•FEATURE ENGINEERING (4 ORE)
-LEARNED FEATURES VERSUS ENGINEERED FEATURES (1 ORA)
-OPERAZIONI COMUNI DI FEATURE ENGINEERING (1 ORA)
-GESTIONE DI VALORI NULLI (1 ORA)
-SCALING (1 ORA)

•SVILUPPO E VALUTAZIONE DEI MODELLI DI MACHINE LEARNING (8 ORE)
-VALUTAZIONE DI MODELLI DI ML (2 ORE)
-ENSEMBLE LEARNING (1 ORA)
-ADDESTRAMENTO DISTRIBUITO (2 ORE)
-AUTOML (1 ORA)
-VALUTAZIONE OFFLINE DI MODELLI DI ML (2 ORE)

•CENNI SUI MODELLI DI MACHINE LEARNING (4 ORE)

•CENNI SU ASPETTI ETICI DEL MACHINE LEARNING (2 ORE)
-GESTIONE PREVISIONI INESATTE (1 ORA)
-AI RESPONSABILE (1 ORA)
Metodi Didattici
L’INSEGNAMENTO PREVEDE 32 ORE DI DIDATTICA FRONTALE SU ARGOMENTI TEORICI E 16 ORE DI LABORATORIO SUI PRINCIPALI STRUMENTI ED APPLICAZIONI, CON L’OBIETTIVO DI PRESENTARE I CONCETTI E SVILUPPARE CAPACITÀ DI PROGETTARE E IMPLEMENTARE SOLUZIONI PER PROBLEMATICHE CHE SI PRESTANO ALL’UTILIZZO DI SOLUZIONI DI MACHINE LEARNING. GLI ARGOMENTI DEL PROGRAMMA VENGONO PRESENTATI CON L’AUSILIO DI PRESENTAZIONI POWERPOINT, STIMOLANDO DISCUSSIONI CRITICHE CON LA CLASSE. PER OGNI ARGOMENTO TRATTATO, VENGONO ILLUSTRATI POSSIBILI TASK CHE POSSONO ESSERE OGGETTO DI UN PROGETTO DI CORSO DA PARTE DI UNO O PIÙ STUDENTI. PER QUANTO RIGUARDA GLI STRUMENTI APPLICATIVI, OLTRE ALL’UTILIZZO DI PRESENTAZIONI POWERPOINT, NELLE QUALI VENGONO PRESENTATI CONCETTI ED EVENTUALI LINK A FORUM, MANUALI E SITI DI APPROFONDIMENTO, VENGONO EFFETTUATE SIMULAZIONI AL COMPUTER, LE QUALI POSSONO ESSERE ESEGUITE ANCHE DAGLI STUDENTI DALLA PROPRIA POSTAZIONE, AVENDO ESSI LA POSSIBILITÀ DI CHIEDERE CHIARIMENTI E RISOLVERE EVENTUALI PROBLEMI TECNICI INSIEME AL DOCENTE.
Verifica dell'apprendimento
IL RAGGIUNGIMENTO DEGLI OBIETTIVI DELL’INSEGNAMENTO E CERTIFICATO MEDIANTE IL SUPERAMENTO DI UN ESAME CON VALUTAZIONE IN TRENTESIMI. L'ESAME PREVEDE UNA PROVA SCRITTA O, IN ALTERNATIVA, PROVE IN ITINERE, LO SVILUPPO DI UN PROGETTO ED UNA PROVA ORALE. IL PROGETTO È FINALIZZATO AD ACCERTARE LA CAPACITA DI APPLICARE LE CONOSCENZE ACQUISITE. ESSO PUÒ ESSERE SVOLTO INDIVIDUALMENTE O IN GRUPPI DI MASSIMO 3 PERSONE, SCEGLIENDO TRA UN VENTAGLIO DI PROPOSTE FATTE DAL DOCENTE, CON LA POSSIBILITÀ DI SVOLGERE UN PROGETTO CONGIUNTO CON ALCUNI DEGLI ALTRI CORSI DELLA LAUREA TRIENNALE O DI PARTECIPARE A DELLE COMPETIZIONI INTERNAZIONALI DI MACHINE LEARNING. DURANTE LO SVOLGIMENTO DEL PROGETTO GLI STUDENTI DOVRANNO INTERAGIRE CON IL DOCENTE DEL CORSO AL FINE DI COMUNICARE GLI STATI DI AVANZAMENTO DELLO STESSO E LE EVENTUALI CRITICITÀ EMERSE, CONCORDANDO OBIETTIVI E MODALITÀ DI PROSECUZIONE DEL PROGETTO. AL TERMINE DEL PROGETTO GLI STUDENTI DEVONO CONSEGNARE AL DOCENTE UNA TESINA CONTENENTE LA DOCUMENTAZIONE DI PROGETTO ED UNA PRESENTAZIONE POWERPOINT DEL PROGETTO DELLA DURATA DI CIRCA 30 MINUTI. SUCCESSIVAMENTE ALLA PRESENTAZIONE DEL PROGETTO GLI STUDENTI DEVONO SOSTENERE UNA PROVA ORALE INDIVIDUALE. TALE PROVA CONSISTE IN UN COLLOQUIO CON DOMANDE E DISCUSSIONE SUI CONTENUTI TEORICI E METODOLOGICI TRATTATI A LEZIONE ED E FINALIZZATA AD ACCERTARE LA CAPACITA DI CONOSCENZA E COMPRENSIONE, NONCHÉ LA CAPACITA DI ESPOSIZIONE DEI CONCETTI. LA PROVA ORALE PUÒ ESSERE SVOLTA NELLA STESSA DATA DELLA PRESENTAZIONE DEL PROGETTO, OPPURE IN ALTRA DATA CHE I SINGOLI MEMBRI DEL GRUPPO POSSONO CONCORDARE CON IL DOCENTE.
IL VOTO FINALE SCATURISCE, GENERALMENTE, DALLA MEDIA DEI VOTI IN TRENTESIMI CONSEGUITI IN CIASCUNA DELLE TRE PROVE.
Testi
1.CHIP HUYEN, DESIGNING MACHINE LEARNING SYSTEMS - AN ITERATIVE PROCESS FOR PRODUCTION-READY APPLICATIONS, O’REILLY (2022).

2.ANDREAS LINDHOLM, NIKLAS WAHLSTRÖM, FREDRIK LINDSTEN, THOMAS B. SCHÖN, MACHINE LEARNING - A FIRST COURSE FOR ENGINEERS AND SCIENTISTS CAMBRIDGE UNIVERSITY PRESS (2022).

3.HAYDEN LIU, PYTHON MACHINE LEARNING BY EXAMPLE – PACKT (2022) – TERZA EDIZIONE.

4.JOHN V. GUTTAG, INTRODUCTION TO COMPUTATION AND PROGRAMMING USING PYTHON WITH APPLICATION TO COMPUTATIONAL MODELING AND UNDERSTANDING DATA – MIT PRESS (2021) – TERZA EDIZIONE.
Altre Informazioni
LA FREQUENZA DEL CORSO È FORTEMENTE CONSIGLIATA. GLI STUDENTI DEVONO ESSERE PREPARATI A TRASCORRERE UNA CONGRUA QUANTITÀ DI TEMPO NELLO STUDIO AL DI FUORI DELLE LEZIONI. UNA PREPARAZIONE SODDISFACENTE RICHIEDE IN MEDIA 1 ORA DI STUDIO PER CIASCUNA ORA TRASCORSA IN AULA E CIRCA 80 ORE PER LO SVILUPPO DEL PROGETTO.
IL MATERIALE DELLE LEZIONI SARÀ DISPONIBILE SULLA PIATTAFORMA E-LEARNING DIPARTIMENTALE HTTP://ELEARNING.INFORMATICA.UNISA.IT/EL-PLATFORM/

  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2024-11-05]