CODICE 108606 ANNO ACCADEMICO 2022/2023 CFU 6 cfu anno 2 COMPUTER ENGINEERING 11160 (LM-32) - GENOVA 6 cfu anno 2 COMPUTER SCIENCE 10852 (LM-18) - GENOVA SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05 LINGUA Inglese SEDE GENOVA PERIODO 1° Semestre MATERIALE DIDATTICO AULAWEB PRESENTAZIONE Oggi gli algoritmi di apprendimento automatico (machine learning) e i sistemi basati sull'intelligenza artificiale vengono utilizzati per molte applicazioni reali, tra cui il riconoscimento di immagini, i filtri antispam, il rilevamento di malware ed il riconoscimento biometrico. In queste applicazioni l'algoritmo di apprendimento automatico può essere oggetto di attacchi che possono manipolare i dati in ingresso per sovvertire di proposito sia la fase di apprendimento che quella operativa. La parte 1 del corso si propone di introdurre i fondamenti della sicurezza del machine learning e il settore dell’adversarial machine learning. La parte 2 introduce le normative internazionali alla base della cosiddetta "Trustworthy Artificial Intelligence". Il corso utilizza esempi di applicazioni reali, tra cui il riconoscimento di oggetti nelle immagini, il riconoscimento biometrico, il filtraggio dello spam, la robotica e il rilevamento di malware. OBIETTIVI E CONTENUTI OBIETTIVI FORMATIVI L'obiettivo di questo corso è fornire agli studenti concetti di base ed avanzati sulla sicurezza dell'apprendimento automatico e sulla "Trustworthy Artificial Intelligence". OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO Comprensione dei concetti fondamentali e dei metodi avanzati per la sicurezza dell’apprendimento automatico e dell’intelligenza artificiale e delle loro applicazioni al “pattern recognition”. Capacità di rispondere a domande aperte con libri chiusi, risolvere esercizi numerici, utilizzare librerie software open source per la valutazione della sicurezza di algoritmi di machine learning. PREREQUISITI Questo corso è rivolto a studenti che abbiano già frequentato corsi di base (o abbiano una conoscenza di base/intermedia) di machine learning e intelligenza artificiale e abbiano una conoscenza di base/intermedia dei linguaggi di programmazione (in particolare il linguaggio Python). MODALITA' DIDATTICHE Lezioni frontali nelle quali il docente utilizzerà diapositive. Copia delle diapositive sarà fornite in anticipo agli studenti. Laboratorio su attacchi e difese degli algoritmi di apprendimento automatico utilizzando la libreria Python open source SecML per la valutazione della sicurezza degli algoritmi di apprendimento automatico (https://github.com/pralab/secml). PROGRAMMA/CONTENUTO Parte 1: Sicurezza dell'apprendimento automatico (30 ore) • Introduzione alla sicurezza dell'apprendimento automatico: introduzione con esempi pratici di computer vision, biometria, filtri antispam, rilevamento di malware. (2 ore) • Modelli di minacce e attacchi al machine learning. Modellazione dell’adversarial machine learning. Il modello a due giocatori (l'attaccante e il sistema di machine learning). Livelli di conoscenza reciproca dei due giocatori (conoscenza perfetta, conoscenza limitata, conoscenza per quesiti e feedback). Modelli di attacco contro il machine learning: attacchi di evasione, avvelenamento, backdoor e privacy. I concetti di sicurezza by design e “security by obscurity”. (6 ore) • Valutazione di algoritmi di machine learning in ambienti ostili. Valutazione delle vulnerabilità attraverso metodi formali e valutazioni empiriche. Valutazioni adattive e non adattive. (6 ore) • Progettazione di algoritmi di machine learning in ambienti ostili: tassonomia delle possibili strategie di difesa. Attacchi di evasione e contromisure. Difese contro attacchi di evasione, avvelenamento, backdoor e privacy. Attacchi di avvelenamento e contromisure. Avvelenamento da backdoor, minacce e difese legate alla privacy. (8 ore) • Sessioni pratiche di laboratorio con linguaggio Python. Sessioni pratiche sugli attacchi contro l'apprendimento automatico e le difese degli algoritmi di apprendimento automatico. (8 ore) Parte 2: Intelligenza Artificiale affidabile (18 ore) • Regolamentazione dell’AI: la legge europea sull'AI. Linee guida etiche europee per un'intelligenza artificiale affidabile. Normative AI nel mondo (3 ore) • Equità e privacy dell'apprendimento automatico: equità e minacce e difese legate alla privacy. (6 ore) • AI Robusta: ottimizzazione robusta nell'apprendimento automatico; progettazione di algoritmi di machine learning in the wild e riconoscimento di pattern out-of-distribution (3 ore) • Intelligenza artificiale spiegabile: metodi di spiegabilità. Metodi globali e locali. Metodi model-specific e model-agnostic. (3 ore) • Sessioni pratiche di laboratorio con linguaggio Python: lezioni pratiche su algoritmi spiegabili di machine learning e normative AI (3 ore). TESTI/BIBLIOGRAFIA A. Joseph, B. Nelson, B. Rubinstein, D. Tygar, Adversarial machine learning, Cambridge University Press, 2018 B., Battista, F. Roli. Wild patterns: Ten years after the rise of adversarial machine learning. Pattern Recognition 84 (2018): 317-331 B. Biggio, F.Roli, Wild Patterns, Half-day Tutorial on Adversarial Machine Learning: https://www.pluribus-one.it/research/sec-ml/wild-patterns Biggio, B., Corona, I., Maiorca, D., Nelson, B., Srndic, N., Laskov, P., Giacinto, G., Roli, F. Evasion attacks against machine learning at test time. ECML-PKDD, 2013. Biggio, B., Fumera, G., Roli, F. Security evaluation of pattern classifiers under attack. IEEE Trans. Knowl. Data Eng., 26 (4):984–996, 2014. DOCENTI E COMMISSIONI LUCA ONETO Ricevimento: Su appuntamento, tramite e-mail FABIO ROLI Ricevimento: Su appuntamento da concordare per e-mail. LUCA DEMETRIO Commissione d'esame FABIO ROLI (Presidente) LUCA DEMETRIO LUCA ONETO DAVIDE ANGUITA (Presidente Supplente) LEZIONI INIZIO LEZIONI Secondo il calendario ufficiale Orari delle lezioni L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy ESAMI MODALITA' D'ESAME Prove scritte in classe durante il semestre e realizzazione di un progetto sui contenuti del corso. MODALITA' DI ACCERTAMENTO Valutazioni in classe durante il semestre (soluzione a libro chiuso di esercizi numerici/programmazione e domande a risposta aperta) + progetto finale da preparare a casa. Gruppi di massimo 3 studenti possono svolgere il progetto finale a casa. Criterio di valutazione = valutazione intermedia in classe (15/30) + progetto finale a casa (15/30) Calendario appelli Data appello Orario Luogo Tipologia Note 09/01/2023 09:00 GENOVA Orale 09/01/2023 09:00 GENOVA Esame su appuntamento 30/01/2023 09:00 GENOVA Esame su appuntamento 30/01/2023 09:00 GENOVA Orale 13/02/2023 09:00 GENOVA Esame su appuntamento 13/02/2023 09:00 GENOVA Orale 05/06/2023 09:00 GENOVA Orale 05/06/2023 09:00 GENOVA Esame su appuntamento 26/06/2023 09:00 GENOVA Esame su appuntamento 26/06/2023 09:00 GENOVA Orale 17/07/2023 09:00 GENOVA Esame su appuntamento 17/07/2023 09:00 GENOVA Orale 04/09/2023 09:00 GENOVA Orale 04/09/2023 09:00 GENOVA Esame su appuntamento ALTRE INFORMAZIONI Contattare il docente per e-mail.