COGNITIVE COMPUTING AND ARTIFICIAL INTELLIGENCEAnno accademico 2021/2022 - 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
APRI IN FORMATO PDF ENGLISH VERSION
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 art technologies and methods from the fields of machine learning, knowledge representation, natural computation, logic and automated reasoning to solve typical and topical problems in application scenarios such as: business intelligence, decision-making support, human-computer interaction. 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 languages supporting the development of semantic web and logic programming applications.
Knowledge and understanding
- Understand the key tenets of modern cognitive architectures
- Understand the mechanisms underlying classical and neural machine learning methods
- Understand differences in approaches to perform reasoning and inference
- Understand the scope of applicability of the main deep learning architectures
Applying knowledge and understanding
- Be able to design, develop and validate systems that learn from heterogeneous data
- Be able to design, develop and use an ontology
- Be able to prototype behaviors of autonomous agents capable to interact adaptively with humans.
- Recognize when a problem is best solved by a machine learning approach or by a symbolic Artificial Intelligence approach
- Recognize the limitations and ethical implications of deploying Artificial Intelligence technologies
- Present orally in English AI methods and architectures to solve domain specific problems
- Document software choices in commented Python notebooks
- Explain the motivations behind specific design choices
- Learning to read effectively scientific papers written in English to focus the key idea and recognize the article contribution
- Learning to repurpose creatively software artifacts
- Learning to collaborate to solve a problem and prepare a joint report
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 and multimedia analysis||4, 6|
|10||Recurrent Neural networks (RNN), Long Term Short Term Memory (LSTM). Autoencoders. GANs and CGANs. Case studies.||4|
|11||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|
|12||Decision making and the design of decision support systems. Applications: recommender systems and business intelligence. AI in medicine and heathcare||3,6|
|13||Theories of perception, action and interaction. Interactive autonomous agents. Human-robot interaction. The challenges of multimodal interaction.||1|
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