Seleziona l'Anno Accademico:     2017/2018 2018/2019 2019/2020 2020/2021 2021/2022 2022/2023
Docente
BATTISTA BIGGIO (Tit.)
Periodo
Primo Semestre 
Modalità d'Erogazione
Convenzionale 
Lingua Insegnamento
INGLESE 



Informazioni aggiuntive

Corso Percorso CFU Durata(h)
[70/90]  COMPUTER ENGINEERING, CYBERSECURITY AND ARTIFICIAL INTELLIGENCE [90/00 - Ord. 2018]  PERCORSO COMUNE 5 50

Obiettivi

Obiettivi

L'obiettivo di questo corso è fornire agli studenti gli elementi fondamentali della sicurezza del machine learning nel contesto di diversi domini applicativi. Vengono presentati i concetti e i metodi principali della sicurezza delle tecniche di apprendimento automatico, dalla modellazione delle minacce agli attacchi e alle difese, nonché i metodi di base per valutare correttamente la robustezza di un modello di apprendimento automatico rispetto a diversi attacchi.

Risultati

Comprensione dei concetti e dei metodi fondamentali della sicurezza dell'apprendimento automatico e delle sue applicazioni. Capacità di analizzare e valutare attacchi e difese nel contesto di domini specifici dell'applicazione. Capacità di progettare e valutare modelli di machine learning con Python e testarli su dataset di benchmark.

Prerequisiti

Questo corso è rivolto a studenti laureati che abbiano già frequentato corsi di base (o abbiano una conoscenza di base/intermedia) di machine learning e intelligenza artificiale e abbiano una conoscenza base/intermedia dei linguaggi di programmazione (in particolare il linguaggio Python).

Contenuti

Parte 1: Sicurezza dell'apprendimento automatico

Introduzione alla sicurezza dell'apprendimento automatico: introduzione con esempi pratici di visione artificiale, biometria, soluzioni antispam e di rilevamento di malware.

Modelli di minacce e attacchi al machine learning. Modellazione di attacchi al machine learning. Il modello a due giocatori (l'attaccante e il classificatore). Livelli di conoscenza reciproca dei due giocatori (conoscenza perfetta, conoscenza limitata). Modelli di attacco contro il machine learning: attacchi di evasione, avvelenamento, backdoor e privacy. I concetti di security by design e security by obscurity.

Valutazione della sicurezza di algoritmi di machine learning. Valutazione delle vulnerabilità attraverso metodi formali e valutazioni empiriche. Valutazioni adattive e non adattive.

Progettazione di algoritmi di machine learning sicuri/robusti: 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.

Sessioni pratiche con Python. Sessioni pratiche sugli attacchi contro l'apprendimento automatico e le difese degli algoritmi di apprendimento automatico.

Parte 2: Intelligenza artificiale affidabile

Regolamentazione dell'IA: la legge europea sull'IA. Linee guida etiche europee per un'IA affidabile. Le normative dell'IA nel mondo.

Equità e privacy dell'apprendimento automatico: equità e minacce e difese legate alla privacy.

AI spiegabile: metodi di spiegabilità. Metodi globali e locali. Metodi model-specific e model-agnostic.

Sessioni pratiche con Python: lezioni pratiche su algoritmi di machine learning spiegabili/equi.

Metodi Didattici

Il corso prevede circa 30 ore di lezioni frontali e 20 ore di esercitazioni pratiche con Python.

Verifica dell'apprendimento

Valutazione scritta (1/3 del voto finale) e progetto Python (2/3 del voto finale).

Testi

A. Joseph, B. Nelson, B. Rubinstein, D. Tygar, Adversarial machine learning, Cambridge University Press, 2018

B. Biggio, F. Roli. Wild patterns: Ten years after the rise of adversarial machine learning. Pattern Recognition 84 (2018): 317-331.

Altre Informazioni

Lezioni. Il docente utilizzerà le diapositive. Le copie delle diapositive saranno fornite agli studenti.

Sessioni pratiche su attacchi e difese per machine learning utilizzando la libreria Python open source SecML per la valutazione della sicurezza di algoritmi di machine learning (https://github.com/pralab/secml). Il docente fornirà i Python notebook utilizzati per risolvere gli esercizi presentati.

Questionario e social

Condividi su:
Impostazioni cookie