Apprendimento Automatico: Apprendimento Non Supervisionato

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
Strutture dati per insiemi disgiunti
Le distribuzioni di probabilità continue
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
Mat_Insieme Lavoro di Gruppo Prodotti Notevoli
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
Frontespizio Economia Monetaria Anno Accademico
1 la competenza alfabetica della popolazione italiana CEDE distribuzione percentuale per livelli.
I sistemi di riferimento
CLUSTER ANALYSIS Insieme di tecniche con l’obiettivo di unire le unità di un insieme statistico in un numero finito di classi o gruppi i quali devono.
Cammini minimi con sorgente singola
Implementazione dell algortimo di Viterbi attraverso la soluzione del problema di cammino mi- nimo tramite software specifico. Università degli studi di.
Ordini Parziali - Reticoli
I MATEMATICI E IL MONDO DEL LAVORO
Algoritmi e Strutture Dati
Capitolo 3 Strutture dati elementari Algoritmi e Strutture Dati.
Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie di analisi.
Algoritmi e Strutture Dati
EPA 01/02 III/1 I consumi di prodotti agro-alimentari: differenziazioni nello spazio e nel tempo Cosa spiega le differenze nei consumi tra individui diversi…
EIE 0607 III / 1 A B P a = 30 P b = 35 t = 2, tc = 1 Questo può essere un equilibrio? No! Politiche di un paese importatore: una tariffa allimportazione.
Apprendimento Automatico: Elaborazione del Linguaggio Naturale
Apprendimento Non Supervisionato
Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)
Apprendimento Automatico: Valutazione delle Prestazioni
Obiettivi del corso di Statistica Medica.
U V U V (a) |cfc|=2 prima e dopo (b) |cfc|=2 prima e |cfc|=1 dopo
Algoritmo di Ford-Fulkerson
Algoritmi e Strutture Dati
Programmazione 1 9CFU – TANTE ore
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
Seminario su clustering dei dati – Parte I
Algoritmi di classificazione e reti neurali Seminario su clustering dei dati – Parte I Università di RomaLa Sapienza Dipartimento di Informatica e Sistemistica.
Seminario su clustering dei dati – Parte II
1 A cura di Vittorio Villasmunta Metodi di analisi dei campi meteorologici Corso di base sulluso del software di analisi meteorologica DIGITAL ATMOSPHERE.
Master universitario di II livello in Ingegneria delle Infrastrutture e dei Sistemi Ferroviari Anno Accademico 2012/2013 Cultura dimpresa, valutazione.
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Scritte scritte scritte scritte scritte scritte scritte Scritte scritte Titolo.
Heap binomiali Gli heap binomiali sono strutture dati su cui si possono eseguire efficientemente le operazioni: Make(H) : crea uno heap vuoto Insert(H,
IPERGLICEMIA PARTE I : QUANDO SI HA L’IPERGLICEMIA
Cos’è un problema?.
Num / 36 Lezione 9 Numerosità del campione.
Velocità ed accelerazione
2 3 4 RISERVATEZZA INTEGRITA DISPONIBILITA 5 6.
Nuove frontiere della medicina trasfusionale: il contributo Avis
Esercitazione 1: Rispetto al test di ansia (Media=25; σ=5), calcolare:
Q UESTIONI ETICHE E BIOETICHE DELLA DIFESA DELLA VITA NELL AGIRE SANITARIO 1 Casa di Cura Villa San Giuseppe Ascoli Piceno 12 e 13 dicembre 2011.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE ORDINE DI CHIAMATA a 1minuto e 2 minuti PRINCIPALI TEMPI DELLA COMPETIZIONE.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
1 Guida per linsegnamento nei corsi per il conseguimento del CERTIFICATO DI IDONEITÀ ALLA GUIDA DEL CICLOMOTORE.
Bando Arti Sceniche. Per poter procedere è indispensabile aprire il testo del Bando 2ROL - Richieste On Line.
LE SAI LE TABELLINE? Mettiti alla prova!.
1 Questionario di soddisfazione del servizio scolastico Anno scolastico 2011/2012 Istogramma- risposte famiglie.
Un trucchetto di Moltiplicazione per il calcolo mentale
Capitolo 3 Strutture dati elementari Algoritmi e Strutture Dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Classificazione (aka Cluster Analysis)
NO WASTE Progetto continuità scuola primaria scuola secondaria Salorno a.s. 2013_
Numeri Interi senza segno
I chicchi di riso e la sfida al Bramino
Il numero più grande Accademia dei Lincei
TRASFORMATA DI FOURIER
A.P. cat. B - 1 Per chi vuole: Libro di testo D.P. Curtis, K. Foley, K. Sen, C. Morin Informatica di base 2° edizione Mc Graw-Hill Companies.
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Algoritmi di classificazione e reti neurali Seminario su clustering dei dati Università Sapienza di Roma Dipartimento di ingegneria Informatica, Automatica.
Transcript della presentazione:

Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli

Supervisione nell’Apprendimento (arancio, rotondo, classe= ) (giallo, lungo, classe= ) (giallo, rotondo, classe= ) colore forma algoritmo di apprendimento supervisionato forma colore . (arancio, rotondo) (giallo, rotondo) (giallo, lungo) algoritmo di apprendimento non supervisionato

Clustering Suddivide esempi non etichettati in sottoinsiemi disgiunti (cluster), tali che: Gli esempi in uno stesso gruppo sono “molto” simili Gli esempi in gruppi diversi sono “molto” differenti Scopre nuove categorie in modo non supervisionato (a priori non vengono fornite etichette per le categorie)

Clustering: un esempio

Clustering: un esempio

Clustering: un esempio

Clustering: un esempio

Clustering gerarchico (hierarchical clustering) Tipi di Clustering Clustering gerarchico (hierarchical clustering) Formano cluster iterativamente utilizzando cluster precedentemente costituiti Clustering partitivo (partitional clustering) Crea una sola partizione degli esempi in cluster minimizzando una certa funzione di costo

Clustering Gerarchico Costruisce una tassonomia gerarchica ad albero a partire da un insieme di esempi non etichettati L’applicazione ricorsiva di un algoritmo di clustering può produrre un clustering gerarchico Distinguiamo due tipi di clustering gerarchico: Agglomerativo (bottom-up) Divisivo (top-down) animale vertebrato pesce rettile anfibio mammif. verme insetto crostaceo invertebrato

Clustering Partitivo I metodi di clustering partitivo ottengono una singola partizione dei dati, invece di una struttura di clustering (es. albero di clustering) Richiedono di specificare il numero di cluster k desiderati Il numero di cluster k può essere determinato automaticamente generando esplicitamente clustering per diversi valori di k e scegliendo il miglior risultato secondo la funzione di valutazione del clustering

Clustering Gerarchico Agglomerativo Assume l’esistenza di una funzione di similarità per determinare la similarità di due istanze Algoritmo: Parti con un cluster per ogni istanza Finché non c’è un solo cluster: Determina i due cluster ci e cj più simili Sostituisci ci e cj con un singolo cluster ci  cj La “storia” di fusione costituisce un albero binario o gerarchia di clustering (dendrogramma)

Metriche per determinare la distanza Nota: se la distanza è normalizzata tra 0 e 1, la similarità sim(x, y) è data da 1-d(x, y) Distanza euclidea (norma L2): Norma L1 (o distanza di Manhattan):

Cosine Similarity Esempio: similarità del coseno di due vettori di documenti:

Coefficiente di Jaccard Esempio: similarità del coseno di due vettori di documenti:

Misurare la Similarità tra Cluster Nel clustering gerarchico agglomerativo, utilizziamo una funzione di similarità che determina la similarità tra due istanze: sim(x, y) Come calcolare la similarità di due cluster ci e cj sapendo come calcolare la similarità tra due istanze nei due cluster? Single Link: Similarità dei due membri più simili Complete Link: Similarità dei due membri meno simili Group Average: Similarità media tra i membri

Single Link Agglomerative Clustering Utilizziamo la similarità massima tra coppie di istanze: A causa di un effetto concatenamento, può restituire cluster “lunghi e fini” Adeguato in certi domini, come il raggruppamento di isole

Esempio di Single Link

Complete Link Agglomerative Clustering Basato sulla minima similarità tra coppie di istanze: Crea cluster più sferici, normalmente preferibili

Esempio di Complete Link

Calcolare la Similarità tra Cluster Dopo aver fuso i cluster ci e cj, la similarità del clustering ottenuto rispetto a un altro cluster arbitrario ck può essere calcolata come segue: Single Link: Complete Link:

Group Average Agglomerative Clustering Per determinare la similarità tra ci e cj usa la similarità media su tutte le coppie nell’unione di ci e cj. Compromesso tra single e complete link. Se si vogliono cluster più sferici e netti, si deve determinare la similarità media tra coppie ordinate di istanze nei due cluster (invece che tra coppie di istanze nell’unione):

Clustering Partitivo Si deve fornire il numero desiderato di cluster k Si scelgono k istanze a caso, una per cluster, chiamate semi (seeds) Si formano i k cluster iniziali sulla base dei semi Itera, riallocando tutte le istanze sui diversi cluster per migliorare il clustering complessivo Ci si ferma quando il clustering converge o dopo un numero prefissato di iterazioni

K-means Assume istanze a valori reali I cluster sono basati su centroidi o media dei punti in un cluster c: Le istanze vengono riassegnate ai cluster sulla base della distanza rispetto ai centroidi dei cluster attuali

K-means(distanza d, insieme delle istanze X) Algoritmo K-means K-means(distanza d, insieme delle istanze X) Seleziona k istanze a caso {s1, s2, …, sk} X come semi. Finché clustering non converge o si raggiunge criterio di stop: Per ogni istanza x  X: Assegna x al cluster cj tale che d(x, sj) è minimale Aggiorna i semi al centroide di ogni cluster, ovvero per ogni cluster cj: sj = (cj)

K-means: Esempio (k=2) Scegli i semi Riassegna i cluster Calcola i centroidi x Riassegna i cluster x Calcola i centroidi Riassegna i cluster Convergenza!

Obiettivo di K-means L’obiettivo di k-means è di minimizzare la somma del quadrato della distanza di ciascun punto in X rispetto al centroide del cluster cui è assegnato: Così come per gli algoritmi genetici, trovare il minimo globale è un problema NP-hard E’ garantito che l’algoritmo k-means converga a un minimo locale

Ad ogni passo, K-means cerca il clustering ottimale Dimostrazione (assumiamo x a una sola dimensione per semplicità):

Scelta dei Semi I risultati possono variare notevolmente sulla base della selezione dei semi Alcuni semi possono portare a un basso tasso di convergenza o a convergere su clustering sub-ottimali Si possono selezionare buoni semi usando euristiche o come risultato di un altro metodo

Scelta di semi ottimale

Scelta di semi non ottimale

Text Clustering I metodi di clustering possono essere applicati a documenti di testo in modo semplice Tipicamente, si rappresenta un documento mediante vettori TF*IDF (term frequency*inverse document frequency) normalizzati e si utilizza la similarità del coseno Applicazioni: Durante la fase di recupero dei documenti di un sistema di Information Retrieval (IR), si possono fornire documenti nello stesso cluster di quello inizialmente recuperato per aumentare la recall del sistema I risultati di un sistema di IR possono essere presentati per gruppi Produzione automatizzata di tassonomie gerarchiche di documenti per scopi di nagiazione (stile Yahoo & DMOZ).

Clustering basato su grafi Basati su una rappresentazione dei dati sotto forma di grafo di prossimità: Un nodo è un’istanza Un arco rappresenta la prossimità tra due istanze (es. distanza) Eventuale passo di pre-processing: sparsificazione del grafo Per ogni nodo, mantieni solo i k vicini più simili o i vicini la cui similarità è > di una certa soglia 0.5 f2 0.5 f1 0.2 0.1 0.3 f5 0.3 f4 f3 0.2 0.4 f6

Esempi di clustering di grafi a vari livelli di granularità Da: G Karypis, V Kumar (1999). "A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs". Siam Journal on Scientific Computing.

MST (Minimum Spanning Tree) Clustering Clustering basato sul concetto di albero ricoprente Un albero ricoprente minimo è un sottografo che 1) non ha cicli, 2) contiene tutti i nodi del grafo, 3) ha il minimo peso totale tra tutti gli alberi ricoprenti E’ un algoritmo di tipo gerarchico divisivo MST-Clustering(G) Calcola il MST per il grafo di dissimilarità Finché non rimangono solo cluster singoletti Crea un nuovo cluster eliminando un arco corrispondente alla maggiore dissimilarità

