COGNITIVE COMPUTING AND ARTIFICIAL INTELLIGENCEAnno accademico 2018/2019 - 2° anno
SSD: ING-INF/05 - Sistemi di elaborazione delle informazioni
Organizzazione didattica: 225 ore d'impegno totale, 146 di studio individuale, 49 di lezione frontale, 30 di esercitazione
Nota: Questo insegnamento è erogato in lingua inglese
The course provides an integrated and modern approach to the design and development of intelligent systems, by resorting to state of the art technologies and methods from the fields of machine learning, large-scale multimedia analysis, natural computation, knowledge representation, logic and automated reasoning to solve typical and topical problems in application scenarios such as: natural human-computer interaction, business intelligence and decision-making support. The students will learn to design, develop and validate systems that learn from heterogeneous data (either in a supervised or unsupervised manner) and are able to detect and recognize patterns; 2) they will learn to program the behaviours of autonomous agents (NAO robots) capable to interact adaptively with humans. The course provides the theoretical foundations of artificial cognitive systems, but it is essentially practical and application-oriented. The students will gather hands-on experience on languages supporting the development of semantic web and logic programming applications, on frameworks and libraries such as TORCH for deep learning; on MATLAB libraries for multimedia signal processing and data mining; and on the NAO autonomous, programmable humanoid robot.
Modalità di svolgimento dell'insegnamento
The course involves frontal lessons, laboratories, and seminars.
Knowledge of a programming language (any). Knowledge of linear algebra. Good software developments skills are not mandatory, but are a definite asset.
Strongly recommended. Attending and actively participating in the classroom activities will contribute positively towards the overall assessment of the oral exam.
Contenuti del corso
Part 1: Knowledge Representation, Reasoning, and Semantic Technologies
- Introduction to Knowledge-Based Systems and to Knowledge Representation
- Reasoning: deductive and inductive reasoning; reasoning with uncertainty; temporal and spatial reasoning, case-based reasoning.
- Problem solving: search strategies and optimization
- First order logic and logic programming. Examples in Prolog.
- Fuzzy logic and the computing with words approach
- The Semantic Web: The RDF Data Model. OWL: The Web Ontology Language. Ontology Engineering. Examples in Protege. The SPARQL query language. Reasoners. Other Semantic Web Technologies and Applications. Linked data.
Part 2: Machine learning and knowledge discovery from large scale multimedia data
- Supervised learning: Probabilistic models, linear models, kernel-based methods, Support Vector Machines, data pre-processing
- Neural models: networks, model design, backpropagation training
- Deep learning: issues with "deep" models, training methods, convolutional neural networks (CNN), Recurrent Neural Networks
- Problem solving through natural computation: reinforcement learning and evolutionary algorithms.
- Multimedia analysis: Fundamental of multimedia signal processing (audio, speech, video). Image representations, filters, edge and contour extractions, segmentation. Image description; features and feature extraction, SIFT, bag-of-words models. Artificial vision. Object detection and recognition. Towards scene understanding.
- Knowledge discovery from data: the general data mining process, model construction and testing, performance evaluation, scalability issues, applications: recommender systems and business intelligence
Part 3: Autonomous agents and the NAO humanoid robotic platform
- Theories of perception, action and interaction. Interactive autonomous agents. Human-robot interaction
- The Nao robot operating system (NAOqi), the graphical programming environment Choreographe, NAO SDK.
- Applications. Augmenting the NAO perceptual and cognitive system.
Testi di riferimento
Selected chapters from the following resources:
- Artificial Cognitive Systems: A Primer. David Vernon, MIT Press, 2014
- Artificial intelligence: a modern approach. Stuart Russell, Peter Norvig, 3rd edition, 2010
- Data Mining: The Textbook, Charu Aggarwal, 2015. Springer
- Deep Learning. I. Goodfellow, Y. Bengio and A. Courville, MIT Press, 2016
- A semantic Web Primer (third edition). Grigoris Antoniou, Paul Groth, Frank van Harmelen, and Rinke Hoekstra, 2012. The MIT Press, Cambrigde, Massachusetts, London, England.
- Computer Vision: A Modern Approach. David A Forsyth, Jean Ponce, 2015. Pearson education Limited
- Teaching materials provided by the instructor
Programmazione del corso
|1||Introduction to cognitive computing and artificial intelligence from an historical perspecitve. The intelligent agent paradigm. Classic AI and Knowledge-Based Systems. The problem of Knowledge Representation.||2, 7|
|2||Reasoning: deductive and inductive reasoning; reasoning with uncertainty; temporal and spatial reasoning, case-based reasoning.||2,7|
|3||First order logic and logic programming. Bayesian Logic.||2,7|
|4||Fuzzy logic and the computing with words approach.||7|
|5||Problem solving: search strategies and optimization; solving optimization problems with evolutionary programming||2,7|
|6||The Semantic Web: The RDF Data Model. OWL. Ontology Engineering. Examples in Protege. The SPARQL query language. Reasoners. Other Semantic Web Technologies and Applications. Linked data.||5,7|
|7||Introduction to machine learning. Supervised learning: Probabilistic models, linear models, kernel-based methods, Support Vector Machines. Data pre-processing. Applications to classification and regression problems. Decision trees, information and entropy based criteria. Feature selection and PCA.||3|
|8||Neural models: networks, model design, backpropagation training. Reiforcement learning. Unsupervised learning and Self-organizing Maps. Applications of supervised and unsupervised clustering.||3,7|
|9||Multimedia analysis: Fundamental of multimedia signal processing (audio, speech, video). Image representations, filters, edge and contour extractions, segmentation. Image description; features and feature extraction, SIFT, bag-of-words models. Artificial vision. Object detection and recognition. Towards scene and context understanding.||6|
|10||Deep learning: issues with "deep" models, training methods. Overview of TORCH and first examples.||4|
|11||Convolutional neural networks (CNN). Architectures, convolutions and pooling layers. Case studies. Applications to computer vision||4|
|12||Recurrent Neural networks (RNN), Long Term Short Term Memory (LSTM). Autoencoders. Case studies.||4|
|13||Knowledge discovery from data: the general data mining process, model construction and testing, performance evaluation (metrics and crossvalidation). Big data and scalability issues. Available cognitive services and API||3,7|
|14||Decision making and the design of decision support systems. Applications: recommender systems and business intelligence||3,7|
|15||Theories of perception, action and interaction. Interactive autonomous agents. Human-robot interaction||1|
|16||The Nao robot operating system (NAOqi), the graphical programming environment Choreographe, NAO SDK.||7|
|17||Applications. Augmenting the NAO perceptual and cognitive system. The challenges of multimodal interaction.||7|
Modalità di verifica dell'apprendimento
The competences to be developed by the students will be tested by an oral exam that will consist of the discussion of 3 practical homeworks to be submitted during the course (70% of the final grade) and of 3 questions on key concepts and methodologies covered in the course (30% of the grade). The students who will not be able to submit the 3 homeworks during the course will be assigned a project that will be worth 70% of the final grade. Assessment criteria include: depth of analysis, adequacy, correctness and originality of the design solutions to the project/homeworks, ability to justify and critically evaluate the technological solutions adopted in the project/homeworks, clarity.
Esempi di domande e/o esercizi frequenti
Examples of questions and exercises are available in Studium