Apprendimento Automatico - A.A. 2007-2008

Docente: Roberto Navigli

Docente Telefono Orario di ricevimento Studio
Roberto Navigli 06-49918472 Lunedì 14:00-15:00 Via Salaria 113 - 3° Piano st. 312

Orari del corso

Quando Dove
Martedì 13.00-15.00 aula V (matematica)
Venerdì 8.30-10.30 aula seminari DI (via salaria 113)

Introduzione

Il corso introduce un'area dell'Intelligenza Artificiale, detta appunto Apprendimento Automatico (Machine Learning). Il corso si svolge in circa 40-45 ore di lezione frontale (10-11 settimane). L'esame consiste in una prova orale, per verificare la conoscenza degli algoritmi studiati, ed una prova pratica (il progetto), sull'uso di (alcuni) degli algoritmi studiati, in vari ambiti applicativi. La prova orale può essere sostituita da una prova scritta che si terrà nei mesi di gennaio e febbraio. Verrà svolta una prova scritta in itinere (a mo' di esonero per la prima parte del programma), come per tutti gli altri corsi, nella settimana prestabilita a tale scopo ogni anno.

Durante il corso, verranno introdotti e discussi i principali algoritmi di apprendimento automatico. Gli studenti potranno, praticamente per ciascun algoritmo, effettuare delle esercitazioni pratiche utilizzando il software Weka, che mette a disposizione implementazioni dei vari algoritmi, e utilities varie per lo studio dei risultati. Viene anche messo a disposizione un sito che raccoglie dati pre-elaborati e praticamente pronti per l'utilizzo da parte di algoritmi di ML, in ambiti vari (medicina, biologia, marketing, riconoscimento di immagini, ecc.).

Avvisi

  • Il ricevimento del 22 settembre 2008 è spostato al 23 settembre, stessa ora.
  • Il ricevimento del 7 e del 21 luglio 2008 è annullato. Per favore, inviate un'email al docente per prendere appuntamento durante la settimana.
  • Causa esami, il ricevimento del 18 febbraio 2008 è anticipato alle ore 11.00 (fino alle ore 12.00).
  • Il docente sarà all'estero per motivi di ricerca dal 25 gennaio al 15 febbraio. Il ricevimento è pertanto sospeso durante quel periodo. Per qualsiasi necessità, potete contattare il docente via email.
  • La lezione di venerdì 14 dicembre 2007 non avrà luogo per la concomitanza con il diciottesimo incontro con le aziende: siete tutti invitati (e interessati) a partecipare! L'incontro si terrà in Aula Alfa (piano terra, via salaria), dalle ore 9.
  • La lezione di venerdì 30 novembre 2007 non avrà luogo.
  • La lezione di venerdì 2 novembre 2007 non avrà luogo.
  • La lezione di venerdì 5 ottobre 2007 non avrà luogo.

Appelli 2007/2008

Il prossimo appello d'esame (orale) per l'A.A. 2007/2008 si terrà il 16 settembre alle ore 9 in aula alfa (via salaria). Per prenotarvi, inviate un'email al docente.

Testi e risultati delle prove precedenti:

Argomenti trattati nel corso

Data Argomenti MS PDF Note
25 settembre 2007 Introduzione ppt pdf  
28 settembre 2007 Apprendimento dei concetti (1) ppt pdf  
2 ottobre 2007 Esercitazione sull'algoritmo VersionSpace ppt pdf  
9 ottobre 2007 Apprendimento dei concetti (2),
Alberi di decisione (1)

ppt

pdf
 
12 ottobre 2007 Alberi di decisione (2)      
16 ottobre 2007 Introduzione a Weka,
Reti neurali (1)
ppt
ppt
pdf
pdf
fino alla diapositiva 56
19 ottobre 2007 Reti neurali (2),
Valutazione delle prestazioni

ppt

pdf
 
23 ottobre 2007 Reti neurali (3)      
26 ottobre 2007 Reti neurali (4)
Esercitazione su Reti neurali

doc

pdf
 
30 ottobre 2007 Esercitazione su alberi di decisione,
Richiamo di concetti di probabilità
doc
ppt

pdf
 
6 novembre 2007 Apprendimento Bayesiano (1) ppt pdf  
9 novembre 2007 Esercitazione di preparazione all'esonero      
13 novembre 2007 Prova intermedia   pdf
20 novembre 2007 Apprendimento Bayesiano (2),
Esercitazione su Naive Bayes,
Weka per Reti Neurali e Naive Bayes

doc

pdf
File ARFF per XOR
e risoluzione dell'ambiguità
delle parole (training e test set)
23 novembre 2007 Algoritmi Genetici, Programmazione Genetica ppt pdf Funzione di fitness per JGap:
il valore della f è il valore decimale dell'istanza

Semplice esempio di AG con JGap
27 novembre 2007 Apprendimento non supervisionato ppt pdf
4 dicembre 2007 Presentazione dei progetti  
7 dicembre 2007 Apprendimento per Rinforzo ppt pdf
11 dicembre 2007 Support Vector Machines (1) ppt pdf  
18 dicembre 2007 Support Vector Machines (2),
Metodi di Ensemble (1)

ppt

pdf
21 dicembre 2007 Metodi di Ensemble (2),
Valutazione delle Prestazioni (2)

ppt
8 gennaio 2008 Esercitazione di preparazione all'esame
11 gennaio 2008 Esercitazione di preparazione all'esame
15 gennaio 2008 Secondo esonero Portate una calcolatrice scientifica!

Programma dettagliato

Introduzione. Il problema dell'apprendimento. Classificatori. Addestramento. Rappresentazione del dominio. Funzione obiettivo e funzione appresa.

Apprendimento di concetti. Rappresentazione delle ipotesi, spazio delle ipotesi. Algoritmo FIND-S. Algoritmo VersionSpace. Concetto di bias o inclinazione. Studio delle curve di apprendimento. Sovradattamento, rumore, attributi irrilevanti.

Alberi di decisione. Caratteristiche. Principio del rasoio di Occam. Algoritmo ID3, concetto di entropia, stima dell'entropia di una classificazione, misure di impurità di una classificazione. Scelta dell'attributo migliore: guadagno informativo e gain ratio. Problemi dell'apprendimento: sovradattamento (reduced error pruning, rule error pruning), valori mancanti. Alberi di decisione con Weka.

Reti Neurali. Storia delle reti neurali. Neurone, rete neurale, caratteristiche. Percettrone, funzione somma e funzione soglia o di attivazione, funzione obiettivo. Funzioni rappresentabili con il percettrone, algoritmo di addestramento del percettrone, convergenza del percettrone. Discesa del gradiente (delta rule), discesa del gradiente stocastica. Reti stratificate alimentate in avanti, algoritmo di Back Propagation. Condizioni di terminazione, convergenza, momento. MultilayerPerceptron con Weka.

Apprendimento Bayesiano. Richiami di calcolo delle probabilità: spazio di campionamento, esiti, eventi, probabilità, probabilità condizionata, somma di probabilità, probabilità congiunte, proprietà fondamentali, teorema di Bayes, variabili aleatorie discrete e continue, massa di probabilità, densità di probabilità, distribuzione di probabilità, valore atteso, varianza, scarto quadratico, distribuzione gaussiana. Teorema di Bayes nell'Apprendimento Automatico, MAP (Maximum A Posteriori) learning, MAP learning per l'apprendimento di concetti, Maximum Likelihood Learning, Optimal Bayes, Naive Bayes. Naive Bayes con Weka.

Algoritmi Genetici. AG: Motivazioni. Algoritmo tipo. Rappresentazione delle ipotesi. Operatori per gli algoritmi genetici. Selezione delle ipotesi migliori. GABIL. Il problema del crowding e possibili soluzioni. Programmazione genetica. Passi preparatori per la PG. Il problema dei blocchi. Algoritmi genetici con JGap.

Apprendimento Non Supervisionato. Unsupervised Learning: Motivazioni. Tecniche di clustering: clustering gerarchico e clustering partitivo. Clustering gerarchico agglomerativo e divisivo. Clustering partitivo: k-means, metriche di distanza, scelta dei semi per k-means. Hard e soft clustering. Fuzzy k-means. Problemi nell'apprendimento non supervisionato.

Apprendimento per Rinforzo. Apprendimento per Rinforzo: Motivazioni. Definizione del modello. Obiettivi. Varianti. Q-Learning: algoritmo, condizioni di convergenza, scelta delle azioni future. Q-Learning per il caso non deterministico.

Support Vector Machine. Macchine a vettori di supporto. Margine di classificazione. Vettori di supporto. SVM lineare. Moltiplicatori Lagrangiani: problema primario e problema duale. Soft Margin Classification. SVM non lineare. Funzioni kernel.

Metodi di Ensemble. Combinare i classificatori: voting semplice e pesato. Generare i classificatori: Bagging, Boosting, AdaBoost.

Valutazione delle Prestazioni. Modalità di test di un classificatore. Matrice di confusione. Misure per valutare le prestazioni: precisione, recall, TP e FP rate, accuratezza, F1 measure, scelta delle misure appropriate. Test chi quadrato per l'indipendenza statistica, applicazione al confronto tra risultati su campioni e classificatori differenti.

Testi

Il testo adottato è:

  • Tom Mitchell, Machine Learning, Mc Graw-Hill, 1997, testo aderente a una buona parte del corso, da complementare con il materiale fornito

Per approfondire alcuni argomenti, si consiglia il seguente testo:

cui si aggiungono i lucidi usati dal docente e alcuni articoli di approfondimento.

Progetto

Il progetto per l'A.A. 2007-2008 può essere scelto da un insieme di 6 proposte del docente (o anche proposto dallo studente, previa accettazione del docente). Informazioni dettagliate sul progetto su questa pagina.

Materiale utile

Di seguito trovate materiale utile per lo svolgimento delle esercitazioni e del progetto:

Per approfondire

-- RobertoNavigli - 07 Dec 2007

Edit | Attach | Watch | Print version | History: r131 < r130 < r129 < r128 < r127 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r131 - 2008-11-08 - RobertoNavigli





 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback