Questa funzione ti consente di visualizzare il tuo percorso formativo, se la tua immatricolazione è avvenuta in anni precedenti

Curricula per l'anno 2024 - Artificial Intelligence – Intelligenza Artificiale (32346)

Curriculum unico

1º anno

InsegnamentoSemestreCFUSSDLingua
10610050 | AUTONOMOUS SYSTEMS6ING-INF/05ENG

Obiettivi formativi

Presentation
The focus of this course is autonomous behavior, and more precisely, the different methods for developing "agents" capable of making their own decisions in real or simulated environments. This includes characters in video-games, robots, softbots in the web, etc. The problem of developing autonomous agents is a fundamental problem in Artificial Intelligence, where three basic approaches have been developed: the programmer-based approach, where the agent responses are hardwired by a human programmer; the learning-based approach, where the agent learns to control its behavior from experience or information obtained from a teacher, and the model-based approach, where the agent control is derived automatically from a model describing the goals, the actions available, and the sensing capabilities. In the course, we review the three approaches to developing autonomous systems, with emphasis on the model-based approach, which in AI goes under the name of planning. We study autonomy in dynamic, partially observable settings involving a single agent or multiple agents. The course involves theory and experimentation.
Associated skills
• E1) Apply the models and algorithms of autonomous systems to a problem of well-identified interactive intelligent systems. Specifically, models and algorithms for sequential decision making in reactive environments.
• E3) Identify new uses of models and algorithms in the field of interactive intelligent systems. Specifically, uses that lend themselves to a formulation as sequential decision making.
• E6) Present the result of a research project in the field of interactive intelligent systems in a scientific forum and in interaction with other researchers.
Learning outcomes
• Understand the mathematical principles that form the basis of autonomous systems.
• Solve complex problems using Artificial Intelligence techniques.
• Recognize the type of problem and select appropriate algorithms.
• Implement Artificial Intelligence algorithms in a common programming language.

10610049 | SYMBOLIC REASONING6ING-INF/05ENG

Obiettivi formativi

Presentation
Knowledge representation and reasoning are essential components of an intelligent system and are at the core of Artificial Intelligence research. The aim of this course is to provide the students with several computational concepts and tools that have been developed in logic programming to support symbolic reasoning. The material covered in the course will interleave the computational concepts of logic programming with applications of the concepts in knowledge representation and problem solving. The students will have the opportunity to learn the general framework of Answer Set Programming (ASP) that interprets logic programs under the Answer Set Semantics to solve tasks such as (1) Defeasible reasoning, (2) Solving combinatorial problems, (3) Solving optimization problems using preferences, and (4) Reasoning about actions and change, The course will conclude by introducing basic notions of abduction and induction in ASP as alternative framework to statistical machine learning to do symbolic learning. Students will have the opportunity to put into practice the topics learned in class by solving simple problems using an ASP environment and an Inductive Learning system that learns ASP programs.
Associated skills
• That students have and understand knowledge that provides a basis or opportunity to be original in the development and/or application of ideas, often in a research context.
• That students are able to integrate knowledge and face the complexity of making judgments from information that, being incomplete or limited, includes reflections on the social and ethical responsibilities linked to the application of its knowledge and judgments.
• That students possess the learning skills that allow them to continue studying in a way that will be largely self-directed or autonomous.
• Applying with flexibility and creativity the acquired knowledge and adapting it to new contexts and situations.
Learning outcomes
Write ASP programs that use constraints and choice operators
Represent and solve NP-hard combinatorial problems in ASP
Solve optimisation problems using preferences
Model complex planning environments using logic-based action description languages
Translate these planning environments into ASP programming to solve different types of planning tasks
Write specifications of Inductive Learning tasks and implement them in an Inductive Learning system

10611120 | INTRODUCTION TO MACHINE LEARNING AND REINFORCEMENT LEARNING12ING-INF/04ENG

Obiettivi formativi

Basic Competences:
• That students have and understand knowledge that provides a basis or opportunity to be original in the development and/or application of ideas, often in a research context.
• That students are able to integrate knowledge and face the complexity of making judgments from information that, being incomplete or limited, includes reflections on the social and ethical responsibilities linked to the application of its knowledge and judgments.
• That students possess the learning skills that allow them to continue studying in a way that will be largely self-directed or autonomous.
Transversal Competences
• Applying with flexibility and creativity the acquired knowledge and adapting it to new contexts and situations. Specific Competences
• Solve mathematical problems related to machine learning and apply the knowledge to different forms of learning (supervised, unsupervised, Bayesian machine learning).
• Ability to communicate effectively using the technical vocabulary of the field in English.
• Use techniques of calculus and linear algebra applied to machine learning by means of existing software packages. • Apply machine learning to realistic problems in order to learn appropriate models.
• Identify machine learning problems and select the appropriate algorithm for solving them.
• Understand the knowledge that provides a basis or opportunity to be original in the development and / or application of ideas, often in a research context.
• That students know how to apply the knowledge acquired and their ability to solve problems in novel or poorly known environments within broader (or multidisciplinary) contexts related to their area of study.
• That students have the learning skills that allow them to continue studying in a way that will need to be largely self directed or autonomous.

Learning outcomes
• Understand the mathematical principles that form the basis of machine learning.
• Solve basic mathematical exercises related to machine learning theory.
• Recognize the type of learning problem and select appropriate algorithms.
• Implement machine learning algorithms in a common programming language and test them on actual learning problems.
• Evaluate and interpret the outcome of learning on a given problem and compare the outcome for different algorithms.
• Select appropriate values of hyper-parameters through validation.
Apply models and algorithms for sequential decision making in reactive environments.
Solves problems related to RL.
Identifies the appropriate models and algorithms to solve a specific problem in the field of RL
Evaluates the result of applying a model or algorithm to a specific problem.
Presents the result of the application of a model or algorithm to a specific problem according to scientific standards.
Identify new uses of models and algorithms in the field of RL. Specifically, uses that lend themselves to a formulation as sequential decision making.
Recognizes the intentional domain of application of a model or algorithm in the field of reinforcement learning.
Describes limitations of a given model or algorithm for a new problem.
Identifies parallels in problems in the field of RL.
Transfers the solution of a specific problem in the field of interactive intelligent systems to a similar problem.
Present the result of a research project in the field of RL in a scientific forum and in interaction with other researchers.
Organizes and conducts an oral presentation of a research paper according to the rules of the discipline.
Carries out a scientific argument and convincingly defends scientific work in front of an expert and non-expert public

10610047 | NATURAL LANGUAGE INTERACTION6ING-INF/05ENG

Obiettivi formativi

Presentation
The course covers the central themes involved in the interaction with intelligent agents through the use of natural language, with emphasis on dialogue and language generation. We will also study planning techniques applied to the theory of speech acts and the use of rhetorical structures, both for controlled dialogues as for dynamic and non-cooperative dialogues. Regarding analysis and generation of language, students will learn robust and incremental techniques capable of dealing with partial, and even ungrammatical discourse, as it's typical of spontaneous dialogues. We will also look at the design of dialogue architectures, and analyze the use of dialogue in "chatbots" and videogames. The course also covers spoken interaction including aspects on automatic speech recognition, automatic speaker recognition, and text-to-speech synthesis.
Associated skills
The course contributes to the basic and advanced skills and expertise acquired during the master studies on Intelligent Interactive Systems:
• The capacity to collect and interpret relevant data in the area of Computer Science and Artificial Intelligence in general and Natural Language-based Human-Computer Interaction in particular in order to be able to assess and comment on relevant topics from the scientific, ethical and social points of view.
• The capacity to communicate information, ideas, problems and solutions in the area of Natural Language-based Interaction to general public and NLP scholars alike.
• The capacity to apply the acquired skills in order to build operational conversational agent prototypes.
Furthermore, the course contributes to transversal skills related to
CE1. Solving the mathematical problems which can be set out in the rise in engineering and applying the knowledge on: linear algebra; differential and integral calculus; numerical methods, numerical algorithms, statistics, and optimization.
CE8. Mastering the concepts of data programming and programming and data structures, including principles of secure design and defensive programming, program verification and error detection.
CE10. Recognizing basic algorithmic procedures and applying them for the resolution of computational problems, analyzing the solutions suitability and complexity.
CE11. Solving complex computational problems using the principles and techniques of intelligent systems. Learning outcomes
It is expected that the students will obtain knowledge about state-of-the-art NLP techniques and acquire the skills to both integrate publicly available off-the-shelf modules into applications and develop on their own simple applications that use state-of-the-art techniques. In particular:
RA.CE1.5 Using knowledge of statistics to solve problems which can be set out in engineering.
RA.CE8.3 Designing and using advanced data structures and the most proper suitable algorithms for solving aproblem.
RA.CE10.3 Applying basic techniques of artificial intelligence.
RA.CE11.2 Solving complex problems using machine learning techniques.
RA.CE11.3 Applying advanced intelligent computation techniques for the design and development of intelligent applications.

A SCELTA DELLO STUDENTE6ENG

Obiettivi formativi

Fra le altre attività formative sono previsti 12 CFU sono a scelta dello studente.

Gruppo opzionale Attività Caratterizzanti (Tipo B)
Gruppo opzionale Attività Affini (Tipo C)

2º anno

InsegnamentoSemestreCFUSSDLingua
A SCELTA DELLO STUDENTE6ENG

Obiettivi formativi

Fra le altre attività formative sono previsti 12 CFU sono a scelta dello studente.

AAF1028 | PROVA FINALE30ENG

Obiettivi formativi

La prova finale consiste nella presentazione e discussione di un attività progettuale e di una relazione, supervisionata da un docente, nella quale lo studente dimostra di aver raggiunto una padronanza delle metodologie proprie dell'Ingegneria Informatica e/o della loro applicazione.

