- Artificial Intelligence
- Summary
Course Syllabus
Obiettivi
L’obiettivo del corso è quello di mettere in grado lo studente di padroneggiare conoscenze e strumenti di base necessari per affrontare la comprensione, l’utilizzo e la creazione di sistemi di Intelligenza Artificiale, insieme alle capacità di analizzare classi di problemi particolarmente adatti ad essere trattati con metodi e tecniche caratterizzanti della disciplina.
L'Intelligenza Artificiale si è sviluppata affrontando una vasta gamma di problemi, dall'elaborazione del linguaggio naturale alla gestione di agenti autonomi in ambitnti coperativi, ramificandosi cosi in un ampio insieme di approcci metodologici e discipline più specifiche quali la rappresentazione della conoscenza, i sistemi multi-agente, l'apprendimento automatico, la robotica, etc.. L'obiettivo più specifico di questo corso è pertanto duplice:
- fornire un quadro di insieme della disciplina incentrato sul concetto di agente intelligente, con l'obiettivo di mettere in condizione lo studente di inquadrare approcci metodologici diversi e discipline specifiche nell'ambito dello sviluppo di sistemi intelligenti.
- fornire un approfondimento su metodologie basate su rappresentazione ed apprendimento della conoscenza, con particolare attenzione all'integrazione di paradigmi simbolici basati sulla rappresentazione esplicita della conoscenza e paradigmi basati sull'apprendimento automatico, con l'obiettivo di fornire agli studenti competenze utili per realizzare basi di conoscenza e applicazioni finali risultanti dall'integrazione di questi due paradigmi.
Se da un lato si intende fornire un quadro di insieme, indicando anche relazioni con i contenuti forniti in altri corsi, dall'altro si intende fornire un insieme di strumenti teorici e pratici che caratterizzano già oggi applicazioni di rilievo dell'Intelligenza Artificiale in ambito sia scientifico che industriale (grafi di conoscenza, motori inferenziali, tecniche di embedding, natural language processing).
Infine, considerando le differenze ma anche sempre più strette relazioni tra ricerca scientifica e applicazioni industriali, il corso intende discutere dei limiti delle metodologie esistenti, sia dal punto di vista sicentifico, sia dal punto di vista delle applicazioni industriali, e delle conseguenti sfide per il futuro.
Contenuti sintetici
-
Introduzione all'IA e Agente come astrazione unificante per la disciplina
-
Rappresentazione della conoscenza e ragionamento automatico: come codificare conoscenza per supportare applicazioni robuste basate sulla sua elaborazione
-
Apprendimento di rappresentazioni dai dati con reti neurali profonde: alcuni principi e modelli di riferimento
-
Costruire basi di conoscenza da sorgenti esistenti combinando rappresentazione e apprendimento.
-
Verso l'integrazione profonda di rappresentazione della conoscenza, ragionamento e apprendimento: integrazione neuro-simbolica
Programma esteso
1. Introduzione: apprendimento e ragionamento nell'Intelligenza Artificiale; interpretazione, ragionamento, previsione, controllo; il concetto di agente autonomo (definizione, classificazione, comportamento, modelli di agenti con riflessi semplici, con memoria, basati su obiettivi, basati sull'utilità).
2. Rappresentazione della conoscenze e ragionamento automatico: grafi di conoscenza; ontologie e ragionamento automatico (RDFS, OWL); ragionamento basato su regole e ragionamento non monotono (datalog e answer set programming).
3. Apprendere rappresentazioni con reti neurali profonde: semantica distribuzionale; rappresentazioni in spazi vettoriali; apprendimento di rappresentazioni (knowledge graph embeddings, link prediction, allineamento tra rappresentazioni).
4. Introduzione alle tecniche per l'estrazione di conoscenza da documenti non strutturati: named entity recognition, entity linking, relation extraction.
5. Introduzione alle tecniche di integrazione neuro-simbolica: Logic Tensor Network e KENN.
Prerequisiti
Conoscenze logico-matematiche di base. Conoscenze di base su reti neurali.
Modalità didattica
Lezioni frontali ed esercitazioni con i personal computer degli studenti. Uso della piattaforma Moodle. Seminari su applicazioni reali da parte di experti del mondo dell'industria.
Il corso è tenuto in lingua Inglese.
Materiale didattico
Libri di testo (specific sections in):
Artificial Intelligence: a Modern Appraoch. S.J. Russell, P. Norvig, 4th Edition, Pearson, 2020.
Artificial Intelligence: Foundations of Computational Agents, second edition. Pool, D, and Mackworth, A. Cambridge University Press 2017.
Knowledge Graphs: Fundamentals, Techniques, and Applications. Kejriwal, Mayank, Craig A. Knoblock, and Pedro Szekely. MIT Press, 2021.
Materiale aggiuntivo fornito durante il corso (papers, slide, etc.)
More material provided during the course.
Periodo di erogazione dell'insegnamento
Semestre I
Modalità di verifica del profitto e valutazione
La valutazione finale è costituita dall'aggregazione dei punteggi ottenuti in due valutazioni indipendenti.
- La prima valutazione è basata su un progetto d'esame, effettuato individualmente o in gruppo, e finalizzato all'approfondimento di un argomento specifico trattato nel corso o collegato ad argomenti trattati nel corso; il progetto viene discusso attraverso una presentazione orale supportata da slide della durata di 20 min circa; è possibile, durante la presentazione, includere una breve demo del progetto svolto. La valutazione si basa su: significatività del progetto rispetto agli argomenti trattati nel corso, rigore metodologico (nei limiti di quanto ragionevole chiedere per un progetto d'esame); padronanza dell'argomento approfondito dimostrata durante la presentazione orale.
- La seconda valutazione è basata sulla verifica della conoscenza degli argomenti affrontati durante il corso mediante valutazione di esercizi (assignment) da completare individualmente e discussione orale. Gli assignment verranno valutati e discussi in sede d'esame, dopo la discussione del progetto.
Orario di ricevimento
Su richiesta.
Sustainable Development Goals
Aims
The aim of the course is to enable the student to master basic knowledge and tools necessary to understand, use and develop systems based on Artificial Intelligence (AI), together with the ability to analyze classes of problems particularly suitable for being treated with methods and techniques characterizing the discipline.
Artificial Intelligence has developed by addressing a wide range of problems, from natural language processing to coordination of autonomous agents, thus branching out into a broad set of methodological approaches and more specific disciplines such as knowledge representation, multi-agent systems, machine learning, robotics, etc .. The more specific objective of this course is therefore twofold:
- provide an integrated framework for the discipline based on the concept of intelligent agent, with the aim of enabling the student to frame different methodological approaches and specific disciplines in the context of the development of intelligent systems.
- provide an in-depth study of methodologies based on knowledge representation and learning, with particular attention to the integration of paradigms based on symbolic AI (knowledge representation and reasoning) and based on machine learning (especially based on deep neural networks), with the aim of providing students with skills useful for developing knowledge-based systems that integrate the two paradigms.
On the one hand, we intend to provide an overall picture about AI today, also indicating relationships with the contents provided in other courses; on the other hand, we intend to present specific models and techniques that are already essential building blocks of important applications of Artificial Intelligence in science and industry (knowledge graphs, inference engines, embeddings, natural language processing).
Finally, considering the differences but also increasingly close relationships between scientific research and industrial applications, the course intends to discuss the limits of existing methodologies, both from the scientific point of view and from the point of view of industrial applications, and the consequent challenges for the future of AI.
Contents
-
Introduction to modern AI and agents as unifying abstractions for intelligent systems
-
Knowledge representation and reasoning: how to encode knowledge so as to support robust downstream AI applications
-
Principles of representation learning with deep neaural networks: how to learn representations from data.
-
Building knowledge bases from unstructured data
-
Deep integration of representation, reasoning and learning: neuro-symbolic integration
Detailed program
1. Introduction: learning and reasoning in Artificial Intelligence; interpretation, reasoning, prevision and control; autonomous agents (definition, classification, behavior, agent-bases models with simple reflexes, with memory, goal-based and utility-based).
2. Knowledge representation and reasoning: knowledge graphs, reasoning with ontologies (RDFS, OWL); rule-based and non monotonic reasoning (datalog, Answer Set Programming).
3. Knowledge representation and deep learning: distributional semantics, representation in vector spaces; representation learning (knowledge graph embeddings, link prediction, alignment between representation spaces).
4. Introduction to information extraction from unstructured data: named entity recognition, entity linking, relation extraction.
5. Introduction to neuro-symbolic integration: Logic Tensor Network and KENN.
Prerequisites
Basic knowledge of logics and mathematics. Basic knowledge of machine learning.
Teaching form
Lectures and exercise with students' personal computers. Moodle e-learning platform. Seminars about applications by experts from the industry.
The course is teached in English.
Textbook and teaching resource
Textbooks (specific sections):
-
Artificial Intelligence: a Modern Appraoch. S.J. Russell, P. Norvig, 4th Edition, Pearson, 2020.
-
Artificial Intelligence: Foundations of Computational Agents, second edition. Pool, D, and Mackworth, A. Cambridge University Press 2017.
-
Knowledge Graphs: Fundamentals, Techniques, and Applications. Kejriwal, Mayank, Craig A. Knoblock, and Pedro Szekely. MIT Press, 2021.
More material provided during the course.
Semester
Semester I
Assessment method
The final evaluation consists of the aggregation of the scores obtained in two independent assessments:
- The first assessment is based on an exam-tailored project, carried out individually or in groups and aimed at bringing the student to have in-depth knowledge and/or hands-on experience of a specific topic covered in the course or linked to topics covered in the course; the project is discussed through an oral presentation supported by slides lasting about 20 minutes; it is possible, during the presentation, to include a short demo of the project. The evaluation is based on: significance of the project for the topics covered in the course, methodological soundness (within the limits of what is reasonable to ask for an exam project); mastery of the in-depth topic demonstrated during the oral presentation.
- The second assessment is based on the evaluation of the knowledge acquired by the student on the topics addressed during the course through the discussion of assignments that students must execute individually as homework. Assignments will be evaluated and discussed during the oral exam after the presentation of the project.
Office hours
On demand.