MACHINE LEARNING

Settore: INF/01Codice: 654AACrediti: 9Semestre: 1
Docenti: Micheli Alessio

Obiettivi di apprendimento

Conoscenze

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.

Modalità di verifica delle conoscenze

La conoscenza viene verificata attraverso un test scritto (report) e un esame orale.

Capacità

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.

Modalità di verifica delle capacità

Gli studenti sono incoraggiati a sviluppare un progetto con sviluppo di modelli e loro applicazione.
Esame orale.

Comportamenti

Consapevolezza dei limiti attuali e delle potenzialità dei sistemi di apprendimento; uso critico dei modelli per problemi reali.

Modalità di verifica dei comportamenti

Gli studenti sono incoraggiati a sviluppare un progetto con sviluppo di modelli e loro applicazione.
Esame orale.

Prerequisiti

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.

Corequisiti

Metodi numeri e ottimizzazione.

Prerequisiti per studi successivi

Corsi avanzati che utilizzano le tecniche di apprendimento automatico.

Indicazioni metodologiche

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.

 

Programma

  • 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, 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.

Bibliografia

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.
  • Ulteriori riferimenti  suggeriti nelle note del corso.

Modalità di esame

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 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 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.

http://pages.di.unipi.it/micheli/DID/

Pagina del corso

http://pages.di.unipi.it/micheli/DID/

Fonte: ESSETRE e Portale esami