Gruppo opzionale Attività Caratterizzanti (Tipo B)
Gruppo opzionale Attività Affini (Tipo C)
Gruppo opzionale AAF

Gruppi opzionali

Lo studente deve acquisire 24 CFU fra i seguenti esami
InsegnamentoAnnoSemestreCFUSSDLingua
10610046 | HUMAN-ROBOT INTERACTION6ING-INF/05ENG

Obiettivi formativi

Contents
The main content of the course is summarized below.
Introduction to HCI and HRI
Human factors and engineering design
Interface design, usability evaluation, universal design, multimodal interfaces (touch, vision, natural language and 3-D audio)
Virtual reality and spatial displays
Embodiment and anthropomorphism
Perception of human behavior
Multimodal interaction
HCI and HRI applications
User studies and evaluation methods
Ethical and social implications of HMI

Associated skills
Knowledge and understanding:
The course offers an overview of different research topics in HCI and HRI and, more specifically, in using Artificial Intelligence techniques to model and reason about human-machine interaction tasks. Techniques for requirement collection and analysis, goal and task models, interaction and system models, multimodal and personalized interactions, methods for usability evaluation will be examined. Some advanced issues in HCI and HRI, such as cooperative systems, immersive and ubiquitous environments, intelligent interfaces, social interactions, etc., will also be addressed. The topics are covered by researchers in the field who will introduce the student to research problems and recent and relevant applications in HCI, HRI and AI.
Applied knowledge and understanding:
The course provides the knowledge necessary to undertake research work in these fields using practical tools for experimental validation, including understanding the concepts of HMI and usability, conducting a research project of an interactive interactive system following the UCD methodology, and reporting the results according to scientific standards.
Critical and judgment skills:
The course proposes advanced methods to study, understand and apply results reported on scientific articles, and integrate these results to create innovative HCI, HRI and AI applications. The student learns how to use results from the literature as a basis for new research and how to evaluate the usability of an interactive system and its adequacy with respect to the goals and tasks of end users and stakeholders.
Communication skills:
Group activities in the classroom and the need to make presentations to the class allow the student to develop the ability to communicate and share the knowledge acquired and to compare themselves with others on the topics of the course. In particular, the project activities and the course homeworks allow the student to be able to collaborate in the design and development of an interactive system.
Learning ability:
In addition to the classic learning skills provided by the theoretical study of the teaching material, the course develops methods to stimulate the student to deepen his knowledge of some of the topics she presents to the course and to the work group. Furthermore the course stimulates the student to effectively apply both the concepts and the techniques learned during the course in homeworks and in a research project.

Learning outcomes
Understand motivations, opportunities and limits of HMI applications
Identify the appropriate models and algorithms to solve a specific HMI problem
Evaluate the performance of HMI systems
Present the result of an HMI study according to scientific standards.
Describe limitations of a given HMI solution
Organize and conduct an oral presentation of a research paper
Develop a research project in HMI and AI and present the results

10600392 | ARTIFICIAL INTELLIGENCE6ING-INF/05ENG

Obiettivi formativi

Obiettivi generali:

Conoscere i principi di base dell'intelligenza artificiale, in particolare la modellazione di sistema intelligente tramite la nozione di agente intelligente.
Conoscere le tecniche di base dell'Intelligenza Artificiale con particolare riferimento alla manipolazione di simboli e, più in generale, a modelli discreti.
Conoscere i principi fondamentali della interazione tra agenti intelligenti ed in particolare tra agente intelligente e uomo, attraverso il linguaggio parlato.

Obiettivi specifici:

Conoscenza e comprensione:
Metodi di ricerca automatica nello spazio degli stati: metodi generali, metodi basati su euristiche, ricerca locale.Rappresentazioni fattorizzate: problemi di soddisfacimento di vincoli, modelli di pianificazione.
Rappresentazione della conoscenza attraverso sistemi formali: logica proposizionale, logica del primo ordine, cenni alle logiche descrittive ad alle forme di ragionamento non monotono. Uso della logica come linguaggio di programmazione: PROLOG.
Cooperazione e coordinamento tra agenti intelligenti, distribuzione di compiti, soddisfacimento distribuito di vincoli, analisi lessicale, sintattica e semantica del linguaggio parlato.

Applicare conoscenza e comprensione:
Modellazione di problemi con i diversi metodi di rappresentazione acquisiti.
Analisi del comportamento degli algoritmi di ragionamento di base.
Progetto e realizzazione di sistemi per l'interazione tra molti agenti.

Capacità critiche e di giudizio:
Essere in grado di valutare la qualità di un modello di rappresentazione di un problema e dei risultati ottenuti applicando su di esso tecniche di ragionamento automatico.
Analisi e valutazione degli elementi salienti della interazione tra molti agenti.

Capacità comunicative:
Le capacità di comunicazione orale dello studente vengono stimolate attraverso l'interazione durante le lezioni tradizionali mentre le capacità espositive nello scritto vengono sviluppate attraverso la discussione di esercizi e delle domande a risposta aperta previste nelle prove di esame.
Le capacità comunicative vengono infine consolidate attraverso la presentazione di un progetto, realizzato anche in gruppo, e del report scritto ad esso associato.

Capacità di apprendimento:
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico, attraverso gli esercizi relativi all'applicazione dei modelli appresi, il corso contribuisce a sviluppare le capacità di risoluzione di problemi dello studente.
Il progetto e realizzazione di un prototipo di sistema di interazione contribuiscono all'apprendimento della capacità di lavorare in gruppo.

1023325 | VISION AND PERCEPTION6ING-INF/05ENG

Obiettivi formativi

OBIETTIVI GENERALI
Il corso vuole introdurre lo studente ai concetti fondamentali della visione artificiale e alla costruzione di sistemi autonomi di interpretazione e ricostruzione di una scena tramite immagini e video. Il corso affronta elementi di base di geometria proiettiva ed epipolare, i metodi per la visione 3d e per la visione basata su più viste, e i metodi per la ricostruzione metrica e le metodologie di interpretazione di immagini e video. Inoltre il corso illustra le tecniche principali per il riconoscimento e la segmentazione di immagini e video basati sull’ apprendimento automatico.

OBIETTIVI SPECIFICI

Conoscenza e Comprensione
Il corso stimola la curiosità degli studenti verso nuove metodologie per l’analisi e la generazioni di immagini
e di video. Lo studente apprende nuovi concetti che gli permettono di acquisire una conoscenza di base della
visione computazionale.

Applicare Conoscenza e Comprensione
Gli studenti approfondiscono e apprendono linguaggi di programmazione per applicare la conoscenza acquisita.
In particolare approfondiscono il linguaggio Python ed apprendono Tensorflow. Quest’ ultimo offre agli studenti
la possibilità di programmare applicazioni di deep learning. Usano questa nuovissima tecnologia per realizzare
un progetto di riconoscimento di elementi specifici in immagini e video.

Capacità critiche e di Giudizio
Lo studente acquisisce la capacità di distinguere tra ciò che può realizzare con gli strumenti che ha appreso,
come ad esempio generare delle immagini o riconoscere degli oggetti usando tecniche di deep learning,
e ciò che è effettivamente richiesto per la realizzazione di un sistema automatico di visione.
In tal modo è in grado di elaborare un giudizio critico sui sistemi di visione disponibili allo stato
dell’arte e di valutare ciò che si può effettivamente realizzare e ciò che richiede ulteriori avanzamenti
nella ricerca.

Capacità Comunicative
La realizzazione del progetto, come parte del programma di esame, richiede che lo studente lavori e dia un
contributo all’ interno di un piccolo gruppo di lavoro. Questo insieme alla soluzione di esercizi in classe,
e alle discussioni sui temi più interessanti stimola le capacità comunicative dello studente.

Capacità di Apprendimento
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico,
le modalità di svolgimento del corso, in particolare le attività progettuali, stimolano lo studente
all'approfondimento autonomo di alcuni argomenti presentati nel corso, al lavoro di gruppo, e all'applicazione
concreta delle nozioni e delle tecniche apprese durante il corso.

1044398 | INTERACTIVE GRAPHICS6ING-INF/05ENG

Obiettivi formativi

Obiettivi generali:

Far acquisire allo studente le basi della programmazione in grafica 3D con particolare enfasi sulle tecniche di animazione e visualizzazione interattiva. In particolare gli argomenti trattati includono: Fondamenti della grafica computerizzata, rendering interattivo e animazione, la pipeline grafica, trasformazioni, visualizzazioni, rasterizzazione, illuminazione e shading, texture-mapping, tecniche di animazione basate su keyframes, simulazioni fisiche, sistemi di particelle ed animazione di personaggi. Verrà inoltre fornita un’introduzione alla computazione su hardware specializzato per la grafica (GPGU).

Obiettivi specifici:

Far acquisire allo studente familiarità con le tecniche matematiche alla base della grafica 3D, oltre che la capacità di programmare ambienti complessi ed interattivi in grafica 3D usando la libreria OpenGL o una delle sue varianti

Conoscenza e comprensione:

Approfondimento del funzionamento di un sistema per la grafica 3D nelle sue componenti hardware e software. Conoscenza dello standard HTML5 e del linguaggio Javascript, applicazione della libreria WebGL e di alcune librerie di più alto livello. Comprensione delle problematiche di efficienza e qualità visiva delle applicazioni in grafica 3D

Applicare conoscenza e comprensione:

Sviluppo di applicazioni interattive sul web in grafica 3D.

Capacità critiche e di giudizio:

Capacità di comprendere le complessità tecniche nella realizzazione di applicazioni interattive in grafica 3D. Capacità di analisi critica delle soluzioni presenti sul mercato ed analisi di punti di forza e debolezza.

