620 likes | 762 Views
Learning finite Mixture-Models. Giuseppe Manco. Clustering. La problematica del clustering è relativa al learning non supervisionato Abbiamo un dataset con istanze la cui etichetta è sconosciuta Obiettivo del clustering è individuare raggruppamenti delle istanze del dataset
E N D
Learning finite Mixture-Models Giuseppe Manco
Clustering • La problematica del clustering è relativa al learning non supervisionato • Abbiamo un dataset con istanze la cui etichetta è sconosciuta • Obiettivo del clustering è individuare raggruppamenti delle istanze del dataset • I raggruppamenti devono essere tali per cui ci sia alta similarità fra le istanze delle stesso cluster, mentre ci sia alta dissimilarità fra le istanze di cluster differenti • Il clusterer deve ricostruire la struttura nascosta alla base dei dati a disposizione
Model-based Clustering • In questo approccio si suppone che le istanze del dataset siano state generate a partire da un mix di modelli probabilistici • Per questa ragione si parla anche di Probabilistic Clustering • Il clusterer, quindi, deve stimare quali siano i parametri delle distribuzioni che hanno più verosimilmente generato il dataset di training
Stima per massima verosimiglianza(maximum likelihood) (1/2) • Avendo i dati che provengono da una distribuzione di forma nota si vogliono stimare i parametri per cui è più verosimile osservare i dati che si hanno effettivamente a disposizione • Sia il dataset a disposizione, si definisce la likelihood come: • Dove q rappresenta il vettore di tutti i parametri della distribuzione
Stima per massima verosimiglianza(maximum likelihood) (2/2) • Si devono quindi trovare quali siano i parametri della distribuzione che massimizzano la likelihood • Spesso si massimizza il logaritmo della likelihood, la log-likelihood, perché si possono ottenere espressioni analitiche più semplici:
Dove è la probabilità che venga scelta la k-ma distribuzione, e prende il nome di mixing probability, e è la k-ma distribuzione Mixture-Model (1/5) • Per il clustering si utilizza l’approccio a mixture-model • In questo contesto ogni istanza viene generata scegliendo prima, secondo una data probabilità, una particolare distribuzione e poi si genera l’istanza in accordo alla distribuzione scelta • La distribuzione per una istanza è:
Model-Based Clustering • Clustering basato su modelli probabilistici • Si assume che dati siano distribuiti secondo un mix di funzioni di densità • Per ogni funzione i parametri non sono noti • EM • Bayesian clustering
Finite Mixture Models Pesok Modellok Parametrik
Esempio: Mistura di Gaussiane • Gaussian mixtures:
Esempio: Mistura di Gaussiane • Gaussian mixtures: Ogni componente è una densità gaussiana con media mkcovarianza Sk
Example: Mixture of Gaussians • Gaussian mixtures: Ogni componente è una densità gaussiana con media mke covarianza Sk Esempio: K=2, 1-dim: {Θ, Ρ} = {m1, s1 , m2, s2 , π1 , π2}
Esempio: Mixture di Naïve Bayes Indipendenza condizionale per ogni componente
Mixtures di Naïve Bayes Termini 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Documenti 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Mixtures di Naïve Bayes Termini 1 1 1 1 1 1 1 1 1 1 1 1 Componente 1 1 1 1 1 1 1 Documenti 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Componente 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Esempio: Mixtures di multinomiali • Le distribuzioni multinomiali modellano il ripetersi di esperimenti indipendenti che possono portare a più risultati: come il lancio di un dado (“Qual è la probabilità che su 4 lanci esca due volte ‘1’ una volta ‘3’ ed una volta ‘6’?) • Una multinomiale è caratterizzata dai parametri che indica qual è la probabilità che si verifichi un evento di classe c • Poiché facciamo riferimento ad un mixture-model di multinomiali, poniamo la probabilità che si verifichi l’evento di classe c nella multinomiale k
La probabilità di osservare una particolare istanza generata da una distribuzione multinomiale è: Esempio: Mixtures di multinomiali • Nel nostro caso, quindi, i dati che osserviamo sono nella forma: , dove è il numero di eventi di classe c per l’istanza i
Sommatoria dentro il logaritmo! Mixture-Model (2/5) • La log-likelihood in questo caso vale: • Questa funzione risulta molto complessa da ottimizzare…
Queste variabili soddisfano la condizione: Mixture-Model (3/5) • Si utilizza uno stratagemma: si suppone l’esistenza delle variabili che indicano se l’istanza i è stata generata dalla distribuzione k • La variabile vale 1 se l’istanza i è stata generata dalla distribuzione k, vale 0 altrimenti.
Solo un termine della sommatoria è diverso da zero… Mixture-Model (4/5) • In questo caso la likelihood e quindi la log-likelihood valgono:
Questa espressione è aleatoria perché contiene le variabili aleatorie • Si può soltanto massimizzarne il valore atteso Mixture-Model (5/5) • Per quanto evidenziato possiamo semplificare l’espressione della log-likelihood:
Expectation-Maximization (1/11) • Questo algoritmo di clustering viene utilizzato per stimare i parametri del mixture-model che è alla base di un dataset • L’algoritmo migliora iterativamente il valore atteso della log-likelihood del mixture-model e con esso la stima dei parametri dei modelli • È caratterizzato da due passi: • Expectation: nel quale si effettua un assegnamento “soft” delle istanze ai cluster (si calcola la probabilità che un’istanza appartenga ad un cluster) • Maximization: nel quale si utilizzano gli assegnamenti del passo precedente per stimare, in maniera pesata in base alla probabilità di appartenenza di un’istanza al cluster, i parametri dei modelli • Si iterano Expectation e Maximization fino alla convergenza dei parametri che si stanno stimando
Expectation-Maximization (2/11) Passo Expectation (g-ma iterazione) • Si definisce la funzione: • Questa è funzione dei parametri q, ed il valore atteso è calcolato a partire dalle stime dell’iterazione precedente sui dati di training
per definizione di valore atteso Responsibility: è la probabilità che sia stata la distribuzione k a generare l’istanza i, considerando corretti i parametri stimati all’iterazione precedente Expectation-Maximization (3/11){Expectation} • L’espressione della funzione Q può essere riscritta come:
Probabilità a priori che venga scelta la distribuzione k: la mixing probability Expectation-Maximization (4/11){Expectation} • Valendo la relazione P(A,B|C)=P(A|B,C)P(B|C) possiamo scrivere che:
Expectation-Maximization (5/11) Passo Maximization (g-ma iterazione) • Si devono individuare i valori di q affinché venga massimizzata la funzione Q, ovvero: • Per far questo calcoliamo le derivate parziali della funzione Q rispetto a tutti i parametri q e le poniamo a zero
Expectation-Maximization (6/11){Maximization di gaussiane} • La massimizzazione deve rispettare i seguenti vincoli: • Utilizziamo, quindi, i moltiplicatori di Lagrange:
Utilizziamo, quindi, i moltiplicatori di Lagrange: Expectation-Maximization (6/11){Maximization di multinomiali} • La massimizzazione deve rispettare i seguenti vincoli:
Expectation-Maximization (7/11){Maximization} Calcolo delle mixing probability:
Expectation-Maximization (8/11){Maximization} • Derivando l’espressione mostrata:
Expectation-Maximization (9/11){Maximization di gaussiane} Calcolo dei parametri delle gaussiane:
Expectation-Maximization (10/11){Maximization} • Derivando l’espressione mostrata:
Expectation-Maximization (9/11){Maximization di multinomiali} Calcolo dei parametri delle multinomiali:
Expectation-Maximization (10/11){Maximization} • Derivando l’espressione mostrata:
Expectation-Maximization (11/11) • Ricapitolando • Expectation: • Maximization: