La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 1 Apprendimento Automatico: Apprendimento Non Supervisionato.

Presentazioni simili


Presentazione sul tema: "Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 1 Apprendimento Automatico: Apprendimento Non Supervisionato."— Transcript della presentazione:

1 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 1 Apprendimento Automatico: Apprendimento Non Supervisionato

2 Roberto Navigli 2 Supervisione nellApprendimento algoritmo di apprendimento supervisionato algoritmo di apprendimento non supervisionato (arancio, rotondo, classe= ) (giallo, lungo, classe= ) (giallo, rotondo, classe= ) (giallo, lungo, classe= ) (arancio, rotondo) (giallo, rotondo) (giallo, lungo) colore forma colore....

3 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 3 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)

4 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 4 Clustering: un esempio

5 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 5 Clustering: un esempio

6 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 6 Clustering: un esempio

7 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 7 Clustering: un esempio

8 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 8 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

9 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 9 Clustering Gerarchico Costruisce una tassonomia gerarchica ad albero a partire da un insieme di esempi non etichettati Lapplicazione 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

10 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 10 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

11 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 11 Clustering Gerarchico Agglomerativo Assume lesistenza 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 c i e c j più simili Sostituisci c i e c j con un singolo cluster c i c j La storia di fusione costituisce un albero binario o gerarchia di clustering (dendrogramma)

12 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 12 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 L 2 ): Norma L 1 (o distanza di Manhattan):

13 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 13 Cosine Similarity Esempio: similarità del coseno di due vettori di documenti:

14 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 14 Coefficiente di Jaccard Esempio: similarità del coseno di due vettori di documenti:

15 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 15 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 c i e c j 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

16 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 16 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

17 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 17 Esempio di Single Link

18 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 18 Complete Link Agglomerative Clustering Basato sulla minima similarità tra coppie di istanze: Crea cluster più sferici, normalmente preferibili

19 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 19 Esempio di Complete Link

20 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 20 Calcolare la Similarità tra Cluster Dopo aver fuso i cluster c i e c j, la similarità del clustering ottenuto rispetto a un altro cluster arbitrario c k può essere calcolata come segue: –Single Link: –Complete Link:

21 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 21 Group Average Agglomerative Clustering Per determinare la similarità tra c i e c j usa la similarità media su tutte le coppie nellunione di c i e c j. 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 nellunione):

22 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 22 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

23 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 23 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

24 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 24 Algoritmo K-means K-means(distanza d, insieme delle istanze X) Seleziona k istanze a caso {s 1, s 2, …, s k } X come semi. Finché clustering non converge o si raggiunge criterio di stop: Per ogni istanza x X: Assegna x al cluster c j tale che d(x, s j ) è minimale Aggiorna i semi al centroide di ogni cluster, ovvero per ogni cluster c j : s j = (c j )

25 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 25 K-means: Esempio (k=2) Scegli i semi Riassegna i cluster Calcola i centroidi x x Riassegna i cluster x x x x Calcola i centroidi Riassegna i cluster Convergenza!

26 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 26 Obiettivo di K-means Lobiettivo 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 lalgoritmo k-means converga a un minimo locale

27 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 27 Ad ogni passo, K-means cerca il clustering ottimale Dimostrazione (assumiamo x a una sola dimensione per semplicità):

28 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 28 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

29 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 29 Scelta di semi ottimale

30 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 30 Scelta di semi non ottimale

31 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 31 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).

32 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 32 Clustering basato su grafi Basati su una rappresentazione dei dati sotto forma di grafo di prossimità: –Un nodo è unistanza –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 f1f1 f2f2 f3f3 f4f4 f5f5 f6f

33 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 33 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.

34 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 34 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à

35 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 35 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

36 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 36 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

37 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 37 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

38 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 38 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

39 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 39 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

40 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 40 Esempio f1f1 f2f2 f3f3 f4f4 f5f5 f6f

41 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 41 Esempio f4f4 f5f5 f6f f1f1 f2f2 f3f3

42 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 42 Esempio f4f4 f5f5 f6f f1f1 f2f2 f3f3

43 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 43 Esempio f1f1 f2f2 f3f3 0.2 f4f4 f5f5 f6f6 0.1

44 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 44 Esempio f1f1 f6f6 f2f2 f3f3 f4f4 f5f5

45 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 45 Hard vs. Soft Clustering Tipicamente il clustering assume che ogni istanza sia assegnata a un solo cluster –Questo non permette di esprimere lincertezza riguardo lappartenenza di unistanza a più cluster Il soft clustering fornisce una distribuzione di probabilità per ogni istanza rispetto allappartenenza a ciascun cluster –Le probabilità di appartenenza di ogni istanza su tutti i cluster devono sommare a 1

46 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 46 Problemi nellApprendimento Non Supervisionato Come valutare il clustering? –Valutazione interna: Separazione netta dei cluster (ad es., lobiettivo 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

47 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 47 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: –m ij è il numero di istanze nel cluster j di classe i –mj è il numero di istanze nel cluster j –m è il numero complessivo di istanze

48 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 48 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) m 1 =6, m 2 =4 m 1(1) =4, m 1(2) =2, m 2(1) =1, m 2(2) =3 c1c1 c2c2

49 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 49 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

50 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 50 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 lintervento umano nel validare quelle istanze –Si aggiungono le istanze validate allinsieme di addestramento A –Si ripete il processo finché non si raggiunge una condizione di terminazione (es. una soglia fissata di confidenza)

51 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 51 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 =

52 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 52 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?

53 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 53 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

54 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 54 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 lalgoritmo di clustering alle cooccorrenze di pizzakalashnikov

55 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 55 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à dellintero clustering –Precisione: frazione di cluster accurati –Recall: numero di cluster accurati diviso numero di pseudoparole

56 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 56 Applicazione: Clustering-based Information Retrieval

57 Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 57 Applicazione: Clustering-based Information Retrieval


Scaricare ppt "Apprendimento Automatico: Apprendimento Non Supervisionato Roberto Navigli 1 Apprendimento Automatico: Apprendimento Non Supervisionato."

Presentazioni simili


Annunci Google