10610045 | MACHINE LEARNING IN PRACTICE6ING-INF/05ENG

Obiettivi formativi

Aims
At the end of this course, the student is able to
reason and argue about what type of algorithms and efficient source code to be developed and applied when tackling real-life machine learning tasks;
understand the principles underlying effective machine learning methods;
use and adapt state-of-the-art machine learning algorithms to tackle a challenge;
properly evaluate a machine learning algorithm's performance in a real-life context.

Content
Machine learning addresses the fundamental problem of developing computer algorithms that can harness the vast amounts of digital data available in the 21st century and then use this data in an intelligent way to solve a variety of real-world problems. Examples of such problems are recommender systems, (neuro) image analysis, intrusion detection, spam filtering, automated reasoning, systems biology, medical diagnosis, speech analysis, and many more. The goal of this course is to learn how to tackle specific real-life problems through the selection and application of state-of-the-art machine learning algorithms, notably by entering international machine learning competitions organized at Kaggle.

10610044 | NATURAL COMPUTING6ING-INF/05ENG

Obiettivi formativi

Aims
On completion of the course students should be able to:
Outline core Natural Computing approaches and algorithms
Compare and contrast different Natural Computing approaches
Solve optimization problems using Natural Computing methods
Design an experiment in Natural Computing
Perform simple simulations of biological systems
Write an academic paper on this subject

Content
The field of Natural Computing concerns the development of algorithms inspired by Nature, including Biological, Social and Physical systems. These algorithms draw metaphorical inspiration from various aspects of nature, including the operation of biological neurons, processes of evolution, and models of social interaction amongst organizations. They are used to tackle complex real-world problems. This course provides a description of core Natural Computing approaches, like evolutionary algorithms, immunocomputing and cellular automata, which can be used by the students to tackle a real-world problem.

10610043 | PHYSICAL ASPECTS ON SECURE SYSTEMS6ING-INF/05ENG

Obiettivi formativi

Aims
At the end of the course students can:
• understand the vulnerabilities and adversarial models for embedded (crypto) devices, and explain the objectives for protecting those devices against implementation attacks
• explain currently known attacks on small devices and associated countermeasures;
• carry out side-channel and fault injection attacks on smartcards i.e. microcontrollers.
• use statistics and machine learning techniques when performing the attacks

Content
Our daily business relies on the devices we carry on us, such as bank, ID and transportation cards, car keys, and mobile phones. All those devices use secret (cryptographic) keys that are not accessible from the outside. Getting a hold of the key allows a hacker to steal our data or take control of a self-driving car or a pacemaker.
The majority of real-world attacks on security implementations use side-channel analysis, i.e., they measure and process physical quantities, like the power consumption or electromagnetic emanations of a chip, or reaction time of a process. Preventing this kind of leakages and side-channel attacks in general remains a great challenge as effective mitigations are often prohibitively expensive in terms of power and energy resources.

This course treats security aspects of embedded cryptographic device, including hardware and software, certification and security evaluation and the security objectives these are meant to provide, and attack techniques and countermeasures, especially side-channel and fault attacks.
We cover all implementation attacks on embedded systems, including state of the art methods using machine/deep learning and fault injection.

The course includes practical lab assignments where students perform the attacks on physical targets.

10610042 | APPLIED CRYPTOGRAPHY6ING-INF/05ENG

Obiettivi formativi

Aims
After the course, the student should understand the ideas and workings of public and secret-key cryptography in the IT security sector.

Content
The course covers the following topics:
Symmetric cryptography: encryption, authentication, hashing, ...
Public key cryptography and post-quantum cryptography: encryption, signatures, KEMS, ...
Security notions like existential forgery, IND-CCA, zero-knowledge, etc.
Security proofs
Protocols, like challenge-response protocols, proofs of knowledge, etc.
Real-world protocols, like TLS, secure messaging, etc.

10610171 | BIG DATA6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
Introduction to big data. Characteristics of big data. Big data and data science. Relational databases and big data. Distributed data systems. Hadoop ecosystem.
Big data management. Structured and semi-structured data models. Non-relational (NoSQL) data models. Data models and database systems for big data. Domain-specific languages for big data. Monitoring big data systems.
Big data processing. Querying and retrieval.
Paradigms for computing with data. Processing pipelines and aggregators. Basic algorithmic building blocks and patterns. Hadoop. Spark.
Data analytics with big data. Data analytics tools. Basic statistics. Clustering. Associations. Predictive modeling. Spark machine learning library MLib.
Big data and graph analytics. NoSQL graph databases for big data. Neo4j graph database. Graph querying with CYPHER. Basic graph analytics with Neo4j and CYPHER.
Practical aspects of big data analytics. Processing heterogeneous data. Processing data streams.

10610172 | NATURAL LANGUAGE PROCESSING6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
The syllabus is based on a selection of modern statistical natural learning techniques and their practical use. The lectures introduce the main tasks and techniques, explain their operation and theoretical background. During practical sessions and seminars the gained knowledge is applied to language practical task using open source tools. Student investigate and solve assignments, based on real-world research and commercial problems form English and Slovene languages.
Introduction to natural language processing: motivation, language understanding, Turing test, traditional and statistical approaches.
Language resources: corpuses, dictionaries, thesauruses, networks and semantic data bases, overview of tools.
Linguistics: phonology and morphology, syntactical analysis, formal grammars.
Using automata and grammars: automata and algorithms for searching strings, syntax parsing, dependency parsing.
Part-of-speech tagging: types of tags, lemmatization, ngrams, Hidden Markov model, rule-based tagging.
Computational and lexical semantics: semantic representations, rule-to-rule approaches, semantic role labelling.
Clustering words and text similarity measures: cosine distance, language networks and graphs, WordNet, vector representation, vector weighting, sematic correlation.
Text mining: adaptation of classification methods to the specifics of text, support vector machines for language, feature selection.
Deep networks for text: document representations for deep neural networks, autoencoders, recurrent neural networks.
Text summarization: text representations, matrix factorization, multi-document summarization, extractive methods, query based methods.
Machine translation: language model, translation model, alignment model, challenges in machine translation.
Augmenting text with other data sources: heterogeneous networks, word2vec representation, heterogeneous ensembles of classifiers, link analysis.
Methodology and evaluation in NLP.

10610041 | MACHINE LEARNING FOR DATA SCIENCE I6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
Linear models. Linear regression. Linear discriminant analysis. Logistic regression. Gradient descent. Stochastic gradient descent.
The machine learning approach. Cost functions. Empirical risk minimization. Maximum likelihood estimation. Model evaluation. Cross-validation.
Feature selection. Search-based feature selection. Regularization.
Tree-based models. Decision trees. Random forest. Bagging. Gradient tree boosting.
Clustering. k-means. Expectation Maximization.
Non-linear regression. Basis functions. Splines. Support vector machines. Kernel trick.
Neural networks. Perceptron. Activation functions. Backpropagation.

10610040 | DATA SCIENCE PROJECT6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
Students select project theme and work in groups to complete the project. Students present their midterm progress and results. Students complete the Project with a public presentation of their work.
Project themes are compiled by the lecturer from proposals by faculty members and industry.

Perez-Riverol Y, Gatto L, Wang R, Sachsenberg T, Uszkoreit J, Leprevost FdV, et al. (2016) Ten Simple Rules for Taking Advantage of Git and GitHub. PLoS Comput Biol 12(7): e1004947.
Sandve GK, Nekrutenko A, Taylor J, Hovig E (2013) Ten Simple Rules for Reproducible Computational Research. PLoS Comput Biol 9(10): e1003285.
Vicens Q, Bourne PE (2007) Ten Simple Rules for a Successful Collaboration. PLoS Comput Biol 3(3): e44.
Taschuk M, Wilson G (2017) Ten simple rules for making research software more robust. PLoS Comput Biol 13(4): e1005412.
Bourne PE (2007) Ten Simple Rules for Making Good Oral Presentations. PLoS Comput Biol 3(4): e77.

10610031 | PROBABILISTIC GRAPHICAL MODELS6ING-INF/05ENG

Obiettivi formativi

Presentation
Structured probabilistic models also known as probabilistic graphical models (PGMs) are powerful modeling tools for reasoning and decision making with uncertainty. PGMs have many application domains, including artificial vision, natural language processing, efficient coding, and computational biology. PGMs connect graph theory and probability theory and provide a flexible framework for modeling large collections of random variables with complex interactions.
This is an introductory course to PGMs focused on two main axes: (1) the role of PGMs as a unifying language in machine learning, which allows for a natural specification of many problematic domains with inherent uncertainty, and (2) the set of
computational tools for probabilistic inference (such as making predictions to aid decision making) and learning (estimating the structure of the graph and its parameters from data).
Associated skills
Basic skills
Understand the knowledge that provides a basis or opportunity to be original in the development and / or application of ideas, often in a research context.
That students know how to apply the knowledge acquired and their ability to solve problems in novel or poorly known environments within broader (or multidisciplinary) contexts related to their area of study.
That students are able to integrate knowledge and face the complexity of making judgments based on information that, being incomplete or limited, includes reflections on social and ethical responsibilities linked to the application of their knowledge and judgments.
That students have the learning skills that allow them to continue studying in a way that will need to be largely self- directed or autonomous.

