Apprendimento Non Supervisionato

Slides:



Advertisements
Presentazioni simili
ANALISI DEI CLUSTER (metodo kmeans)
Advertisements

Master Bioinformatica 2002: Grafi Problema: cammini minimi da tutti i vertici a tutti i vertici Dato un grafo pesato G =(V,E,w), trovare un cammino minimo.
Tecniche di Apprendimento Automatico
Sistemi di Classificazione usando NCD
La teoria di portafoglio: cap.7-9
UNIVERSITA’ DI MILANO-BICOCCA LAUREA MAGISTRALE IN BIOINFORMATICA
Bin Packing Problem Best Bins Last Gruppo 7 Claudio Graffone
Campione e campionamento
Sistemi di supporto alle decisioni 4. Clustering
Attività cerebrale I neuroni si attivano in gruppi sotto lazione di uno stimolo Attività in gruppi ben delimitati con alta o bassa attività Il gruppo.
ANALISI CONFORMAZIONALE
ANALISI CONFORMAZIONALE
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.
CAMPIONE E CAMPIONAMENTO
Apprendimento Automatico: Apprendimento Non Supervisionato
Apprendimento Automatico: Apprendimento Pigro (Lazy Learning)
Valutazione delle ipotesi
Apprendimento di funzioni algebriche
Apprendimento Automatico: Apprendimento per Rinforzo Roberto Navigli Apprendimento Automatico: Apprendimento per Rinforzo.
ANALISI DEI GRUPPI seconda parte
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Alberi di Ricorrenza Gli alberi di ricorrenza rappresentano un modo conveniente per visualizzare i passi di sostitu- zione necessari per risolvere una.
1 Querying - Parte II Modelli per la ricerca. 2 Rappresentazione e Vector Space (VS) Ogni doc. j è un vettore di valori tf idf Si può normalizzare a lunghezza.
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.
BIOINGEGNERIA S. Salinari Lezione 4.
Modelli probabilistici
Scheduling in GrADS Il progetto GrADS (Grid Application Development Software) ha lo scopo di semplificare lo sviluppo di unapplicazione Grid. Tra le funzionalità
Analisi dei gruppi – Cluster Analisys
Chapter 14, Hastie , Tibshirani and Friedman
Clustering Mercoledì, 24 novembre 2004 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Density-Based Clustering.
Clustering Martedì, 30 novembre 2004 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.
Determinazione Orbitale di Satelliti Artificiali Lezione 5
Ingegneria della conoscenza e sistemi esperti Dario Bianchi, 1999 Risoluzione di problemi e ricerca.
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.
incertezza di misura prove chimiche
APPLICAZIONI DI INTELLIGENZA ARTIFICIALE ALLA MEDICINA
MEDIE STATISTICHE.
La Classificazione non supervisionata
Tecniche descrittive Utilizzano modelli matematici per semplificare le relazioni fra le variabili in studio Il fine è la descrizione semplificata del fenomeno.
Algoritmi e Strutture Dati
STATISTICA PER LE DECISIONI DI MARKETING
UNIVERSITÀ DI PISA FACOLTÀ DI INGEGNERIA CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA INFORMATICA PER LA GESTIONE D’AZIENDA Tesi di laurea: Progettazione.
Classificazione (aka Cluster Analysis)
ALGORITMI a.
ROCK A Robust Clustering Algorithm for Categorical Attributes Sudipto Guha, Rajeev Rastogi, Kyuseok Shim Sistemi Informativi per le Decisioni a.a. 2005/2006.
Rete di Hopfield applicata al problema del TSP Federica Bazzano
Gli Algoritmi L’algoritmo è un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si.
Lez.13: Unsupervised classification: clustering gerarchico
Algoritmi di classificazione e reti neurali Seminario su clustering dei dati Università Sapienza di Roma Dipartimento di ingegneria Informatica, Automatica.
SONIA: A Service for Organizing Networked Information Autonomously Stud. Davide D’Alessandro Prof. Amedeo Cappelli Seminario di ELN – A.A. 2002/2003.
Capitolo 13 Cammini minimi: Algoritmo di Floyd e Warshall Algoritmi e Strutture Dati.
Paola Disisto, Erika Griffini, Yris Noriega.  Insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce.
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Tecniche di analisi matematica. Gli studi di autenticazione e di tracciabilità sugli alimenti sono generalmente effettuati individuando variabili chimico-fisiche.
Il simulated annealing (SA)
APPROSSIMAZIONE DI FUNZIONI
Flusso di Costo Minimo Applicazione di algoritmi: Cammini Minimi Successivi (SSP) Esercizio 1 Sia data la seguente rete di flusso, in cui i valori riportati.
M. De Cecco - Sensor Fusion: teoria ed applicazione alla percezione di sistemi robotici SLAM Simultanea localizzazione e mappatura di veicoli autonomi.
Pattern Recognition Lez.14: Miscugli di Gaussiane.
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Self-Organizing Map (SOM Kohonen, 1981) è una tecnica di visualizzazione dei dati multidimensionali SOM è una mappa mono- (bi-)dimensionale che rappresenta.
Algoritmi Avanzati a.a.2011/2012 Prof.ssa Rossella Petreschi Simulazione di lettura e scrittura concorrente Tecnica dell’accelerated cascading Lezione.
UNIVERSITA’ DI MILANO-BICOCCA LAUREA MAGISTRALE IN INFORMATICA Corso di APPRENDIMENTO AUTOMATICO Prof. Giancarlo Mauri Lezione Clustering.
6 Inchiesta Giulio Vidotto Raffaele Cioffi. Indice: 6.1 Come si prepara un questionario 6.2 Come somministrare un questionario 6.3 Campionamento.
Algoritmi di routing statici (pag.72) UdA2L4 Questi algoritmi, sono eseguiti solamente all'avvio della rete, e le decisioni di routing a cui essi pervengono.
Transcript della presentazione:

Apprendimento Non Supervisionato Unsupervised Learning

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

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: Cosine Similarity (trasformata in una distanza sottraendo da 1):

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

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

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

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

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

Fuzzy Clustering Approccio di soft clustering Si definisce un grado di appartenenza ui(x) dell’istanza x all’i-esimo cluster, tale che: dove k è il numero di cluster In fuzzy k-means, il centroide di un cluster ci è calcolato come la media di tutti i punti, ciascuno pesato rispetto al suo grado di appartenenza a ci m è l’esponente di fuzzyness (es. m=2)

Fuzzy k-means Definiamo il grado di appartenenza di x a ci: L’algoritmo è simile a k-means: Fuzzy k-means(distanza d, insieme delle istanze X) Inizializza i coefficienti ui(x) per ogni i  {1, …, k} e x  X (casualmente o sulla base di un’applicazione di k-means) Finché non si raggiunge criterio di stop: Calcola i centroidi per ogni cluster ci Aggiorna i coefficienti ui(x) di x di essere nel cluster ci

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 Clustering sovrapponibili Metodi semi-supervisionati Si utilizzano pochi esempi annotati a mano e moltissimi esempi non annotati