SemiSupervised Learning Data Mining e Scoperta di Conoscenza

  • Slides: 37
Download presentation
Semi-Supervised Learning Data Mining e Scoperta di Conoscenza

Semi-Supervised Learning Data Mining e Scoperta di Conoscenza

Outline �Introduzione al Semi-Supervised Learning �Algoritmi di semi-supervised learning �Self Training �Generative Models �T-SVMs

Outline �Introduzione al Semi-Supervised Learning �Algoritmi di semi-supervised learning �Self Training �Generative Models �T-SVMs � Inductive models vs. Trasductive models �Graph-based Algorithms �Multiview Algorithms �References

Introduzione al Semi-Supervised Learning �Problema: �Predizione del comportamento di un dato sistema �Input: �Insieme

Introduzione al Semi-Supervised Learning �Problema: �Predizione del comportamento di un dato sistema �Input: �Insieme di campioni, estratti dal dominio del sistema, di cui è nota la classificazione �Insieme di campioni del dominio la cui categorizzazione non è nota �Output: �Un modello di predizione addestrato sul campione etichettato e sull’insieme di dati la cui classe è sconosciuta

Introduzione al Semi-Supervised Learning �Perché il semi-supervised learning? �I campioni non etichettati sono economici

Introduzione al Semi-Supervised Learning �Perché il semi-supervised learning? �I campioni non etichettati sono economici �I campioni etichettati spesso sono costosi � L’annotazione umana è noiosa e dispendiosa � Le etichette spesso richiedono conoscenza di dominio e consultazione di esperti del settore � Le etichette richiedono a volte l’utilizzo di dispositivi specializzati �Possibili miglioramenti della qualità della predizione a basso costo

Introduzione al Semi-Supervised Learning �Notazione: �campione x, etichetta y �Predittore �Dati etichettati �Dati senza

Introduzione al Semi-Supervised Learning �Notazione: �campione x, etichetta y �Predittore �Dati etichettati �Dati senza etichetta , disponibili durante l’addestramento �Solitamente �Test Set , non disponibile durante l’addestramento

Introduzione al Semi-Supervised Learning �A cosa servono i campioni senza categorizzazione? �Assumendo che ogni

Introduzione al Semi-Supervised Learning �A cosa servono i campioni senza categorizzazione? �Assumendo che ogni classe sia un gruppo ben localizzato �Il decision boundary viene spostato

Introduzione al Semi-Supervised Learning �Non sempre il semi-supervised learning porta a miglioramenti della qualità

Introduzione al Semi-Supervised Learning �Non sempre il semi-supervised learning porta a miglioramenti della qualità dei predittori

Self Training �Algoritmo: Addestra un modello (a scelta) f su Effettua la predizione su

Self Training �Algoritmo: Addestra un modello (a scelta) f su Effettua la predizione su un Aggiunge al training set Torna al passo 2 fino al soddisfacimento (dipende dalle diverse varianti) 5. Addestra nuovamente f sul nuovo training set ottenuto 6. Torna al passo 2 fino al soddisfacimento (dipende dalle diverse varianti) rimuovendo, se si desidera, dal training set i campioni aggiunti 1. 2. 3. 4. �Assunzione: �La predizione ottenuta ad ogni passo ha una buona qualità

Self Training �Varianti: �Quante e quali tuple aggiungere al training set? �Quante volte addestrare

Self Training �Varianti: �Quante e quali tuple aggiungere al training set? �Quante volte addestrare il modello scelto? �Quante e quali tuple rimuovere dal training set arricchito?

Self Training �Pro: �Il più semplice algoritmo di self training �E’ di facile adattamento

Self Training �Pro: �Il più semplice algoritmo di self training �E’ di facile adattamento ad ogni algoritmo di predizione tradizionale �Contro: �Gli errori del modello scelto vengono potenziati �Non sempre converge

Generative Models �Dati etichettati: Supponendo che i dati siano governati da distribuzioni guassiane, qual

Generative Models �Dati etichettati: Supponendo che i dati siano governati da distribuzioni guassiane, qual è il decision boundary?

Generative Models �Nell’esempio proposto si hanno due classi, quindi: �Il vettore di parametri �I