Specific skills
E1) Apply the models and algorithms of machine learning, autonomous systems, interaction in natural language, mobile robotics and / or web intelligence to a problem of well-identified interactive intelligent systems. Specifically, models and algorithms for inference and learning in structured graphical models.
E3) Identify new uses of models and algorithms in the field of interactive intelligent systems. Specifically, uses for which structured graphical models are appropriate
E6) Present the result of a research project in the field of interactive intelligent systems in a scientific forum and in interaction with other researchers.
Learning outcomes
E1)
• Solves problems related to interactive intelligent systems.
Identifies the appropriate models and algorithms to solve a specific problem in the field of interactive intelligentsystems.
• Evaluates the result of applying a model or algorithm to a specific problem.
• Presents the result of the application of a model or algorithm to a specific problem according to scientific standards.
E3)
• Recognizes the intentional domain of application of a model or algorithm in the field of interactive intelligent systems.
• Describes limitations of a given model or algorithm for a new problem.
• Identifies parallels in problems in the field of interactive intelligent systems.
• Transfers the solution of a specific problem in the field of interactive intelligent systems to a similar problem.
E6)
• Organizes and conducts an oral presentation of a research paper according to the rules of the discipline
• Carries out a scientific argument and convincingly defend scientific work in front of an expert and non-expert public.

10610028 | ADVANCED TOPICS ON INTELLIGENT SYSTEMS6ING-INF/05ENG

Obiettivi formativi

Presentation and Associated Skills
The idea behind this course is to treat a topic within the broad field of intelligent systems in-depth. The topic may vary over the years, but it will be a topic that is highly relevant and important and one that is an active area of research within the Artificial Intelligence and Machine Learning research group at the DTIC, including Automated planning, Interactive machine learning, Learning theory, Probabilistic graphical models, Autonomous robotics, and Constraint satisfaction problems.
Content
Topics covered in the course include:
Stateful and stateless tracking (cookies, super-cookies, browser fingerprinting, ID-based tracking, cookie syncing);
Same-Origin Policy and cookie attributes;
Personal data exfiltration (email addresses, passwords, etc.);
Tracking on mobile and IoT (apps, platforms, smart TVs and other connected devices);
Behavioral advertising, microtargeting, and dark patterns;
Countermeasures against online tracking;
Tools and techniques for analyzing online tracking (DevTools, Tracker Radar Collector, OpenWPM, Selenium, Playwright, Puppeteer);
Privacy-preserving analytics, telemetry, and advertising (RAPPOR, Prio, Local Differential Privacy);
This internship is part of the training as a scientific researcher: in this Research Internship the student will participate in a research project in one of our scientific groups, or participate in research at another institute, in industry, in one of the associated partners of the Master programme, or even abroad.
A goal of the research internship is to gain experience in your future work field, in academia or in industry. It also gives the student the opportunity to find out about a prospective work environment, and some experience in carrying out a larger individual project as preparation for the Master thesis.
Depending on the students interests, the research internship can be done internally in one of the research groups of the DTIC department or externally at some company or organization in industry or the public sector. The research internship can also be done in an academic setting outside the DTIC, for instance in a research group in another faculty of UPF, or at another university altogether.
Learning Outcomes
at the end of the course students understand key online tracking mechanisms; can audit websites, mobile applications and IoT devices to identify tracking and data collection practices; understand the privacy and security implications of online tracking; understand how countermeasures against online tracking works; can explain how privacy-preserving telemetry and client-side data collection works.

Upon completion of the internship, the student will be able to
take part in scientific research in the specific area of the students’ master’s specialization: get acquainted with the subject and state of the art, apply appropriate methods, discuss, contribute to research results, relate the activities to current developments in the field;
present their activities and research outcomes of the internship;
reflect on the development of their research skills and the role of research in their future career.
Content
Unlike for the Master thesis, the internship need not be a completely independent and stand-alone research project. The aim of the internship is to get some practical experience in carrying out (practical or academic) research, so this can be as part of a team and in collaboration with others. The specific topic can take different forms, e.g. doing a case study, trying out tools & techniques, developing tools or prototypes, or a combination of this.
This includes finding a suitable research group and/or project, so this is best done in advance. Normally, you will carry out your research within one of the ICIS groups involved in your master’s specialization. It is also possible, however, to arrange an In any case, your choice of location and research project needs to be approved by the (assistant/associate) professor or the lecturer who will be your supervisor. The primary point of contact for the research internship (besides whoever acts as supervisor of your research internship project) is the coordinator of your master’s specialization.

10610027 | CRITICAL DATA ANALYSIS6ING-INF/05ENG

Obiettivi formativi

Presentation
Critical Data Studies is an interdisciplinary subject offered by professors from three disciplines: computing, philosophy, and law.
The course seeks to train students in addressing issues of personal data protection, as well as those arising from two broad applications of intelligent systems: data-driven decision support, and automated decision making.
About half of the sessions cover computing technologies for, e.g., anonymizing data, or detecting and mitigating algorithmic bias. The other half of the sessions study different conceptualizations of power around data processing pipelines, analyze bias and discrimination in computer systems from a moral philosophy perspective, and overview the relevant legal frameworks for data processing.
The course includes 12 theory sessions for delivering and discussing the main concepts and methods. Optionally, students can attend 6 seminar sessions for case studies, not graded, and 6 practice sessions to receive help in the data analysis assignments. The evaluation will be done on the basis of a mid-term exam and a final exam (about the theory part), assignments (data analysis), and a report (algorithmic audit project.
The scope of the course are issues of fairness, accountability, transparency in data processing from an ethical, legal, and technological perspective.
1. Personal data processing: privacy, confidentiality, surveillance, recourse, data collection and power differentials
2. Data-driven decision support: biases and transparency in data processing, data-rich communication, and data visualization
3. Automated decision making: conceptualizations of power and discrimination in scenarios with different degrees of automation.
4. External algorithmic auditing in practice: data collection, metrics definition, metric boundaries, reporting.
Associated skills
CB8. That the students are able to integrate knowledge and face the complexity of making judgments on the basis of information that is incomplete or limited, including reflecting about the social and ethical responsibilities associated with the application of their knowledge and judgment.
CE1. Apply models and algorithms in machine learning, autonomous systems, natural language interaction, mobile robotics and/or web intelligence to a well-identified problem of intelligent systems.
Learning outcomes
E1) 1. Solves problems related to interactive intelligent systems. Specifically, students can solve the problem of detecting an mitigating biases in such a system.
2. Identifies the appropriate models and algorithms to solve a specific problem in the field of interactive intelligent systems. Specifically, students can identify data processing methods to reduce disclosure risk and to mitigate biases.
3. Evaluates the result of applying a model or algorithm to a specific problem. Specifically, students can use standard metrics of algorithmic fairness, and at the same time understand the limitations of such metrics.
4. Presents the result of the application of a model or algorithm to a specific problem according to scientific standards. Specifically, students can present in written the results of an external audit (without the collaboration of the auditee), performed over an existing dataset or an existing online service.

Sustainable Development Goals
• SDG5 - Gender equality
• SDG10 - Reduced inequalities

1052222 | PLANNING AND REASONING6ING-INF/05ENG

Obiettivi formativi

Questo corso introduce i concetti relativi alla pianificazione automatica e ai
meccanismi di ragionamento logico dell'intelligenza artificiale. Lo scopo del
corso e' quello di permettere allo studente di usare i sistemi esistenti di
pianificazione automatica e di capire i loro meccanismi interni, in modo da
poterli sfruttare nel modo migliore ed eventualmente estendere a fronte di
problemi specifici. Inoltre, lo studente verrà messo in condizione di
comprendere i fondamenti teorici alla base dei meccanismi di ragionamento
logico usati in intelligenza artificiale.

10610026 | HARDWARE FOR SECURITY6ING-INF/05ENG

Obiettivi formativi

Aims
At the end of the course the student will be able to:

- explain the principles and techniques used to secure embedded devices
- identify hardware components on a commercial off the shelf product
- analyze a random number generator implementation
- implement a dedicated crypto core implementation on an FPGA platform
- discuss trade-offs and design explorations of cryptographic implementations on various platforms such as microcontrollers, ASICs, FPGAs, etc.

Content
In this course we explore the role hardware plays in securing embedded systems. We identify the typical components available in a wide range of Commercial off the shelf (COTS) products such as gaming consoles, IP cameras, routers and diverse IoT devices and explore the role of memories and interfacing.

Next, we contrast the architecture for COTS products with that of high-end security devices and we zoom-in and examine components that are typically present in high-end security devices such as true random number generators, physically unclonable functions and dedicated crypto co-processors.

This is a course for students interested in hardware and software design in industry i.e. real-world security applications. The course is devoted to the state-of-art technologies in cryptographic hardware and embedded systems.

10610025 | SECURITY IN ORGANIZATIONS6ING-INF/05ENG

Obiettivi formativi

Aims
Learn to control information security risks within an organization in an holistic fashion (procedural, organizational and technical).
Getting familiar with the leading standards in this area, their shortcomings and practical implementation guidelines.
To learn to map policies to technical countermeasures and vice versa.
To learn how to write and enforce security policies.
To learn some basic techniques in security auditing.
Getting an idea of the practical aspects of information security and new directions.

Content
Information security deals with the preservation of the confidentiality, integrity and availability of information. The leading standard on information security is ISO 27001 that defines the notion of a Information Security Management System (ISMS). This is a means for the management of an organization to be in control of the information security risks. Fundamental within ISO 27001 is that information security is considered to be a 'process' and not a 'product' one can simply buy. The process allows management to ensure that others within their organization are implementing security controls that are effective.
One of the difficulties of the information security process is its multidisciplinary nature: it needs to grasp security requirements from the organization business processes (where the managers typically are not savvy on information security) and to translate them to security controls. These controls can be of various types, including ICT technical or cryptographic but also related to personnel security (e.g. screening) or physical security (e.g. ‘locks’). The multidisciplinary nature of information security is reflected in the different areas ISO 27001 refers to. Moreover, the process needs to check that the operational effectiveness of the chosen controls is satisfactory and to adapt the controls (or the surrounding framework leading to the controls) if required.
Within the course this process is explored both from a theoretical and a practical level never losing sight of the computer science perspective. To this end the course also has several practical exercises including conducting an EDP audit and a vulnerability test.
The course provides the basic information on information security required by the security officer of an organization, by IT security auditors and by IT security consultants. As information security is still a rapidly evolving topic (some might argue it is even still in its infancy) the course can also provide inspiration for further scientific research.
The course starts with introduction of security management based on ISO27001 and then follows the different areas of ISO 27001. In each class one of these areas is discussed in more detail, in many cases by practical experts from the field, e.g. on internet banking fraud, ‘lock-picking’, ‘hacking’ etc.

