CdSINFORMATICA
Codice654AA
CFU9
PeriodoPrimo semestre
LinguaInglese
Moduli | Settore/i | Tipo | Ore | Docente/i | |
MACHINE LEARNING | INF/01 | LEZIONI | 72 |
|
Gli obiettivi del corso sono di introdurre i principi e i metodi dell'apprendimento da insiemi di dati, con particolare attenzione alle reti neurali e alle loro evoluzioni, oggi alla base della costruzione di sistemi intelligenti e sistemi adattivi in molti domini applicativi innovativi in informatica e in settori interdisciplinari. Il corso intende fornire i fondamenti di Machine Learning per gli scopi di costruzione sia di nuovi sistemi intelligenti adattivi sia di modelli predittivi per l'analisi dei dati.
Il corso si focalizza in particolare sull'analisi critica delle caratteristiche per la realizzazione e l'uso appropriato di algoritmi di apprendimento di funzioni da esempi e per la modellazione e la rigorosa valutazione sperimentale.
Lo studente che completa il corso sarà in grado di dimostrare una solida conoscenza dei principali modelli e algoritmi di apprendimento, con enfasi al paradigma delle reti neurali. Sarà inoltre consapevole:
Dell'inquadramento critico delle caratteristiche e limitazioni delle metodologie di apprendimento.
Dei fondamenti teorici: principi induttivi alla base dei processi di apprendimento.
Delle tecniche di validazione e dei domini applicativi.
The course introduces the machine learning principles and models, including basic theory of learning. The course provides the Machine Learning basis for both the aims of building new adaptive Intelligent Systems and powerful predictive models for Intelligent Data Analysis.
The focus is on the critical analysis of the characteristics for the design and use of the algorithms for learning functions from examples and for the rigorous experimental evaluation.
The student who successfully completes the course will be able to demonstrate a solid knowledge of the main models and algorithms for learning functions from data, with a focus on Neural Networks and related methods. The student will be aware of the general conceptual framework of modern machine learning; of the basic principles of computational learning processes; of rigorous validation techniques; of the critical characteristics for the use of the learning models to design intelligent/adaptive systems and predictive models for data analysis.
La conoscenza viene verificata attraverso un test scritto (report) e un esame orale.
Knowledge is verified through a written test (report) and an oral exam.
Capacità di progettare soluzioni a problemi con metodi di reti neurali e apprendimento automatico.
Capacità di analisi e sviluppo di modelli come strumento per problemi complessi e/o per l’avanzamento metodologico.
Capacità di applicazione rigorosa e valutazione sperimentale dei metodi di apprendimento.
Learn the key concepts and methods behind the design and development of machine learning system.
Capability of analysis and development of machine learning systems to address a new task and/or to advance the methodolgies.
Ability to apply and to perform a rigorous experimental evaluation of learning methods.
Gli studenti sono incoraggiati a sviluppare un progetto con sviluppo di modelli e loro applicazione.
Esame orale.
The studens are encouraged to develop a project with development of models and their application.
Oral test.
Consapevolezza dei limiti attuali e delle potenzialità dei sistemi di apprendimento; uso critico dei modelli per problemi reali.
Awareness of current potentiality and limitations of machine learning based systems. Critical models applications for real problems.
Gli studenti sono incoraggiati a sviluppare un progetto con sviluppo di modelli e loro applicazione.
Esame orale.
The studens are encouraged to develop a project with development of models and their application.
Oral test.
Analisi matematica: funzioni, calcolo differenziale; algoritmica; algebra lineare (notazione matriciale) e calcolo; elementi di probabilità e statistica.
Co-requisito (in parallelo): Metodi numeri e ottimizzazione.
Elements of mathematical calculus: functions, differential calculus. Algorithms. Elements of matrix calculus and related notations. Elements of probability and statistics.
Co-requisites (in parallel): Numerical and optimization methods
I concetti sono introdotti progressivamente a partire dagli approcci più semplici di apprendimento automatico fino ai modelli allo stato dell'arte, sia neurali che ad essi complementari, nell'ambito dell'inquadramento concettuale generale e moderno del machine learning (apprendimento di funzioni da esempi e ricerca in spazi di ipotesi).
Si intende incoraggiare l’utilizzo di una formulazione computazionale dei problemi e dei sistemi di apprendimento.
Le lezioni sono in aula, tipicamente con l'aiuto di diapositive (proiezione). Partecipazione: fortemente consigliata. Metodi didattici: lezioni e lavoro di progetto.
The concepts are progressively introduced starting from simpler approaches up to the state-of-the-art models in the general conceptual framework of modern machine learning (learning of functions from examples and search in hypothesis spaces). The focus is on the computational formulation of problems and learning systems.
Learning activities:
- attending lectures
- preparation of oral/written report
- individual study
Delivery: face to face, typically with the help of slides (projection)
Attendance: strongly advised
Teaching methods:
- Lectures
- project work
- Introduzione: Compiti computazionali nell'apprendimento predittivo, apprendimento come approssimazione di funzioni e concetto di generalizzazione.
- Modelli e concetti di base: Struttura dello spazio delle ipotesi, spazi discreti e continui, bias induttivo, modelli proposizionali e basati su regole (cenni), modelli lineari (algoritmi di apprendimento e proprietà), nearest neighbor (algoritmi di apprendimento e proprietà), regolarizzazione.
- Modelli a Reti Neurali: Perceptron e proprietà computazionali. Reti Neurali multistrato feedforward: architetture e algoritmi di apprendimento. Reti profonde. Randomized NN. Reti neurali ricorrenti. Regolarizzazione.
- Principi dell'apprendimento, aspetti pratici generali e valutazione: Teoria Statistica dell'Apprendimento. Validazione: model selection e model assessment. Analisi Bias-Variance.
- Support Vector Machines e modelli a Kernel.
- Modelli Bayesiani e Grafici.
- Unsupervised learning: vector quantization, self-organizing map (SOM).
- Introduzione alle Applicazioni.
- Introduzione ai modelli avanzati e all'apprendimento in domini strutturati.
- Progetto applicativo: implementazione e uso di modelli ML/NN con enfasi all'applicazione rigorosa delle tecniche di validazione.
Il nuovo programma dettagliato dell'anno in corso sarà rilasciato a lezione.
- Computational learning tasks for predictions, learning as function approximation, generalization concept.
- Basic concepts and models: Continuos and discrete hypothesis space, inductive bias, linear and nearest neighbor models (learning algorithms and properties), regularization.
- Neural Networks (NN) architectures and learning algorithms: Perceptron. Multi-layers feedforward models. Deep models. Randomized NN. Recurrent NN. Regularization.
- Validation: model selection and model assessment.
- Principles of learning processes: Elements of Statistical Learning Theory. Bias/variance analysis.
- Support Vector Machines and Kernels-based models.
- Probabilistic graphical/Bayesian models.
- Unsupervised learning: vector quantization, self-organizing map (SOM).
- Introduction to benchmarks and applications.
- Introduction to advanced approaches (structured domains).
- Applicative project: implementation and use of ML/NN models with emphasis to the rigorous application of validation techniques.
The new detailed program for the current year will be released to the lessons.
Note del corso (fornite dal docente). Ulteriori riferimenti includono:
- S. Haykin: Neural Networks and Learning Machines, Prentice Hall.
- T. M. Mitchell: Machine learning, McGraw-Hill.
- I. Goodfellow, Y. Bengio, A. Courville: Deep Learning, MIT Press.
- Hastie, Tibshirani, Friedman: The Elements of Statistical Learning,
Springer Verlag. - Ulteriori riferimenti suggeriti nelle note del corso.
Course notes (provided by the instructor). Recommended reading includes the following works; further bibliography will be indicated.
- S. Haykin: Neural Networks and Learning Machines, Prentice Hall.
- T. M. Mitchell: Machine learning, McGraw-Hill.
- I. Goodfellow, Y. Bengio, A. Courville: Deep Learning, MIT Press.
- Hastie, Tibshirani, Friedman: The Elements of Statistical Learning,
Springer Verlag. - Course slides and further readings suggested in the slides.
La prova scritta è tipicamente basata su un report (progetto). Nell'esame scritto lo studente deve dimostrare la propria conoscenza del materiale didattico e riportare la propria esperienza, con una consapevolezza critica, nelle applicazioni e nella valutazione dei modelli di Machine Learning. Gli studenti hanno l'opportunità di sviluppare un progetto (in un team) che realizza un simulatore di un sistema di apprendimento (in genere una semplice rete neurale) e la sua convalida attraverso benchmarks di riferimento.
Il test scritto è tipicamente basato sul materiale del progetto, incluso codice e un rapporto scritto dei risultati sperimentali. Il materiale viene consegnato in anticipo dallo studente.
Il test orale consiste in un'intervista (eventualmente anche attraverso domande scritte/pre-test) tra il candidato e il docente su tutte le parti del programma e, se utile, nella discussione sul test scritto. Durante l'esame orale l'allievo deve essere in grado di dimostrare la propria conoscenza del materiale didattico e di poter discutere la letteratura con profondità e correttezza dell'espressione, mostrando anche la capacità di relazionare le varie nozioni acquisite e una consapevolezza sufficiente dei limiti e delle potenzialità dei sistemi di apprendimento automatico. Per accedere all'esame orale, gli studenti devono aver ottenuto un livello sufficiente nelle prove scritte.
News: per il semestre 2022 (durante il corso) saranno organizzati periodici pre-test intermedi svolti in aula (con politica BYOD, propri device).
Methods:
- Final written exam/written report
- Final oral exam
- In the written exam the student must demonstrate his/her knowledge of the course material and to report their experience, with critical awareness, in the applications and evaluation of Machine Learning models. Students have the opportunity to develop a project (within a team) realizing a learning system simulator (typically a simple neural network) and to validate it through benchmarks.
The written test is typically based on material with the result of the project, including the code and a written report of the experimental results. The material is delivered in advance by the student.
- The oral test consists in an interview (with the possibility of including written questions/pre-test) between the candidate and the course lecturers on all parts of the program and, where appropriate, in the discussion on the written test. During the oral exam the student must be able to demonstrate his/her knowledge of the course material and be able to discuss the reading matter thoughtfully and with propriety of expression, also showing the ability to relate the various notions acquired and a sufficient awareness of the limits and potential of learning systems.
To take the oral exam, students must have obtained a sufficient grade in the written test.
News: for 2022 intermediate in-class (pre) tests (BYOD policy) will be scheduled during the semester.
Viene adoperata la piattaforma Moodle (elearning.di.unipi.it).
Special info 2022: Informazioni sulla modalità delle lezioni per l'autunno 2022 saranno fornite sul sito Moodle del corso e li aggiornate.
We use the Moodle platform (elearning.di.unipi.it).
Special info 2022: Infomation on the course modality for autumn 2022 will be provided in the ML Moodle site and updated therein.