Generative Models �Nell’esempio proposto si hanno due classi, quindi: �Il vettore di parametri �I Gaussian Mixture Models (GMMs) �La classificazione si calcola

Generative Models �Il modello più verosimile con relativo decision boundary

Generative Models �Il modello più verosimile con relativo decision boundary

Generative Models �Aggiungendo i campioni non etichettati

Generative Models �Aggiungendo i campioni non etichettati

Generative Models �Il modello più verosimile con relativo decision boundary

Generative Models �Il modello più verosimile con relativo decision boundary

Generative Models �La differenza: i modelli massimizzano quantità diverse

Generative Models �La differenza: i modelli massimizzano quantità diverse

Generative Models �Modelli generativi per il semi-supervised learning �Tendono a quantificare �Attraverso le ipotesi

Generative Models �Modelli generativi per il semi-supervised learning �Tendono a quantificare �Attraverso le ipotesi � MLE: stima di massima verosimiglianza � MAP: stima della massima probabilità a posteriori � Approcci Bayesiani

Generative Models �Esempio: GMM con MLE logaritmica con k classi �Dai dati etichettati �Facile

Generative Models �Esempio: GMM con MLE logaritmica con k classi �Dai dati etichettati �Facile calcolare i parametri con un approccio MLE (vedi l’EM – Expectation Maximization) �Dai dati non etichettati

Generative Models �Il modello con i dati non etichettati è molto più complesso �Soluzioni:

Generative Models �Il modello con i dati non etichettati è molto più complesso �Soluzioni: �EM �Approssimazioni variazionali �Ottimizzazioni dirette

Generative Models �Pro �Possiedono un framework matematico probabilistico molto forte �Se il modello è

Generative Models �Pro �Possiedono un framework matematico probabilistico molto forte �Se il modello è scelto con criterio, allora ottengono ottimi risultati �Contro �Difficile è la verifica del modello �Trovano ottimi locali �Se il modello scelto non è corretto allora le tuple non etichettate degradano la qualità

Generative Models �Esempio di modello non corretto

Generative Models �Esempio di modello non corretto

T-SVMs �Le Trasductive Support Vector Machines (T-SVMs) sono l’estensione al semi-supervised learning delle SVMs

T-SVMs �Le Trasductive Support Vector Machines (T-SVMs) sono l’estensione al semi-supervised learning delle SVMs

T-SVMs Le SVMs cercano l’iperpiano di separazione che tende a massimizzare il margine tra

T-SVMs Le SVMs cercano l’iperpiano di separazione che tende a massimizzare il margine tra le etichette dei campioni. H+ H- w d M

T-SVMs �Le T-SVMs massimizzano anche un margine, che dipende non solo dai campioni etichettati

T-SVMs �Le T-SVMs massimizzano anche un margine, che dipende non solo dai campioni etichettati ma anche dai dati senza categorizzazione SVM T-SVM

T-SVMs

T-SVMs

T-SVMs �Pro �Utilizzabili ovunque siano utilizzabili le SMV �Hanno un ben definito framework matematico

T-SVMs �Pro �Utilizzabili ovunque siano utilizzabili le SMV �Hanno un ben definito framework matematico �Contro: �Ottimizzazione complessa �Trovano ottimi locali �Approccio trasduttivo e non generativo (induttivo)