10610174 | INFORMATION RETRIEVAL6ING-INF/05ENG

Obiettivi formativi

Aims
The objective is that participants in the course
are familiar with the classic retrieval models
understand the limitations and assumptions associated with these models
have insight and proficiency in the design and construction of search engines
are familiar with the standard evaluation methods for IR systems
are familiar with interaction techniques to support searchers in their quest for information
have an understanding of how the searcher's context and behaviour can be used to enhance retrieval effectiveness
have gained familiarity with recent scientific literature in this field

Content
While the rise of the internet has helped strengthen the field of Information Retrieval (IR), the area stretches far beyond plain web search, as a discipline situated between information science and computer science. In 1968, Gerard Salton defined information retrieval as "a field concerned with the structure, analysis, organization, storage, searching, and retrieval of information". Even though the area has seen many changes since that time and made a tremendous impact (who has never used a search engine?!), that definition is still accurate.
IR takes the notion of "relevance" as its core concept. As the scope of IR is limited to those cases where computers try to identify the relevance of information objects given a user's information need (as opposed to humans doing that, the common scenario in information science), perhaps "Computational Relevance" would have been a better term for the research in this area.
In this course, we cover the following aspects of Information Retrieval:
How do people search for information, and how can this be formalized?
How can we take advantage of term statistics, structure and annotations to capture the meaning of texts?
How can these elements be combined in order to find "relevant" information?
What techniques are necessary to scale to large text collections?

10610024 | ADVANCED NETWORK SECURITY6ING-INF/05ENG

Obiettivi formativi

After the course, the student will
understand 4G and 5G mobile networks and their core security principles
have hands-on experience with different tools relevant in the context of network security
have knowledge of and understand some key advanced network security technologies and their main advantages, disadvantages, and consequences when applying them in practice and

Content
The Advanced Network Security course builds on the bachelor course on Network Security. The Master course will go into detail with different existing web attacks and address the security of mobile networks. To this end, we will focus on recent research in different areas of network security.

The course covers the following topics.
A discussion on several widely used Internet protocols, focusing on the security they provide (e.g. IEEE 802.11 and BGP).
An overview of some of the current threats on the Internet and motivations behind these (e.g. botnets).
A discussion of possible solutions to current security issues in the Internet.
An introduction to mobile network security for the current mobile generation 4G and the upcoming generation 5G.
Examples of academic attacks against mobile networks.
The content of this course may be updated to reflect recent development in network security

10610175 | ADVANCED MACHINE LEARNING6ING-INF/05ENG

Obiettivi formativi

Aims
The aim of the course is to provide the student with a advanced concepts of modern machine learning at the international research level. The student will become familiar with the modern literature by presenting recent research papers on various topics. The student will implement these methods in computer code and apply them to real learning problems. See http://www.snn.ru.nl/~bertk/machinelearning/adv_ml.html for details.

Content
The course provides advanced topics in machine learning. The course is intended for Master's students in physics and mathematics.
This course is the follow-up of the course Machine Learning, which is part of the Computational Data Science minor. The course provides a good preparation for a Masters' specialisation in Theoretical Neuroscience or Machine Learning. See http://www.snn.ru.nl/~bertk/machinelearning/adv_ml.html for details.

10610023 | BAYESIAN NETWORKS6ING-INF/05ENG

Obiettivi formativi