Esempio 0.5 f2 0.5 f1 0.2 0.1 0.3 f5 0.3 f4 f3 0.2 0.4 f6

Esempio 0.5 f2 0.5 f1 0.2 0.1 0.3 f5 0.3 f4 f3 0.2 0.4 f6

Esempio f2 f1 0.2 0.1 0.3 f5 0.3 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 0.3 f5 0.3 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 f5 0.3 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 f5 0.3 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 f5 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 f5 f4 f3 0.2 f6

Esempio f2 f1 0.2 0.1 f5 f4 f3 f6

Esempio f2 f1 f5 f4 f3 f6

Hard vs. Soft Clustering Tipicamente il clustering assume che ogni istanza sia assegnata a un solo cluster Questo non permette di esprimere l’incertezza riguardo l’appartenenza di un’istanza a più cluster Il soft clustering fornisce una distribuzione di probabilità per ogni istanza rispetto all’appartenenza a ciascun cluster Le probabilità di appartenenza di ogni istanza su tutti i cluster devono sommare a 1

Problemi nell’Apprendimento Non Supervisionato Come valutare il clustering? Valutazione interna: Separazione netta dei cluster (ad es., l’obiettivo di K-means) Corrispondenza con un modello probabilistico dei dati Valutazione esterna Confronta i cluster con etichette di classe note su dati di benchmark Pseudowords Clustering sovrapponibili Collo di bottiglia della conoscenza