Inductive models vs. Trasductive models � L’induzione (alla base della maggior parte delle tecniche

Inductive models vs. Trasductive models � L’induzione (alla base della maggior parte delle tecniche di learning) è un procedimento attraverso il quale si cerca di stabilire una legge universale (modello generativo globale) da un insieme di casi specifici � Approccio generale, valido per ogni istanza del dominio � Complessità nel generare i modelli �Obiettivo ben più modesto si pone l’approccio transductive a cui non interessa la costruzione di un modello globale ma semplicemente costruire un modello che sia adatto ad uno specifico insieme di istanze � Approccio diretto sui dati modelli semplici e specifici � Trova una soluzione solo per i dati in input � Nuovi dati comportano un nuovo addestramento

Graph-based Algorithms �I dati sono visti come nodi di un grafo �I legami tra

Graph-based Algorithms �I dati sono visti come nodi di un grafo �I legami tra i dati sono indicati attraverso gli archi (pesati) di un grafo �Assunzione di base: �Istanze connesse da legami forti tendono ad avere la stessa etichetta di classe

Graph-based Algorithms �Attraverso le istanze non etichettate è possibile cogliere strutture interessanti nei dati

Graph-based Algorithms �Attraverso le istanze non etichettate è possibile cogliere strutture interessanti nei dati

Graph-based Algorithms �Il legame tra le istanze può essere matematicamente definito attraverso le funzioni

Graph-based Algorithms �Il legame tra le istanze può essere matematicamente definito attraverso le funzioni di similarità e distanza, es. : �Modelli k-NN �Modelli a decadimento di similarità �Similarità lungo i percorsi:

Graph-based Algorithms �Pro: �Possiedono un ben definito framework matematico �Ottima qualità dei risultati, se

Graph-based Algorithms �Pro: �Possiedono un ben definito framework matematico �Ottima qualità dei risultati, se il grafo è adatto ai dati �Contro �Sono sensibili alla struttura dei grafi e dei pesi dei loro archi �Bassa qualità dei risultati, se il grafo è non adatto ai dati

Multiview Algorithms �Idea: analizzare i dati sotto aspetti diversi �I dati possono essere divisi

Multiview Algorithms �Idea: analizzare i dati sotto aspetti diversi �I dati possono essere divisi per caratteristiche indipendenti �Da queste partizioni (che comprendono anche dati non etichettati) si generano più modelli �I modelli generati, in combinazione, effettuano la predizione finale

Multiview Algorithms �Esempio. Analisi di pagine web �Le pagine web possono contenere testo ed

Multiview Algorithms �Esempio. Analisi di pagine web �Le pagine web possono contenere testo ed immagini �Si possono dividere le informazioni multimediali dal testo �Si possono addestrare due modelli: uno sul testo ed uno sulle immagini �La classificazione delle pagine web avverrà tramite la combinazione dei due modelli

Multiview Algorithms �Idee di base dell’algoritmo Co-training: �Si divide il data set in due

Multiview Algorithms �Idee di base dell’algoritmo Co-training: �Si divide il data set in due porzioni condizionalmente indipendenti � Ogni partizione deve essere popolata da un numero sufficiente di campioni, tale da permettere l’addestramento di un predittore �Si addestrano due modelli di predizione sui due diversi sotto data set �I modelli si addestrano vicendevolmente

Multiview Algorithms �Nel dettaglio: 1. Divide in e 2. Addestra f 1 su ed

Multiview Algorithms �Nel dettaglio: 1. Divide in e 2. Addestra f 1 su ed f 2 su 3. Classifica Xu con f 1 ed f 2 separatamente 4. Aggiungi al training set i campioni (x, f(x)) di Xu che hanno maggiore confidenza per f 1 ed f 2 5. Riaddestra sul nuovo training set f 1 ed f 2 6. Torna al passo 3 fino al soddisfacimento (dipende dalle diverse varianti) rimuovendo, se si desidera, dal training set i campioni aggiunti

Multiview Algorithms �Co-training pro: �Molto semplice, come il self training. Adattabile a tutti i

Multiview Algorithms �Co-training pro: �Molto semplice, come il self training. Adattabile a tutti i predittori esistenti �Meno sensibile agli errori rispetto al self training �Co-training contro: �Le suddivisioni dei dati potrebbero non essere significative �Modelli che usano tutti i dati potrebbero risultare migliori

References �Olivier Chapelle, Alexander Zien, Bernhard Scholkopf (Eds. ). (2006). Semi-supervised learning. MIT Press.

References �Olivier Chapelle, Alexander Zien, Bernhard Scholkopf (Eds. ). (2006). Semi-supervised learning. MIT Press. �Xiaojin Zhu (2005). Semi-supervised learning literature survey. TR-1530. University of Wisconsin-Madison Department of Computer Science. �Matthias Seeger (2001). Learning with labeled and unlabeled data. Technical Report. University of Edinburgh.