Aims
At the end of this course, you will be able to demonstrate knowledge of the following theoretical concepts:
Foundations of Bayesian networks and other types of probabilistic graphical models.
Model testing, statistical equivalence, and parsimoniousness (Occam's razor).
Message passing and other foundations of probabilistic inference.
Key causal inference concepts such as intervention and confounding.

Further, you will have acquired the following practical skills:
Build a Bayesian network model of a problem domain that you are familiar with.
Use inference algorithms for probabilistic reasoning in Bayesian networks.
Statistically evaluate the model fit of a Bayesian network to a given dataset.
Use structure learning algorithms to generate plausible network structures for given datasets.
Use a Bayesian network to help answer causal inference questions from observational data -- that is, learn how to tackle questions such as "will getting a Master's degree increase my future salary?"

Content
Bayesian networks are powerful, yet intuitive tools for knowledge representation, reasoning under uncertainty, inference, prediction, and classification. The history of Bayesian Networks dates back to the groundbreaking work of Judea Pearl and others in the late 1980s, for which Pearl was given the Turing Award in 2012.

Bayesian networks are used in many application domains, notably medicine and molecular biology. This course will cover the necessary theory to understand, build, and work with Bayesian networks. It will also introduce how Bayesian networks provide a much needed foundation for causal inference, giving rise to what is sometimes called the "causal revolution".

10610022 | PHILOSOPHY AND ETHICS FOR COMPUTING AND INFORMATION SYSTEMS6ING-INF/05ENG

Obiettivi formativi

Aims
The student will:
be acquainted with a number of philosophical and ethical theories, both in general and applied to his/her object of study;
be able to recognize the implicit presuppositions in a number of scientific advances of his/her object of study;
be able to reflect on the normativity of his/her object of study;
be able to articulate his/her reflection in a number of short papers and a research paper.

Content
The course Philosophy and Ethics for Computing & Information Science explores philosophical, ethical and societal issues that have been made possible by the development of information technology
Starting from the concepts of privacy and the relationship between informatics and political decision-making processes, we will move on to examine the changes in our way to look at the world caused by the progresses of information technology. We will analyze among others the cultural meaning of hackerism, the role different ethical frameworks play in discussing technological advances, and the social/ethical/cultural implications of artificial intelligence (AI). Current 'hot topics' will be additionally discussed, based among others on input by the students

Lo studente deve acquisire 12 CFU fra i seguenti esami
InsegnamentoAnnoSemestreCFUSSDLingua
10611398 | NEW MEDIA6ING-INF/03ENG

Obiettivi formativi

Aims
After this course, the student will be capable to play a role in a multi-disciplinary team and conduct empirical research in the field by means of new media technologies such as mobile apps, virtual reality or interactive installations.

Content
The course focuses on designing, building and deploying new media technologies as instruments for conducting research. The research questions addressed stem from different academic fields as well as from industry and range from data collection (e.g. experience sampling), through coaching and behavioral change, up to validation of applications of Artificial Intelligence.The student is expected to follow, in a multi-disciplinary student team, a research cycle consisting of the following steps:
define the research question, target user group, functionality and study protocol.
conceptualize an interactive application, create mock-ups and preliminary walk-throughs.
develop the application, distribute it and implement the study protocol.
conduct and analyze an empirical study using this application.
The course will address necessary topics to follow the proposed research cycle.

Students work in multi-disciplinary teams of about 4-5 students. Throughout the course, each team will develop an 'intelligent new media application' with which they can answer a certain research question. These questions are put forward by so-called ‘stakeholders’, and should be centred around the general idea of ‘assistive technology’. For example, questions may include: 'can an intelligent mobile app help people quit smoking?', 'can a social robot be used to teach maths in primary school?', 'can a Virtual Reality application help people cope with anxiety?'. Hence, the type of technology (e.g., mobile app, social robot, VR application, serious game, …) as well as the choice of a programming language and platform to develop the application are completely open, as long as the system uses some kind of Artificial Intelligence. Moreover, students are encouraged to use new and interesting forms of sensors and devices (e.g., an eye tracker to sense gaze movement and pupil dilation, an emotive for EEG brain monitoring, or beacons for tracking movement). To answer their research question, students will go through an entire research & development trajectory (including requirements analysis, focus groups, conceptual design, prototype implementation, usability study, and an actual experiment involving real participants).

1022797 | DATA MANAGEMENT6ING-INF/05ENG

Obiettivi formativi

Obiettivi generali:
L'obiettivo del corso è l'indagine sui concetti di base dei sistemi di
gestione dei dati, facendo riferimento in particolare al modello
relazionale. Vengono affrontate diverse questioni fondamentali relative
alla teoria e alla progettazione di sistemi di gestione dei dati
relazionali, tra cui controllo della concorrenza, ripristino,
organizzazioni di file e indici, elaborazione delle query, OLAP e OLTP.
È richiesta una buona conoscenza dei fondamenti di strutture di
programmazione, linguaggi di programmazione e database (SQL, modello di
dati relazionali, modello di dati Entità-Relazione, progettazione di
database concettuali e logici).

Conoscenza e comprensione:
Lo studente avrà una buona conoscenza di come funziona un sistema di
gestione dei dati, di come è strutturato e di come è progettato.
Inoltre, lo studente acquisirà conoscenza dell'architettura di un
sistema di gestione di database e dei suoi moduli principali (gestore
delle transazioni, gestore di recupero, analizzatore di query). Lo
studente acquisirà inoltre una buona conoscenza di come progettare
l'organizzazione fisica delle relazioni (file e indici) e di come
funziona l'ottimizzatore di query di un sistema di gestione dati.

Applicare conoscenza e comprensione:
Gli studenti saranno in grado di progettare il proprio sistema di
gestione dei dati, incluso il modulo di controllo della concorrenza, il
modulo di ripristino, il modulo per i metodi accesso ai file e
l'ottimizzatore di query.

Capacità critiche e di giudizio:
Lo studente sarà in grado di valutare le caratteristiche e la qualità di
un sistema di gestione dei dati e sarà in grado di scegliere la tecnica
giusta per gestire la concorrenza, il recupero e l'elaborazione delle
query in contesti applicativi specifici.

Capacità comunicativa:
Gli studenti acquisiranno una buona conoscenza su come illustrare gli
algoritmi e le tecniche alla base di un moderno Data Manager.

Capacità di apprendimento:
Lo studente sarà in grado di comprendere qualsiasi nuova architettura e
approccio alla gestione dei dati che si affermerà in futuro.

10610032 | INTELLIGENT SYSTEMS IN MEDICAL IMAGING6ING-INF/05ENG

Obiettivi formativi

Aims
Learn how basic methods of image processing work
Learn about important applications in the field of medical image analysis and computer aided diagnosis (CAD)
Understand the increasing role of machine learning and deep learning in medical imaging
Design, implement, and evaluate a medical image analysis system for a clinical application
Learn how to design studies to evaluate medical image analysis systems

Content
Medical imaging is increasingly gaining importance in medicine. Radiologists use images to detect diseases in an early stage (via screening), to diagnose patients with symptoms, and to monitor the effect of treatment. In pathology digitization of microscopy imaging is just starting, enabling pathologists to use computerized analysis of high-resolution gigapixel images to better diagnose disease in tissue samples. However, as the complexity of imaging (3D/4D) and the amount of data increases the interpretation of images by humans becomes problematic.
Therefore, there is a growing need for intelligent image analysis systems that can aid clinicians with image interpretation and decisions. The goal of these systems is to reproduce visual skills of highly trained human observers and to provide quantitative analysis. For this purpose, machine learning is applied to develop a computer model that can be trained to exploit information from a large number of medical images.
In recent years, Deep Learning [LeCun et al., Nature, 2015] has emerged as the state-of-the-art approach for image analysis applications. While human readers still are superior in most applications, Convolutional Neural Networks have been successfully applied to medical imaging problems like automated reading of mammograms for breast cancer detection, automatic detection of pulmonary nodules for lung cancer screening, detection of breast and prostate cancer in histopathology images and segmentation of white matter lesions in brain magnetic resonance, amongst others, de facto gradually bridging the gap between humans and computers. Finally, recent studies have shown that deep learning algorithms have reached and outperformed human professionals at diagnostic tasks like detection of skin cancer [Esteva et al., Nature, 2017], classification of diabetic retinopathy [Gulshan et al., JAMA, 2016] detection of breast cancer metastasis in lymph nodes [Ehteshami et al., JAMA, 2017], and malignancy risk estimation of lung nodules on CT [Venkadesh et al., Radiology, 2021].

In the first part of the course, students will learn basic concepts of digital image processing, medical imaging, machine learning and deep learning through a series of weekly practical assignments. Lectures and assignments will cover the following topics:
Introduction to Medical Image Analysis
Medical Image Processing and Transformation
Detection, Segmentation and Classification in Medical Imaging
Machine Learning with Neural Networks
Deep Learning with Convolutional Neural Networks
Convolutional Neural Networks and Segmentation in Medical Imaging
Convolutional Neural Networks and Detection in Medical Imaging
Deep Learning for Gand Challenges in Medical Imaging

The second part of the course is dedicated to the development of a CAD system based on deep learning, in the form of a final project, in which small teams of students will apply the concepts and techniques learned in the first part of the course and compete in ongoing grand challenges in medical imaging.

10610029 | NETWORK ANALYSIS6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
Introduction to network analysis. Graphs. Networks.
Node position. Spectral and distance node centrality. Clustering coefficients. Link analysis algorithms.
Link importance. Betweenness and bridgeness link centrality. Embeddedness and topological overlap.
Node similarity. Local and global node similarity. Structural and regular equivalence. Block models.
Node fragments. Egonets analysis. Network motifs and graphlets. Convex subgraphs. Node orbit distributions.
Graph partitioning. Graph bisection. Spectral analysis. Hierarchical clustering. Core-periphery structure.
Network clustering. Modularity optimization. Community detection. Role discovery. Blockmodeling.
Network modeling. Erdos-Renyi. Watts-Strogatz. Price, Barabasi-Albert and configuration models.
Network abstraction. Structural network comparison. Network layout algorithms. Network visualization.
Network mining. Node classification and ranking by equivalence and position. Link prediction by similarity.
Selected applications of network analysis. Fraud detection. Software engineering. Information science.

10610030 | HIGH PERFORMANCE COMPUTING6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
Parallel and distributed computing. Quantifying parallelisation architectures. Memory access. Granularity. Topologies.
Modern parallel architectures. Shared-memory systems. Distributed-memory systems. Graphics processing units. Modern coprocessors. FPGA circuits. Heterogeneous systems.
Parallel languages and programming environments. OpenMP. MPI. OpenCL. MapReduce.
Parallel algorithms. Analysis and programming. Data and functional parallelism. Pipeline. Scalability. Programming strategies. Performance analyis. Implementation of standard scientific algorithms. Choosing the appropriate architecture.
Parallel performance. Load balancing. Scheduling. Communication overhead. Cache effects. Spatial and temporal locality. Energy efficiency.
Using the national high performance computing infrastructure.
Selected advanced and current topics in high performance computing.

10589747 | INTERNET OF THINGS6ING-INF/05ENG
10606830 | INTERNET-OF-THINGS NETWORKS AND PROTOCOLS6INF/01ENG

Obiettivi formativi

The course will make students aware of the challenges behind the design, implementation and field use of Wireless system, sensing systems and the Internet of Things. The course will present both the theoretical foundations and practical aspects you need to know to develop such systems. Hands on lab experiences are associated to the course.

Part 1, Wireless networks

Fundamentals of wireless systems

Fundamental of ad hoc and cellular networks

Part 2, Internet of Things Core

Internet of Thigs applications, architectures, enabling technologies and protocols

Part 3, Emerging Technological Trends in Internet of Things

Zero power sensing systems: Wake Up Radio, energy harvesting, ...

ML based system optimization

Cyber physical systems for the Blue Economy

Part 4, From technologies to Applications

Internet of Things for smart planet and smart cities: practical examples of how to put the pieces together to implement real systems

Part 5 (Lab): Simulating, implementing and testing novel ideas on wireless networked systems and IoT systems

Performance evaluation of Internet of Things systems: How to model, what to model

Network simulators for Internet of Things

How to move from an idea to a validated idea to a solution

Lab: The course provides some lectures on C++ tailored to what needed to program simulators on Internet of Things systems.

For students with limited background on C/C++, recording of classes on C++ from previous courses will be shared so that you can get the needed background

10610038 | RESEARCH METHODOLOGY6ING-INF/05ENG

Obiettivi formativi

Presentation and Associated Skills
This course covers the major considerations and tasks involved in conducting scientific research, with special emphasis in those aspects related to the context of Information and Communication Technologies.
Students are expected to develop the following skills: formulation of research questions; ability to search and distinguish the types of information sources and their impact; selection of the techniques and methods that can be applied to different types of research work; communication skills in the context of research; understanding the context and role of professional researchers, including the tasks of writing and reviewing papers and projects.
Topics covered
Introduction: course set-up, group gauge and introduction to the concept of "research".
Reality and consensus: science, paradigm, scientific community, scientific revolutions, trends. The nature of "truth", credibility, frauds in research, responsible research and innovation.
Information sources: types of information sources, access to articles, ranking/impact. Managing and citing references.
How to formulate research questions: reasons for doing research. Possible outcomes of research. Finding research topics. Writing a literature review.
How to answer research questions: playing with theory, induction, deduction and abduction. Science and creativity. The scientific, the engineering, the empirical and the analytical methods. Experimental validation methods. Data collection instruments and analysis.
Writing and presenting research work: technical writing. Presentations, posters and exhibitions.
The tasks of professional researchers: submitting and reviewing papers. Academy, research centres, R&D in Industry. Some aspects of intellectual property. Open Science. Social Impact of Science. Meta-Research.

10610037 | DATA-DRIVEN SOCIAL ANALYTICS6ING-INF/05ENG

Obiettivi formativi

Presentation
Online social networks and social media play a central and growing role in our daily life. They influence how we communicate with our friends, how we obtain and consume media and news content, how we apply for a job, even how the information we look up in Wikipedia is generated or how political parties try to convince you to vote for them. The aim of this course is to provide both the theoretical background as well as the practical tools to analyse, model and visualize the multiple facets of these phenomena.
The course provides an overview about the state of the art in Social Network Analysis and how its metrics have been derived from theories in Sociology. Furthermore, it will provide knowledge about tools and methods to derive specific social media datasets and the way to visualize social networks that go beyond an ugly hair ball of nodes and edges. Finally, it will cover more advanced topics such as learning and inference, information diffusion, community structure and prediction.
Associated skills

Basic Competences
That students have and understand knowledge that provides a basis or opportunity to be original in ○
the development and/or application of ideas, often in a research context.
That students know how to apply the acquired knowledge and their ability to solve problems in new or little-known environments within broader (or multidisciplinary) contexts related to their area of study.
That students are able to integrate knowledge and face the complexity of making judgments from information that, being incomplete or limited, includes reflections on the social and ethical responsibilities linked to the application of its knowledge and judgments.
That the students know how to communicate their conclusions and knowledge and ultimate reasons that support them to audiences specialized and non-specialized in a clear way and without ambiguities.
That students possess the learning skills that allow them to continue studying in a way that will be largely self-directed or autonomous.
Specific Competences
Identify novel applications of models and algorithms in the field of interactive intelligent systems.
Ability to communicate effectively using the technical vocabulary of the field in English.
Apply machine learning models and algorithms to a well-identified interactive intelligent systems problem.
Learning outcomes
Ability to apply and identify basic algorithms in social networks modeling, analysis, and visualization.
Ability to read and demonstrate good comprehension of scientific articles in the area of data-driven social analytics.
Identify parallels in problems in the field of interactive intelligent systems.

1038133 | FORMAL METHODS6ING-INF/05ENG

Obiettivi formativi

Obiettivi generali:

L'obiettivo del corso è lo studio e l'approfondimento della qualità più importante del software: la correttezza. Lo studio della correttezza verrà affrontato con riferimento ad aspetti concettuali e realizzativi affrontando la modellazione e la verifica sia di aspetti statici che di aspetti dinamici. Gli argomenti vengono trattati dando enfasi ad aspetti metodologici e ad aspetti sperimentali utilizzando varie forme di logica (logica del prim'ordine, logiche dinamiche e logiche temporali) e vari strumenti per la verifica automatica.
Risultati di apprendimento attesi: Alla fine del corso lo studente dovrebbe avere acquisito tecniche e metodi per la dimostrazione della correttezza dei programmi e degli schemi concettuali.

Obiettivi specifici:

Conoscenza e comprensione:
I principali fondamentali dei metodi formali. L'uso di specifiche rigorose e formali e la loro verifica. Principi fondanti della logica per l'informatica, verifica formale di proprieta' dei dati e dei processi.

Applicare conoscenza e comprensione:
Essere in grado di affrontare l'analisi di correttezza di programmi attraverso metodi rigorosi e formali, sia relativamente ad aspetti relativi ai dati che ai processi.

Capacità critiche e di giudizio:
Essere in grado di valutare il rigore di una data argomentazione di correttezza dei programmi. Orientarsi nella scelta degli strumenti concettuali forniti dalla logica e i metodi formali per la verifica di proprieta' sia statiche che dinamiche.

Capacità comunicative:
Le attività di gruppo in classe e le esercitazioni del corso permettono allo studente di essere in grado di comunicare/condividere le conoscenze acquisite e confrontarsi con gli altri sui temi del corso.

Capacità di apprendimento:
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico, le modalità di svolgimento del corso, stimolano lo studente all'approfondimento autonomo di alcuni argomenti presentati nel corso, al lavoro di gruppo, e all'applicazione concreta delle nozioni e delle tecniche apprese durante il corso.

1041706 | KNOWLEDGE REPRESENTATION AND SEMANTIC TECHNOLOGIES6ING-INF/05ENG

Obiettivi formativi

Obiettivi generali:

Conoscere i linguaggi di riferimento delle tecnologie semantiche attuali, in particolare le famiglie dei linguaggi di rappresentazione della conoscenza basate sul concetto di classe (class-based) e sul concetto di regola (rule-based), e le principali tecniche di ragionamento per tali linguaggi. Conoscere le tecnologie semantiche standard basate su tali formalismi di rappresentazione della conoscenza, in particolare i linguaggi RDF e OWL, con l'obiettivo di progettare e gestire una base di conoscenza ontologica. Conoscere gli elementi di base della rappresentazione di azioni e ragionamento su azioni.

Obiettivi specifici:

Conoscenza e comprensione:
Le logiche descrittive, i principali formalismi per la rappresentazione della conoscenza basati sul concetto di classe, e i linguaggi basati su regole, con particolare riferimento a Datalog e alcune sue estensioni. I principali standard Web per le tecnologie semantiche, in particolare i linguaggi RDF, SPARQL e OWL.

Applicare conoscenza e comprensione:
Essere in grado di progettare una base di conoscenza, scegliendo il formalismo e le tecnologie di gestione più appropriati per il contesto applicativo in esame.

Capacità critiche e di giudizio:
Essere in grado di valutare gli aspetti semantici salienti di una base di conoscenza e di una applicazione basata sulla conoscenza. Essere in grado di scegliere la migliore tecnologia disponibile per il processamento di una base di conoscenza.

Capacità comunicative:
Le attività progettuali e le esercitazioni del corso permettono allo studente di essere in grado di comunicare e condividere i requisiti di una applicazione che richiede la costruzione e la gestione di una base di conoscenza e/o l'uso delle tecnologie semantiche standard.

Capacità di apprendimento:
Oltre alle classiche capacità di apprendimento fornite dallo studio teorico del materiale didattico, le modalità di svolgimento del corso, in particolare le attività progettuali, stimolano lo studente all'approfondimento autonomo di alcuni argomenti presentati nel corso, al lavoro di gruppo, e all'applicazione concreta delle nozioni e delle tecniche apprese durante il corso.

10610036 | CAPITA SELECTA IN CYBERSECURITY6ING-INF/05ENG

Obiettivi formativi

Aims
The idea behind this capita selecta course is to treat a topic within the broad field of cyber security in-depth. The topic may vary over the years, but it will be a topic that is highly relevant and important and one that is an active area of research within the Digital Security group at ICIS.

The current topic is 'Online Tracking and Privacy' and the course will be taught by dr. Günes Acar.

Learning objectives: at the end of the course students
understand key online tracking mechanisms;
can audit websites, mobile applications and IoT devices to identify tracking and data collection practices;
understand the privacy and security implications of online tracking;
understand how countermeasures against online tracking works;
can explain how privacy-preserving telemetry and client-side data collection works.

Content
Topics covered in the course include:
stateful and stateless cross-site tracking on the web (e.g. cookies, super-cookies, browser fingerprinting, cookie syncing);
microtargeting and behavioral advertising;
intentional and unintentional exfiltration of personal data;
countermeasures against password leaks;
countermeasures against web tracking, at browser or network level;
tracking on mobile platforms;
IoT devices and privacy (e.g. data collection from smart home devices and by smart TV channels);
online manipulation: microtargeting and dark patterns;
practical analysis of online privacy practices for the web, mobile devices, and IoT, including building web crawlers for large scale measurements and using machine learning techniques for analysis;
privacy-preserving analytics, telemetry, and advertising (e.g. RAPPOR, Local Differential Privacy, Mozilla Prio, Google FLoC).

10610035 | SOFTWARE SECURITY6ING-INF/05ENG

Obiettivi formativi

Aims
At the end of the course students
can explain the common ways in which software security fails;
are able to identify security objectives of applications and identify likely places where they might fail;
can explain methods and technologies that can help in the development of secure software;
can apply some of these techniques in practice.
Concrete examples of attacks and countermeasures are often specific to a certain setting (a programming language and/or type of application); the aim provide enough insight to be able to assess problems and proposed solutions in other situations.

Content
Software is THE most important cause of computer security problems. This course is about the challenges in developing secure software and the technologies that can be used to improve software security, at the various stages in the software development life-cycle, and at various "levels", eg. specific to an individual application or at the level of the programming language.

10610034 | MACHINE LEARNING FOR DATA SCIENCE II6ING-INF/05ENG

Obiettivi formativi

Content (Syllabus outline):
The course will explore in depth several important classes of algorithms in modern machine learning, and cover applications of each algorithm in real-world settings.
We will cover the following topics.
Methods for linear and non-linear dimensionality reduction. Shallow embeddings and matrix factorization. Random-walk embeddings and their connection with spectral methods. Locality-preserving projections.
Machine learning on relational data. Using machine learning to reason with relational data, especially in the context of knowledge graph embeddings. Network representation learning methods. Graph convolutional networks. End-to-end learning on relational data using low-dimensional embeddings.
Distant supervision, multi-label and multi-target learning. Weak supervision. Data programming. One-shot and few-shot learning. Noise-contrastive estimation (NCE) and optimization.
Introduction to reinforcement learning.
Current research topics.

10611400 | MOBILE ROBOTICS6ING-INF/04ENG

Obiettivi formativi

Presentation
The ability to integrate artificial intelligence capabilities and agency aboard of an autonomous robot is now a reality. The great
success of manipulation in robotics has now been expanded to platforms of robots that move in their environment and for which
the challenge of selecting their actions depends heavily on tracking their location by themselves.
This course explores the impact of intelligent capabilities aboard mobile robotics and examines the software architectures that
transform reactive behaviours into deliberative behaviours. We touch on the issues of middleware and illustrate this with the
software packages provided by ROS.
Associated skills
Basic skills
Understand the knowledge that provides a basis or opportunity to be original in the development and / or application of ideas, often in a research context where robots may be relevant.
Apply the knowledge acquired and their ability to solve problems in novel or poorly knownenvironments within broader (or multidisciplinary) contexts related to their area of study.
Integrate knowledge and face the complexity of making judgments based on information that, being incomplete or limited, includes reflections on social and ethical responsibilities linked to the application of their knowledge and judgment.
Learning skills that allow students to continue studying in a way that will need to be largely self-directed or autonomous.

Specific skills
E1) Apply the models and algorithms of machine learning, autonomous systems, interaction in natural language, mobile robotics and / or web intelligence to a problem of well-identified interactive intelligent systems. In particular, students will acquire in-depth experience with software programming tools and with the software architecture and middleware that enable the robotic behaviour.
E2) Program virtual agents so that they can interact with their environment, humans and / or other agents intelligently. In particular, students will develop expertise with reactive systems and the integration of deliberative capabilities.
E3) Identify new uses of models and algorithms in the field of interactive intelligent systems. In particular, students will also understand the main issues in algorithms for localisation, navigation and mapping.
E6) Present the result of a research project in the field of interactive intelligent systems in a scientific forum and in interaction with other researchers. In particular, develop a small package that demonstrates inquiry in mobile robotics.
Learning outcomes
E1) Solves problems related to interactive intelligent systems. In particular, students shall critically recognise and produce designs for software architectures and control architectures suited for robotic systems.
Identifies the appropriate models and algorithms to solve a specific problem in the field of interactive intelligent
systems. In particular, the student shall evaluate and contrast the techniques for robotic manipulation and robotic motion.
Evaluates the result of applying a model or algorithm to a specific problem. In particular, students shall appreciate the properties
of reactive systems and be able to compose complex behaviour from simpler behaviours of finite state machines.
E2) Uses software tools and environments autonomously for intelligent agent programming. Students shall become familiar with ROS as middleware and recognise the roles of middleware for robotics systems and the very relevant issues of properties contrasting the "push" approach versus the "pull" approach.
Implements stable algorithms that meet the quality requirements in relation to the required time and space. In particular, students shall apply kinematic models (as motion models) in the context of localisation to create the predictive step during the action phase of the localisation exercise.
E3) Recognizes the intentional domain of application of a model or algorithm in the field of interactive intelligent systems. In particular, use sensor models to incorporate the uncertainty of sensing in the revision of the belief that represent the notion of position and posture for the robot.
Describes limitations of a given model or algorithm for a new problem. In particular, recognise the common elements and the individual differences between the methods for map representation in localisation, as well for the algorithms that represent uncertainty and how they update such uncertainty for autonomous mobile robots.

