mail unicampaniaunicampania webcerca

    Gennaro CORDASCO

    Insegnamento di MACHINE LEARNING AND ARTIFICIAL INTELLIGENCE

    Corso di laurea magistrale in DATA SCIENCE

    SSD: INF/01

    CFU: 6,00

    ORE PER UNITÀ DIDATTICA: 48,00

    Periodo di Erogazione: Annualità Singola

    Italiano

    Lingua di insegnamento

    INGLESE

    Contenuti

    Il corso si compone di tre moduli
    - Fondamenti (3CFU)
    - Elaborazione del segnale e Reti Neurali (3 CFU)
    - Fondamenti di Machine Learning e Laboratorio Applicativo (6 CFU)

    Modulo A: Fondamenti
    Introduzione all'intelligenza artificiale: concetti fondamentali: agente, ambiente, performance - fondamenti: teoria della computazione - modelli di agenti intelligenti
    Problem Solving: strategie di ricerca informate
    Ricerca locale e Problemi di ottimizzazione
    CSP
    Conoscenza, ragionamento e pianificazione: agenti logici
    Modulo B: Elaborazione del segnale e reti neurali
    Fondamenti di elaborazione del segnale;
    Elaborazione del segnale vocale
    Basi neurologiche per la modellazione di reti neurali artificiali
    Mc Culloch e il neurone di Pitts. Il percettore. Reti neurali multistrato. Reti ricorrenti
    Modelli di apprendimento: apprendimento supervisionato, apprendimento non supervisionato
    Mappe autoorganizzanti (SOM) e Modello Kohonen

    Modulo C: Fondamenti di Machine Learning e Laboratorio Applicativo
    Learning from Examples
    Learning Probabilistic Models
    Deep Learning
    Reinforcement Learning
    Applicazioni del Machine Learning:
    Elaborazione del Linguaggio Naturale
    Modelli di Deep Learning per l’Elaborazione del Linguaggio Naturale:
    Modelli di pre-elaborazione per la riduzione della dimensionalità;
    Modelli di Reti Neurali Deep;
    Applicazioni nell’ambito del Text Mining
    Elaborazione delle Immagini e Computer Vision
    Algoritmi di Analisi dei segnali visivi
    Modelli di Reti Neurali Deep per l’elaborazione delle Immagini
    Applicazioni:
    Sicurezza
    Diagnostica Medica
    Supporto alle Decisioni

    Laboratorio ed Esercitazioni Pratiche
    Utilizzo dei principali Frameworks per la progettazione e l’addestramento di DNN
    Librerie Python 3.x per Deep Learning
    TensorFlow Keras
    PyTorch
    Word2Vec
    BERT

    Testi di riferimento


    S. Russell, P. Norvig, Artificial intelligence: a modern approach, volume I, Pearson
    Beale R, Jackson T (1990) Neural Computing: an Introduction, Adam Hilger Bristol, Philadelphia and New York Publishing
    Dubuisson B (2001) NEURAL NETWORKS, GENERAL PRINCIPLES, doi:10.1006/rwvb.2001.0150
    Vapnik VN (2000) The Nature of Statistical Learning Theory. Springer Series in Statistics. Springer.

    Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press.
    Eisenstein, J. (2019). Introduction to natural language processing. MIT press.

    Obiettivi formativi

    Il corso presenta le basi per modellare agenti artificiali che interagiscono con ambienti mutevoli. Si occupa della rappresentazione della conoscenza, delle strategie di problem solving e dell'apprendimento comportamentale.
    Il modulo B fornisce modelli matematici di reti neurali e la loro applicazione per la sintesi e il riconoscimento di segnali fisici.
    Il Modulo C introduce i concetti fondamentali alla base di alcuni dei più recenti e comuni modelli di reti neurali basate su deep learning, illustrandone l’utilizzo in domini quali l’elaborazione automatica del linguaggio naturale e delle immagini e delle loro più comuni applicazioni. Infine, il modulo fornisce le competenze per l’utilizzo di ambienti di progettazione e programmazione avanzata di reti neurali deep e di pipeline applicative per l’elaborazione dei segnali.
    Risultati di apprendimento attesi:
    Durante il corso lo studente dovrà acquisire le seguenti abilità:
    • La capacità di identificare i modelli matematici più idonei per la risoluzione di un problema e per la loro implementazione algoritmica;
    • La capacità di analizzare la complessità del modello matematico prescelto;
    • La capacità di mappare metodi e strumenti a problemi complessi, progettare e implementare agenti artificiali e stimare costi e prestazioni.
    • Una buona conoscenza della struttura fondamentale dei segnali fisici e del loro utilizzo in situazioni concrete;
    • La capacità di analizzare la complessità delle operazioni supportate dai modelli di rete neurale;
    • La capacità di modellare una rete neurale adottando gli opportuni strumenti e ambienti applicativi di sviluppo.

    Prerequisiti

    Lo studente deve avere sia delle buone abilità informatiche sia una buona conoscenza della matematica di base.
    Consolidata conoscenza dei fondamenti del linguaggio di programmazione Python.

    Metodologie didattiche

    Il corso prevede una serie di lezioni pratico-teoriche, in cui verranno presentati segnali reali e fisici e problemi relativi al loro trattamento e codificazione su sistemi di elaborazione automatica.
    Requisiti di frequenza
    La frequenza al corso è altamente raccomandata. Per raggiungere un'adeguata preparazione, lo studente dovrebbe dedicare in media un'ora di studio individuale per ogni ora di lezione in aula e un'ora di esercitazione individuale di laboratorio.

    Metodi di valutazione

    La valutazione finale avviene mediante esame orale sui contenuti del corso e presentazione di un progetto.
    Il progetto comprende in un quadro unitario tutti gli argomenti del corso, ed è strumentale per fornire allo studente la capacità di applicare le conoscenze acquisite e lavorare in team
    Il voto è la somma ponderata del contenuto del progetto (50%), della presentazione del progetto (25%) e dell'esame orale (25%)
    La prova orale verte su tutti i contenuti del libro di riferimento e del materiale fornito. La valutazione è in trentesimi. L'esame si svolge in lingua inglese. L'esame si considera superato se viene raggiunto un voto pari o superiore a 18/30. In particolare:
    - Mancato superamento dell'esame: il candidato non raggiunge alcun obiettivo formativo
    - Dalle 18 alle 21: Il candidato risponde correttamente alle domande ma senza la capacità di creare connessioni critiche con problemi reali.
    -Da 22 a 26: Il candidato risponde correttamente alle domande con un'adeguata capacità di creare connessioni critiche con problemi reali-
    -Da 27 a 30 e lode: Il candidato risponde correttamente alle domande, dimostrando piena indipendenza di giudizio e di critica, articolando il discorso in modo specialistico con un'ottima esposizione di vocabolario ed esposizione.

    Altre informazioni

    Materiale aggiuntivo sarà disponibile sul sito web del corso

    Programma del corso

    Modulo A Fondamenti
    - Introduzione all'intelligenza artificiale: concetti fondamentali: agente, ambiente, performance - fondamenti: teoria della computazione - modelli di agenti intelligenti
    - Problem Solving: strategie di ricerca informate
    - Ricerca locale e Problemi di ottimizzazione
    - CSP
    - Conoscenza, ragionamento e pianificazione: agenti logici
    Modulo B Elaborazione del segnale e reti neurali
    - Fondamenti di elaborazione del segnale;
    - Elaborazione del segnale vocale;
    - Basi neurologiche per la modellazione di reti neurali artificiali;
    - Mc Culloch e il neurone di Pitts. Il percettore. Reti neurali multistrato. Reti ricorrenti;
    -Modelli di apprendimento: apprendimento supervisionato, apprendimento non supervisionato;
    -Mappe autoorganizzanti (SOM) e Modello Kohonen;
    Modulo C: Fondamenti di Machine Learning e Laboratorio Applicativo
    Learning from Examples
    Learning Probabilistic Models
    Deep Learning
    Reinforcement Learning
    Applicazioni del Machine Learning:

    Elaborazione del Linguaggio Naturale
    Tipologie e Approcci di Analisi del Testo
    Riconoscimento delle parti del discorso (PoS Tagging)
    Riconoscimento delle dipendenze logiche di parti del discorso (Dependency Parsing)
    Riconoscimento di Entità Nominali (Named Entity Recognition)
    Modelli di Deep Learning per l’Elaborazione del Linguaggio Naturale:
    Modelli di pre-elaborazione per la riduzione della dimensionalità:
    Word Embeddings
    Autoencoders
    Modelli di Reti Neurali Deep:
    Reti Convoluzionali (CNNs)
    Reti Ricorrenti (RNNs)
    Reti Ricorrenti Sequenziali Bidirezionali (LSTM/Bi-LSTM)

    Applicazioni nell’ambito del Text Mining:
    Detezione delle Opinioni,
    Analisi della polarità dei testi (opinion mining e sentiment analysis)
    Riconoscimento di discorsi a contenuto offensivo, provocatorio e scorretto
    Tutela della privacy e anonimizzazione dei dati sensibili
    Rilevazione delle Notizie False (Fake News) Detection;

    Elaborazione delle Immagini e Computer Vision
    Algoritmi di Analisi dei segnali visivi
    Modelli di Reti Neurali Deep per l’elaborazione delle Immagini
    Rete ResNet
    Database ImageNet
    Applicazioni:
    Sicurezza
    Diagnostica Medica
    Supporto alle Decisioni


    Laboratorio ed Esercitazioni Pratiche
    Utilizzo dei principali Frameworks per la progettazione e l’addestramento di DNN
    Librerie Python 3.x per Deep Learning
    TensorFlow Keras
    PyTorch
    Word2Vec
    BERT


    English

    Teaching language

    ENGLISH

    Contents

    The course consists of three modules
    - Fundamentals (3CFU)
    - Signal processing and Neural Networks (3 CFU)
    - Machine Learning Fundamentals, Practice and Applications (6CFU)

    Module A: Fundamentals
    Introduction to artificial intelligence: fundamental concepts: agent, environment, performance - foundations: theory of computation - intelligent agent models
    Problem Solving: informed search strategies - local search and optimization problems
    CSP
    Knowledge, reasoning, and planning: Logical Agents


    Module B: Signal processing and Neural Networks
    Fundamentals of signal processing;
    Voice signal processing
    Neurological basis for modeling artificial neural networks
    Mc Culloch and Pitts' neuron. The perceptor. Multilayer Neural Networks. Recurring networks
    Learning models: supervised learning, unsupervised learning
    Self organizing Maps (SOM) and Kohonen Model

    Module C: Machine Learning Fundamentals, Practice and Applications
    Learning from Examples
    Learning Probabilistic Models
    Deep Learning
    Reinforcement Learning
    Machine Learning Applications
    Natural Language Processing (NLP)
    Deep Learning Models for NLP:
    Preprocessing Models for dimensionality reduction
    Deep Neural Networks Models
    Practical Examples and Applications to Text Mining
    Image Processing and Computer Vision(CV)
    Image Processing Methods and Algorithms
    Deep Neural Networks Models for CV
    Applications of CV:
    Security
    Healthcare and Medicals
    Decision Support

    Lab and Practical Activities
    Practical introduction to the most common programming environments and frameworks for Deep Learning and Deep Neural Networks design and management:
    Python Modules for Deep Learning
    TensorFlow Keras
    PyTorch
    Word2Vec
    BERT

    Textbook and course materials


    S. Russell, P. Norvig, Artificial intelligence: a modern approach, volume I, Pearson
    Beale R, Jackson T (1990) Neural Computing: an Introduction, Adam Hilger Bristol, Philadelphia and New York Publishing
    Dubuisson B (2001) NEURAL NETWORKS, GENERAL PRINCIPLES, doi:10.1006/rwvb.2001.0150
    Vapnik VN (2000) The Nature of Statistical Learning Theory. Springer Series in Statistics. Springer.
    Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT press.
    Eisenstein, J. (2019). Introduction to natural language processing. MIT press.



    Course objectives

    The course presents the foundations for modelling artificial agents interacting with changing environments. It addresses knowledge representation, problem solving strategies and behavioral learning.
    Module B provides mathematical models of neural networks and their application for the synthesis and recognition of physical signals.
    Module C introduces basic concepts for understanding some of the most common neural networks models recently based on deep learning and provides examples of effective application domains, as the ones provided by the automatic natural language processing and automatic computer vision.
    Finally, this module provides basis for approaching structured programming environments and frameworks and the skills to design and implement a deep neural network able to solve an effective application problem to process any kind of signals.
    Expected learning outcomes:
    During the course the student should acquire the following skills:
    The ability to identify the most suitable mathematical models for solving a problem and for their algorithmic implementation;
    The ability to analyze the complexity of the chosen mathematical model;
    The ability to map methods and tools to complex problems, design and implement artificial agents and estimate cost and performance.
    A good knowledge of the fundamental structure of physical signals and their use in concrete situations;
    The ability to analyze the complexity of the operations supported by neural network models;
    The ability to model a neural network by adopting the suitable programming tools and frameworks.

    Prerequisites

    Basic notions of mathematics and computer science.
    Well-assessed notions of Python programming language.

    Teaching methods

    The course provides a series of practical-theoretical lessons, where real and physical signals and problems related to their treatment and coding on automatic processing systems will be presented.
    Frequency requirements
    Course attendance is highly recommended. To achieve adequate preparation, the student should spend an average of two hours of individual study for each hour of classroom lessons and one hour of individual laboratory practice.


    Evaluation methods

    The final evaluation is by oral examination on the contents of the course and presentation of a project.
    The project includes into a unitary framework all the topics of the course, and is instrumental for providing the student with the skill for applying the acquired knowledge and working in team
    The grade is the weighted sum of project content (50%), project presentation (25%) and oral examination (25%)
    The oral exam focuses on all contents of referred book and material provided. The evaluation is in thirtieths. The exam take place in English. The exam is considered passed if a grade equal to or greater than 18/30 is reached. In particular:
    - Failure to pass the exam: the candidate does not reach any learning objective
    - From 18 to 21: The candidate answers the questions correctly but without the ability to create critical connections with real problems.
    -From 22 to 26: The candidate answers the questions correctly with an adequate ability to create critical connections with real problem-
    -From 27 to 30 cum laude: The candidate answers the questions correctly, showing full independence of judgment and criticism, articulating the discourse in a specialized way with an excellent display of vocabulary and exposition.

    Other information

    Additional material will be available on the course website

    Course Syllabus

    Module A Fundamentals
    - Introduction to artificial intelligence: fundamental concepts: agent, environment, performance - foundations: theory of computation - intelligent agent models
    - Problem Solving: informed search strategies - local search and optimization problems - CSP
    - Knowledge, reasoning, and planning: Logical Agents
    Module B Signal processing and Neural Networks
    - Fundamentals of signal processing;
    -Voice signal processing;
    -Neurological basis for modeling artificial neural networks;
    -Mc Culloch and Pitts' neuron. The perceptor. Multilayer Neural Networks. Recurring networks;
    -Learning models: supervised learning, unsupervised learning;
    -Self organizing Maps (SOM) and Kohonen Model;
    Module C:
    Module C: Machine Learning Fundamentals, Practice and Applications
    Learning from Examples
    Learning Probabilistic Models
    Deep Learning
    Reinforcement Learning
    Machine Learning Applications

    Natural Language Processing (NLP)
    NLP and Text Analysis Approaches:
    Part-of-Speech Recognition (PoS Tagging)
    Dependency Parsing and Co-reference Resolution
    Named Entity Recogntion (NER)
    Deep Learning Models for NLP:
    Preprocessing Models for dimensionality reduction:
    Word Embeddings
    Autoencoders
    Deep Neural Networks Models:
    Convolutional Neural Networks (CNNs)
    Recurrent Neural Networks (RNNs)
    BIDIRECTIONAL LONG SHORT TERM MEMORY Networks (Bi-LSTM)

    Practical Examples and Applications to Text Mining:
    Opinion Mining
    Sentiment Analysis
    Hateful Speech Recognition
    Privacy Preserving Anonymization
    Fake News Detection

    Image Processing and Computer Vision(CV)
    Image Processing Methods and Algorithms
    Deep Neural Networks Models for CV
    ResNet Network
    ImageNet Database
    Applications of CV:
    Security
    Healthcare and Medicals
    Decision Support

    Lab and Practical Activities
    Practical introduction to the most common programming environments and frameworks for Deep Learning and Deep Neural Networks design and management:
    Python Modules for Deep Learning
    TensorFlow Keras
    PyTorch
    Word2Vec
    BERT

    facebook logoinstagram buttonyoutube logotype