Valutazione esterna del clustering Supponiamo di avere un insieme di dati annotati con classi scelte a mano Applichiamo il nostro algoritmo di clustering Valutiamo misure di aderenza del clustering rispetto al dataset Entropia: Purezza: dove: mij è il numero di istanze nel cluster j di classe i mj è il numero di istanze nel cluster j m è il numero complessivo di istanze

Esempio di valutazione esterna con entropia e purezza Ho un dataset di 10 istanze (m=10) Supponiamo di ottenere il seguente clustering: Classi associate a mano alle istanze: (1) , (2) m1=6, m2=4 m1(1)=4, m1(2)=2, m2(1)=1, m2(2)=3 c2 c1

Collo di bottiglia della conoscenza Spesso si pone un problema di disponibilità e creazione di dataset annotati Metodi debolmente supervisionati o semi-supervisionati Es. Metodi di Bootstrapping Si utilizzano pochi esempi annotati a mano A (semi) e moltissimi esempi non annotati U Si addestra un classificatore su A e si classificano gli esempi in U; i “migliori” esempi in U vengono aggiunti ad A. Si ripete il processo finché U non è vuoto o si raggiunge una certa soglia

Collo di bottiglia della conoscenza Spesso si pone un problema di disponibilità e creazione di dataset annotati Metodi debolmente supervisionati o semi-supervisionati Es. Active learning Si addestra un classificatore con un insieme di addestramento A Si annotano automaticamente i dati in un insieme non etichettato U Si selezionano quelle istanze per le quali il classificatore ha avuto un basso grado di confidenza (istanze incerte) Si chiede l’intervento umano nel validare quelle istanze Si aggiungono le istanze validate all’insieme di addestramento A Si ripete il processo finché non si raggiunge una condizione di terminazione (es. una soglia fissata di confidenza)