10611399 | IMAGE-BASED BIOMETRY6ING-INF/06ENG
1023235 | ROBOTICS I6ING-INF/04ENG

Obiettivi formativi

Obiettivi generali

Il corso fornisce strumenti di base per il controllo dei sistemi robotici: analisi cinematica, pianificazione e programmazione dei movimenti di robot manipolatori in ambienti industriali e di servizio.

Obiettivi specifici

Conoscenza e comprensione:
Lo studente apprenderà il funzionamento dei componenti di attuazione e sensoriali dei robot, i metodi di base per la modellistica, l'analisi e il controllo cinematico di manipolatori robotici, nonché gli algoritmi per la pianificazione delle traiettorie di moto.

Applicare conoscenza e comprensione:
Lo studente sarà in grado di analizzare le strutture cinematiche dei robot di tipo industriale e di progettare algoritmi e moduli per la pianificazione e il controllo della movimentazione.

Capacità critiche e di giudizio:
Lo studente sarà in grado di individuare le caratteristiche funzionali di un sistema robotico con riferimento al tipo di compito industriale o di servizio,
di analizzarne la complessità di realizzazione, le possibili prestazioni e le eventuali debolezze.

Capacità comunicative:
Il corso mette in grado lo studente di presentare le principali problematiche applicative e le soluzioni tecniche riguardanti l'impiego dei robot.

