Perché viene utilizzato l'algoritmo di massimizzazione delle aspettative?


22

Da quel poco che so, l'algoritmo EM può essere usato per trovare la massima probabilità quando si imposta a zero le derivate parziali rispetto ai parametri della probabilità, fornisce una serie di equazioni che non possono essere risolte analiticamente. Ma è necessario l'algoritmo EM invece di usare una tecnica numerica per cercare di trovare il massimo della probabilità rispetto al vincolo dell'insieme di equazioni menzionato.

Risposte:


20

La domanda è legittima e ho avuto la stessa confusione quando ho appreso per la prima volta l'algoritmo EM.

In termini generali, l'algoritmo EM definisce un processo iterativo che consente di massimizzare la funzione di probabilità di un modello parametrico nel caso in cui alcune variabili del modello siano (o siano trattate come) "latenti" o sconosciute.

In teoria, per lo stesso scopo, è possibile utilizzare un algoritmo di minimizzazione per trovare numericamente il massimo della funzione di probabilità per tutti i parametri. Tuttavia, nella situazione reale questa minimizzazione sarebbe:

  1. molto più intenso dal punto di vista computazionale
  2. meno robusto

Un'applicazione molto comune del metodo EM sta adattando un modello di miscela. In questo caso, considerando la variabile che assegna ciascun campione a uno dei componenti come variabili "latenti", il problema è notevolmente semplificato.

Vediamo un esempio. Abbiamo N campioni estratti da una miscela di 2 distribuzioni normali. Per trovare i parametri senza EM dovremmo minimizzare:S={Sio}

-logL(X,θ)=-log[un'1exp((X-μ1)22σ12)+un'2exp((X-μ2)22σ22)]

Al contrario, usando l'algoritmo EM, prima "assegniamo" ciascun campione a un componente ( fase E ) e quindi adattiamo (o massimizziamo la probabilità di) ciascun componente separatamente ( fase M ). In questo esempio il passo M è semplicemente un mezzo ponderato per trovare e . Iterazione su questi due passaggi è un modo più semplice e più robusto per ridurre al minimo .σ k - log L ( x , θ )μKσK-logL(X,θ)


12

EM non è necessario invece di utilizzare una tecnica numerica perché anche EM è un metodo numerico. Quindi non è un sostituto di Newton-Raphson. EM è per il caso specifico quando hai valori mancanti nella matrice dei dati. Si consideri un esempio con densità condizionale . Quindi la probabilità logaritmica di questo è Supponiamo ora di non avere un set di dati completo in modo tale che sia costituito da dati osservati e variabili mancanti (o latenti) , tali che . Quindi la probabilità logaritmica per i dati osservati è f X | Θ ( x | θ ) l ( θ ; X ) = l o g f X | Θ ( X | θ ) X Y Z X = ( Y , Z ) l o b s ( θ , Y ) =X=(X1,...,Xn)fX|Θ(X|θ)

l(θ;X)=logfX|Θ(X|θ)
XYZX=(Y,Z)
loBS(θ,Y)=logfX|Θ(Y,z|θ)νz(dz)
In generale non puoi calcolare direttamente questo integrale e non otterrai una soluzione in formato chiuso per . A tal fine si utilizza il metodo EM. Ci sono due passaggi che sono ripetuti per tempi. In questo questi sono i passi di aspettativa in cui si calcola dove è la stima di nella fase . Quindi calcola la fase di massimizzazione in cui massimizzi rispetto a e setloBS(θ,Y)io(io+1)th
Q(θ|θ(io))=Eθ(io)[l(θ;X|Y]
θ(io)ΘiothQ(θ|θ(io))θθ(io+1)=mun'XQ(θ|θio) . Quindi ripetere questi passaggi fino a quando il metodo converge in un valore che sarà la stima.

Se hai bisogno di maggiori informazioni sul metodo, le sue proprietà, prove o applicazioni dai un'occhiata al corrispondente articolo Wiki .


1
+1 ... EM non è solo per il caso dei valori mancanti.
Glen_b

@Andy: anche considerando il caso di dati mancanti, non capisco ancora perché l'uso di metodi numerici generici per trovare un punto in cui le derivate parziali sono zero non funziona.
user782220

Grazie Glen, lo sapevo solo nel contesto di valori mancanti / variabili latenti. @ user782220: quando non è possibile avere una soluzione in forma chiusa della derivata della verosimiglianza, l'impostazione della derivata uguale a zero non identificherà il parametro. Questo è il motivo per cui usi metodi numerici in questo caso. Per una spiegazione e un esempio vedere la lezione qui: people.stat.sfu.ca/~raltman/stat402/402L5.pdf
Andy,

1

EM viene utilizzato perché è spesso impossibile o impossibile calcolare direttamente i parametri di un modello che massimizza la probabilità di un set di dati dato quel modello.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.