37
Semi-Supervised Learning Data Mining e Scoperta di Conoscenza

Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Embed Size (px)

Citation preview

Page 1: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Semi-Supervised LearningData Mining e Scoperta di Conoscenza

Page 2: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

OutlineIntroduzione al Semi-Supervised LearningAlgoritmi di semi-supervised learning

Self TrainingGenerative ModelsT-SVMs

Inductive models vs. Trasductive modelsGraph-based AlgorithmsMultiview Algorithms

References

Page 3: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Introduzione al Semi-Supervised LearningProblema:

Predizione del comportamento di un dato sistema

Input:Insieme di campioni, estratti dal dominio del sistema, di

cui è nota la classificazioneInsieme 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

Page 4: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Introduzione al Semi-Supervised LearningPerché 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

Page 5: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Introduzione al Semi-Supervised LearningNotazione:

campione x, etichetta yPredittore Dati etichettati Dati senza etichetta , disponibili

durante l’addestramentoSolitamente Test Set , non disponibile durante

l’addestramento

YXf :

),(, :1:1 llll yxYX nlu xX :1

nl mntest xX :1

Page 6: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Introduzione al Semi-Supervised LearningA cosa servono i campioni senza categorizzazione?

Assumendo che ogni classe sia un gruppo ben localizzato

Il decision boundary viene spostato

Page 7: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Introduzione al Semi-Supervised Learning

Non sempre il semi-supervised learning porta a miglioramenti della qualità dei predittori

Page 8: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Self TrainingAlgoritmo:

1. Addestra un modello (a scelta) f su2. Effettua la predizione su un3. Aggiunge al training set4. Torna al passo 2 fino al soddisfacimento (dipende dalle

diverse varianti)5. Addestra nuovamente f sul nuovo training set ottenuto6. Torna al passo 2 fino al soddisfacimento (dipende dalle

diverse varianti) rimuovendo, se si desidera, dal training set i campioni aggiunti

Assunzione:La predizione ottenuta ad ogni passo ha una buona qualità

ll YX ,

uXx xfx,

Page 9: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Self TrainingVarianti:

Quante e quali tuple aggiungere al training set?

Quante volte addestrare il modello scelto?

Quante e quali tuple rimuovere dal training set arricchito?

Page 10: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Self TrainingPro:

Il più semplice algoritmo di self trainingE’ di facile adattamento ad ogni algoritmo di

predizione tradizionale

Contro:Gli errori del modello scelto vengono potenziatiNon sempre converge

Page 11: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsDati etichettati:

Supponendo che i dati siano governati da distribuzioni guassiane, qual è il decision boundary?

Page 12: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsNell’esempio proposto si hanno due classi,

quindi:

Il vettore di parametriI Gaussian Mixture Models (GMMs)

La classificazione si calcola

212121 ,,,,, ww

yyy xNwyxpypyxp ,;,|||,

y

yxp

yxpxyp

|,

|,,|

Page 13: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsIl modello più verosimile con relativo decision

boundary

Page 14: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsAggiungendo i campioni non etichettati

Page 15: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsIl modello più verosimile con relativo decision

boundary

Page 16: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsLa differenza: i modelli massimizzano

quantità diverse

Page 17: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsModelli generativi per il semi-supervised

learningTendono a quantificare

Attraverso le ipotesi MLE: stima di massima verosimiglianza MAP: stima della massima probabilità a posteriori Approcci Bayesiani

uY

uullull YXYXpXYXp |,,,|,,

Page 18: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsEsempio: GMM con MLE logaritmica con k

classiDai dati etichettati

Facile calcolare i parametri con un approccio MLE (vedi l’EM – Expectation Maximization)

Dai dati non etichettati

Page 19: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsIl modello con i dati non etichettati è molto

più complesso

Soluzioni:EMApprossimazioni variazionaliOttimizzazioni dirette

Page 20: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsPro

Possiedono un framework matematico probabilistico molto forte

Se il modello è scelto con criterio, allora ottengono ottimi risultati

ControDifficile è la verifica del modelloTrovano ottimi localiSe il modello scelto non è corretto allora le

tuple non etichettate degradano la qualità

Page 21: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Generative ModelsEsempio di modello non corretto

Page 22: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

T-SVMs

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

Page 23: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

T-SVMsLe SVMs cercano l’iperpiano di separazione che tende a massimizzare il margine tra le etichette dei campioni.

w

H+

H-

Md

Page 24: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

T-SVMsLe T-SVMs massimizzano anche un margine, che

dipende non solo dai campioni etichettati ma anche dai dati senza categorizzazione

SVM T-SVM

Page 25: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

T-SVMs

Page 26: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

T-SVMsPro

Utilizzabili ovunque siano utilizzabili le SMVHanno un ben definito framework matematico

Contro:Ottimizzazione complessaTrovano ottimi localiApproccio trasduttivo e non generativo

(induttivo)

Page 27: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

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 specificiApproccio generale, valido per ogni istanza del dominioComplessità 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 istanzeApproccio diretto sui dati modelli semplici e specificiTrova una soluzione solo per i dati in input

Nuovi dati comportano un nuovo addestramento

Page 28: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Graph-based AlgorithmsI 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

Page 29: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Graph-based AlgorithmsAttraverso le istanze non etichettate è

possibile cogliere strutture interessanti nei dati

Page 30: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Graph-based AlgorithmsIl legame tra le istanze può essere

matematicamente definito attraverso le funzioni di similarità e distanza, es.:Modelli k-NNModelli a decadimento di similaritàSimilarità lungo i percorsi:

Page 31: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Graph-based AlgorithmsPro:

Possiedono un ben definito framework matematico

Ottima qualità dei risultati, se il grafo è adatto ai dati

ControSono sensibili alla struttura dei grafi e dei pesi

dei loro archiBassa qualità dei risultati, se il grafo è non

adatto ai dati

Page 32: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Multiview AlgorithmsIdea: 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

Page 33: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

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

Page 34: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Multiview AlgorithmsIdee 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

Page 35: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Multiview AlgorithmsNel dettaglio:

1. Divide in e2. Addestra f1 su ed f2 su

3. Classifica Xu con f1 ed f2 separatamente

4. Aggiungi al training set i campioni (x, f(x)) di Xu che hanno maggiore confidenza per f1 ed f2

5. Riaddestra sul nuovo training set f1 ed f2

6. Torna al passo 3 fino al soddisfacimento (dipende dalle diverse varianti) rimuovendo, se si desidera, dal training set i campioni aggiunti

ll YX , )1()1( , ll YX )2()2( , ll YX

)1()1( , ll YX )2()2( , ll YX

Page 36: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

Multiview AlgorithmsCo-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

significativeModelli che usano tutti i dati potrebbero

risultare migliori

Page 37: Data Mining e Scoperta di Conoscenza. Outline Introduzione al Semi-Supervised Learning Algoritmi di semi-supervised learning Self Training Generative

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