Capacità di apprendimento:
Il corso mira a creare attitudini di apprendimento autonomo orientate all'analisi e alla soluzione di problemi connessi all'uso dei robot.

1021883 | ROBOTICS II6ING-INF/04ENG

Obiettivi formativi

Obiettivi generali

Il corso fornisce strumenti avanzati per il controllo dei sistemi robotici: uso della ridondanza cinematica, analisi della dinamica dei robot manipolatori, comando in feedback dei movimenti, incluso il caso di asservimento visuale, e controllo dell'interazione con l'ambiente.

Obiettivi specifici

Conoscenza e comprensione:
Lo studente apprenderà i metodi per la modellistica dinamica dei manipolatori, le tecniche di utilizzo della ridondanza cinematica, la progettazione di schemi di controllo del moto e dell'interazione con l'ambiente.

Applicare conoscenza e comprensione:
Lo studente sarà in grado di analizzare la dinamica dei manipolatori robotici e di progettare algoritmi e moduli per il controllo del moto libero e delle forze di contatto con l'ambiente.

Capacità critiche e di giudizio:
Lo studente sarà in grado di individuare le caratteristiche dinamiche di un sistema robotico con riferimento al tipo di compito,
di analizzarne la complessità di realizzazione, le possibili prestazioni e le eventuali debolezze.

Capacità comunicative:
Il corso mette in grado lo studente di presentare le problematiche avanzate e le relative soluzioni tecniche riguardanti l'uso dei robot in condizioni dinamiche.

Capacità di apprendimento:
Il corso mira a creare attitudini di apprendimento autonomo orientate all'analisi e alla soluzione di problemi avanzati connessi all'uso dei robot.

1022863 | MEDICAL ROBOTICS6ING-INF/04ENG

Obiettivi formativi

Fornire un’introduzione e una panoramica sull’uso delle tecnologie robotiche nell’ambito medico, con particolare riferimento alla chirurgia assistita.

Lo studente conoscerà i principali sistemi di chirurgia assistita da robot, delle problematiche inerenti alla progettazione di robot medicali e al loro controllo.
Lo studente sarà in grado di:

- leggere criticamente articoli che descrivano le principali tecnologie coinvolte nella robotica medica;
- discutere dettagliatamente lo stato dell'arte delle applicazioni robotiche in medicina;
- stimare i potenziali benefici derivanti dall'introduzione di tecniche robotiche in una procedura medica;
- argomentare sullo sviluppo di una particolare tecnologia non ancora esistente o non ancora sperimentata;
- comunicare e collaborare con persone di diversa formazione tecnica;
- valutare i vincoli clinici, sociali ed economici nella implementazione di una tecnologia robotica in un settore medico;
- progettare schemi di controllo per la teleoperazione di robot medicali e per l’esecuzione di compiti condivisi tra umani e robot.

Lo studente deve acquisire 12 CFU fra i seguenti esami
InsegnamentoAnnoSemestreCFUSSDLingua
AAF1466 | INTERNSHIP12ENG

Obiettivi formativi

Aims
Upon completion of the internship, the student will be able to
take part in scientific research in the specific area of the students’ master’s specialization: get aquainted with the subject and state of the art, apply appropriate methods, discuss, contribute to research results, relate the activities to current developments in the field;
present their activities and research outcomes of the internship;
reflect on the development of their research skills and the role of research in their future career.

Content
This internship is part of your training as scientific researcher: in the Research Seminar you have studied scientific literature, in this Research Internship you participate in a research project in one of our scientific groups, and in the Master Thesis you will carry out your own research project.
You will have to make the arrangements for your internship yourself. This includes finding a suitable research group and/or project, so this is best done in advance. Normally, you will carry out your research within one of the ICIS groups involved in your master’s specialization. It is also possible, however, to arrange an ‘external internship’ and participate in research at another institute, in industry, or even abroad. In any case, your choice of location and research project needs to be approved by the (assistant/associate) professor or the lecturer who will be your supervisor. The primary point of contact for the research internship (besides whoever acts as supervisor of your research internship project) is the coordinator of your master’s specialization.

AAF2331 | ADVANCED TOPICS IN COMPUTER VISION AND IMAGE PROCESSING12ENG

Obiettivi formativi

Content (Syllabus outline):
The course will include selected advanced topics in motion perception using computer vision. Concrete topics will change each year according to trends in this fast developing field in computer science and industry. Potential topics will include:
Overview of the field motion estimation and applications.
Optical flow estimation using least-squares.
Variational optical flow estimation.
Parametric template tracking using Lucas-Kanade.
Histogram-based tracking using Mean Shift
Tracking as stochastic optimization using cross entropy.
Recursive Bayes filter for online state estimation.
Tracking by Kalman filter.
Tracking by particle filters.
Tracking deformable objects by constellation models.
Methodologies of tracker comparison.
Tracking by classification.
Long-term tracking by detection.

AAF2330 | SEMINARS ON ADVANCED TOPICS IN AI AND ROBOTICS12ENG

Obiettivi formativi

Contents
part A : AI for Visual Perception in HCI & HRI

As computer science, assistive technologies and robotics evolve towards application fields in which humans cooperate with machines, working closer and closer, the requirements for human computer interactions increase. Visual perception is an important component for human–machine interaction processes in all kinds of computer systems. Interaction between humans and computers depends on the reliability of the perception systems, and, above all, the vision system. The analysis of activities, motions, skills, and behaviors of humans and robots are generally addressed by using the features of a moving human body (or body part). The human motion behavior is then analyzed by body movement kinematics, and the trajectory of the target is used to identify the objects and the human target. The process of human target identification and gesture recognition in a quite non-trivial problem. In this series of lectures we will focus on the context of Human-Robot Interaction (HRI) along with the related problems on the field of vision and perception, applied to robotic systems. We will devise the typical characteristics of vision and perception related hardware device, as well as the relative software systems and solutions. We will explore the known approaches characterizing well known visual recognition systems, as well as the most important algorithmic solutions for people targeting and body parts recognition. A theoretical and practical framework will be given with several example. Finally we will discuss the state of the art on human-centric vision analysis and explain the importance of the matter relatively to human-based interfaces of computer/robots with special interest in human motion and activity recognition. We will also devise several tracking systems and motion oriented context and object recognition techniques, with emphasis on deep learning techniques applied to visual recognition. Finally we will compare the applicability of such techniques to human motion classification and the related application on the field of Human-Computer Interaction.

part B: Computational Narrative Understanding and Storytelling
Stories are an early genre and a popular form of human communication and entertainment. They are pervasive in our everyday life, ranging from experience sharing at dinner and telling imprtant events in newspapers articles to entertainment in fables, novels, movies and computer games. In this part of the course we will focus on the computational understanding and generation of stories, which are open research areas at the intersection of Natural Language Processing, Machine Learning, computational literary analysis and human-computer interaction. The topics covered during the course will include:
narrative theory for computational computational narrative
computational semantic models and frame semantics for stories
event knowledge encoding and extraction
the computational structure of a story
commonsense knowledge and reasoning
computational dialogue for narrative
computational storytelling