Upload
pio-luciani
View
219
Download
1
Embed Size (px)
Citation preview
Semi-Supervised LearningData Mining e Scoperta di Conoscenza
OutlineIntroduzione al Semi-Supervised LearningAlgoritmi di semi-supervised learning
Self TrainingGenerative ModelsT-SVMs
Inductive models vs. Trasductive modelsGraph-based AlgorithmsMultiview Algorithms
References
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
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
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
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
Introduzione al Semi-Supervised Learning
Non sempre il semi-supervised learning porta a miglioramenti della qualità dei predittori
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,
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?
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
Generative ModelsDati etichettati:
Supponendo che i dati siano governati da distribuzioni guassiane, qual è il decision boundary?
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
|,
|,,|
Generative ModelsIl modello più verosimile con relativo decision
boundary
Generative ModelsAggiungendo i campioni non etichettati
Generative ModelsIl modello più verosimile con relativo decision
boundary
Generative ModelsLa differenza: i modelli massimizzano
quantità diverse
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 |,,,|,,
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
Generative ModelsIl modello con i dati non etichettati è molto
più complesso
Soluzioni:EMApprossimazioni variazionaliOttimizzazioni dirette
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à
Generative ModelsEsempio di modello non corretto
T-SVMs
Le Trasductive Support Vector Machines (T-SVMs) sono l’estensione al semi-supervised learning delle SVMs
T-SVMsLe SVMs cercano l’iperpiano di separazione che tende a massimizzare il margine tra le etichette dei campioni.
w
H+
H-
Md
T-SVMsLe 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-SVMsPro
Utilizzabili ovunque siano utilizzabili le SMVHanno un ben definito framework matematico
Contro:Ottimizzazione complessaTrovano ottimi localiApproccio trasduttivo e non generativo
(induttivo)
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
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
Graph-based AlgorithmsAttraverso le istanze non etichettate è
possibile cogliere strutture interessanti nei dati
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:
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
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
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
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
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
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
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.