Il corso segue un percorso concettuale che attraversa i principi fondamentali della disciplina ed è diviso in due parti: la prima parte costituisce un'introduzione alla logica formale, proposizionale e del primo ordine, con particolare attenzione al calcolo automatico, mentre la seconda parte costituisce un'introduzione a principi base dell'apprendimento automatico in una prospettiva probabilistica.
Prerequisiti
Conoscenze matematiche fondamentali, conoscenza pratica di almeno un linguaggio di programmazione.
Metodi didattici
Lezioni (ore/anno in aula): 45 Esercitazioni (ore/anno in aula): 0 Attività pratiche (ore/anno in aula): 0
Verifica Apprendimento
L'esame finale è un orale riguardante la teoria e la discussione degli esercizi pratici mostrati a lezione.
Testi
La pagina web del corso (http://vision.unipv.it/AI) contiene le presentazioni delle lezioni, letture ulteriori suggerite e link al software utilizzato per gli esercizi.
Contenuti
1) Logica classica e ragionamento simbolico automatico
Algebre di Boole Linguaggio logico e strutture semantiche: conseguenza logica Sistemi deduttivi per la logica proposizionale Problemi di decisione e decidibilità Predicati e relazioni: logica del primo ordine Semi-decidibilità della logica del primo ordine Risoluzione del primo ordine con unificazione
2) Apprendimento automatico
Logica e probabilità: rappresentazione o statistica Il linguaggio della probabilità: rappresentazione Inferenza Bayesiana Modelli grafici e calcolo automatico Apprendimento probabilistico supervisionato Apprendimento non supervisionato: K-means, algoritmo EM, dati mancanti. Modelli causali, probabilistici e strutturali. Reinforcement Learning.