J'ai lu quelques explications sur l'algorithme EM (par exemple de Bishop's Pattern Recognition and Machine Learning et de Roger and Gerolami First Course on Machine Learning). La dérivation de EM est ok, je le comprends. Je comprends également pourquoi l'algorithme couvre quelque chose: à chaque étape, nous améliorons le résultat et la probabilité est limitée par 1,0, donc en utilisant un simple fait (si une fonction augmente et est limitée, elle converge), nous savons que l'algorithme converge vers une solution.
Cependant, comment savons-nous qu'il s'agit d'un minimum local? À chaque étape, nous considérons une seule coordonnée (variable latente ou paramètres), donc nous pourrions manquer quelque chose, comme le minimum local nécessitant un déplacement des deux coordonnées à la fois.
Je pense que c'est un problème similaire à celui de la classe générale d'algorithmes d'escalade, dont EM est un exemple. Donc, pour un algorithme d'alpinisme général, nous avons ce problème pour la fonction f (x, y) = x * y. Si nous partons du point (0, 0), alors seulement en considérant les deux directions à la fois, nous pouvons remonter à partir de la valeur 0.
Réponses:
EM n'est pas garanti de converger vers un minimum local. Il est seulement garanti de converger vers un point à gradient nul par rapport aux paramètres. Ainsi, il peut en effet se coincer aux points de selle.
la source
Tout d'abord, il est possible que EM converge vers un min local , un max local ou un point de selle de la fonction de vraisemblance. Plus précisément, comme l'a souligné Tom Minka , l'EM est garanti de converger vers un point à gradient nul .
Je peux penser à deux façons de voir cela; la première vue est pure intuition, et la deuxième vue est l'esquisse d'une preuve formelle. Tout d'abord, je vais expliquer très brièvement comment fonctionne la SE:
Maximisation des attentes en tant que montée de gradient
Esquisse d'une preuve formelle
la source