COGNITIVE COMPUTING AND ARTIFICIAL INTELLIGENCEAnno accademico 2020/2021 - 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, knowledge representation, natural computation, logic and automated reasoning to solve typical and topical problems in application scenarios such as: 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 (e.g., NAO robots or similar platforms) 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 frameworks and libraries such as PYTORCH for deep learning; on libraries for multimedia signal processing and data mining; on languages supporting the development of semantic web and logic programming applications.
Modalità di svolgimento dell'insegnamento
The course involves frontal lessons, laboratories, and seminars.
Should teaching be carried out in mixed mode or remotely, it might be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.
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
- Rational agents and their environments: from reactive agents to autonomous agents. The general SOAR cognitive architecture.
- Reasoning: deductive and inductive reasoning; reasoning with uncertainty; case-based reasoning. Bayes networks and probabilistic inference
- Problem solving: search strategies and optimization
- The Logic approach: First order logic and logic programming. Fuzzy logic and the computing with words approach. Strengths and limitations.
- 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: Regression, Support Vector Machines, Decision trees, KNN
- Neural models: networks, model design, backpropagation, Gradient descent. Model capacity, overfitting and underfitting, regularization.
- Deep Learning: tensors, deep learning frameworks, data augmentation, training strategies.
- Deep learning Architectures: Convolutional Neural Networks (CNN) ; Recurrent Neural Networks (RNN); Autoencoders; GAN and CGAN
- Problem solving through natural computation: reinforcement learning and evolutionary algorithms.
- Multimedia analysis: Fundamental of multimedia signal processing (audio, video, biosignals). Image representations. Artificial vision. Object detection and recognition. Semantic segmentation. Text representations.
- Knowledge discovery from data: the general data mining process, model construction and testing, performance evaluation and metrics, validation, cross-validation, visualization, model explainability.
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.
- 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. Cognitive architectures||2, 6|
|2||Reasoning: deductive and inductive reasoning; reasoning with uncertainty; case-based reasoning.||2,6|
|3||First order logic and logic programming. Fuzzy logic and the computing with words approach. Bayesian Logic and Bayes Networks||2,6|
|4||Problem solving: search strategies and optimization; solving optimization problems with evolutionary programming||2,6|
|5||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,6|
|6||Introduction to machine learning. Supervised learning: Regression, Support Vector Machines, Decision trees, KNN. Applications of supervised and unsupervised clustering.||3|
|7||Neural models: networks, model design, backpropagation, Gradient descent. Model capacity, overfitting and underfitting, regularization.||3,6|
|8||Deep Learning: tensors, deep learning frameworks, data augmentation, training strategies. The PYTORCH framework and first examples.||4|
|9||Convolutional neural networks (CNN). Architectures, convolutions and pooling layers. Case studies. Applications to computer vision||4|
|10||Recurrent Neural networks (RNN), Long Term Short Term Memory (LSTM). Autoencoders. GANs and CGANs. Case studies.||4|
|11||Problem solving through natural computation: reinforcement learning and evolutionary algorithms.||6|
|12||Multimedia analysis: Fundamental of multimedia signal processing (audio, video, biosignals). Image representations. Artificial vision. Object detection and recognition. Semantic segmentation. Text representations.||6|
|13||Knowledge discovery from data: the general data mining process, model construction and testing, performance evaluation (metrics and crossvalidation). Available cognitive services and API||3,6|
|14||Decision making and the design of decision support systems. Applications: recommender systems and business intelligence. AI in medicine and heathcare||3,6|
|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. Applications. Augmenting the NAO perceptual and cognitive system. The challenges of multimodal interaction.||6|
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 a project work (70% of the final grade) and of 3 questions on key concepts and methodologies covered in the course (30% of the grade). Assessment criteria include: depth of analysis, adequacy, correctness and originality of the design solutions to the project work, 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 projects are available in Studium