370 likes | 660 Vues
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 Inductive models vs. Trasductive models Graph-based Algorithms Multiview Algorithms
E N D
Semi-Supervised Learning Data Mining e Scoperta di Conoscenza
Outline • Introduzione al Semi-SupervisedLearning • Algoritmi di semi-supervised learning • Self Training • Generative Models • T-SVMs • Inductivemodels vs. Trasductivemodels • Graph-basedAlgorithms • MultiviewAlgorithms • References
Introduzione al Semi-SupervisedLearning • 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-SupervisedLearning • 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-SupervisedLearning • 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-SupervisedLearning • A cosa servono i campioni senza categorizzazione? • Assumendo che ogni classe sia un gruppo ben localizzato • Il decisionboundary viene spostato
Introduzione al Semi-SupervisedLearning • 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 un • Aggiunge al training set • Torna al passo 2 fino al soddisfacimento (dipende dalle diverse varianti) • Addestra nuovamente f sul nuovo training set ottenuto • 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à
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 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 è il decisionboundary?
Generative Models • Nell’esempio proposto si hanno due classi, quindi: • Il vettore di parametri • I GaussianMixtureModels (GMMs) • La classificazione si calcola
Generative Models • Il modello più verosimile con relativo decisionboundary
Generative Models • Aggiungendo i campioni non etichettati
Generative Models • Il modello più verosimile con relativo decisionboundary
Generative Models • La differenza: i modelli massimizzano quantità diverse
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 calcolare i parametri con un approccio MLE (vedi l’EM – ExpectationMaximization) • Dai dati non etichettati
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 è 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
T-SVMs • Le TrasductiveSupportVectorMachines (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 le etichette dei campioni. H+ H- w M d
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 • 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)
Inductivemodels vs. Trasductivemodels • 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-basedAlgorithms • 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-basedAlgorithms • Attraverso le istanze non etichettate è possibile cogliere strutture interessanti nei dati
Graph-basedAlgorithms • 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-basedAlgorithms • 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
MultiviewAlgorithms • 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
MultiviewAlgorithms • 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
MultiviewAlgorithms • 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
MultiviewAlgorithms • Nel dettaglio: • Divide in e • Addestra f1su ed f2 su • Classifica Xu con f1 ed f2separatamente • Aggiungi al training set i campioni (x, f(x)) di Xuche hanno maggiore confidenza per f1 ed f2 • Riaddestra sul nuovo training set f1 ed f2 • Torna al passo 3 fino al soddisfacimento (dipende dalle diverse varianti) rimuovendo, se si desidera, dal training set i campioni aggiunti
MultiviewAlgorithms • 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, BernhardScholkopf (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.