Task: Word Sense Induction (Induzione di significati) Data una parola, vogliamo apprendere le classi di significato che essa esprime: Obiettivo: dato un insieme di parole che appaiono insieme alla parola obiettivo (cooccorrenze) in un dataset di riferimento, raggruppare le cooccorrenze in accezioni Si esprime ogni accezione mediante un insieme di parole. Ad esempio: bar1 = { counter, drink, pub, …, restaurant } bar2 = { chocolate, soap, wax, cake, …, tablet } bar3 = { wood, metal, piece, rigid, fasten, weapon, …, escape } bar = , , , … ,

Valutazione WSI: Pseudoparole (Schutze, 1992) Si crea un dataset contenente istanze (ovvero, parole) che si sanno appartenere tutte a una singola classe di significato: Es. parole monosemiche (con un solo significato) Pizza, kalashnikov Dati gli esempi di pizza e kalashnikov: Ieri siamo andati a mangiare una pizza al ristorante Margherita: pizza con margherita e pomodoro Sparò un colpo di kalashnikov in aria. Chi mise il kalashnikov in mano al bambino?

Valutazione WSI: Pseudoparole (Schutze, 1992) Si crea un dataset contenente istanze (ovvero, parole) che si sanno appartenere tutte a una singola classe di significato: Es. parole monosemiche (con un solo significato) Pizza, kalashnikov Dati gli esempi di pizza e kalashnikov: Ieri siamo andati a mangiare una pizzakalashnikov al ristorante Margherita: pizzakalashnikov con margherita e pomodoro Sparò un colpo di pizzakalashnikov in aria. Chi mise il pizzakalashnikov in mano al bambino? Si crea una pseudoparola pizzakalashnikov che rimpiazza le occorrenze di pizza e kalashnikov

Valutazione WSI: Pseudoparole (Schutze, 1992) Si crea un dataset contenente istanze (ovvero, parole) che si sanno appartenere tutte a una singola classe di significato: Es. parole monosemiche (con un solo significato) Pizza, kalashnikov Dati gli esempi di pizza e kalashnikov si crea una pseudoparola pizzakalashnikov Tutte le occorrenze delle due parole vengono sostituite con la pseudoparola (ma è nota la classe corretta per ciascuna istanza) Si può generare un dataset con n classi usando n parole Si applica l’algoritmo di clustering alle cooccorrenze di pizzakalashnikov

Precisione e Recall (cf. (Bordag, 2006)) Dato un cluster del nostro clustering, come determinare se è corretto oppure no? La sua precisione di retrieval (rP) è la percentuale di parole relative a una parola originaria (es. pizza o kalashnikov) La sua recall di retrieval (rR) è la percentuale di cooccorrenze della parola originaria contenute nel cluster Un cluster è considerato accurato se rP ≥ soglia-p e rR ≥ soglia-r Si calcolano precisione e recall per determinare la qualità dell’intero clustering Precisione: frazione di cluster “accurati” Recall: numero di cluster “accurati” diviso numero di pseudoparole

Applicazione: Clustering-based Information Retrieval

Applicazione: Clustering-based Information Retrieval