Existe-t-il des alternatives rapides à l'algorithme EM pour l'apprentissage de modèles avec des variables latentes (en particulier pLSA)? Je suis prêt à sacrifier la précision au profit de la vitesse.
13
Existe-t-il des alternatives rapides à l'algorithme EM pour l'apprentissage de modèles avec des variables latentes (en particulier pLSA)? Je suis prêt à sacrifier la précision au profit de la vitesse.
Réponses:
Les algorithmes de Newton-Raphson peuvent souvent être utilisés. Je ne connais pas pSLA, mais il est assez courant d'utiliser des algorithmes de Newton-Raphson pour les modèles de classes latentes. Les algorithmes de Newton-Raphson sont un peu plus troublés par de mauvaises valeurs initiales que l'EM, donc une stratégie consiste à utiliser d'abord quelques itérations (disons 20) de l'EM, puis à passer à un algorithme de Newton-Raphson. Un algorithme avec lequel j'ai eu beaucoup de succès est: Zhu, Ciyou, Richard H. Byrd, Peihuang Lu et Jorge Nocedal (1997), "Algorithm 778: L-BFGS-B: Fortran subroutines for large-scale bound- optimisation contrainte, "ACM Transactions on Mathematical Software (TOMS) archive, 23 (4), 550-60.
la source
Très similaire à l'algorithme EM est l' algorithme MM qui exploite généralement la convexité plutôt que les données manquantes pour majorer ou minorer une fonction objective. Cependant, vous devez vérifier si l'algorithme MM est applicable à votre problème particulier.
la source
Pour le LDA, le "LDA en ligne" est une alternative rapide aux méthodes par lots comme l'EM standard (http://www.cs.princeton.edu/~blei/papers/HoffmanBleiBach2010b.pdf).
David Blei fournit un logiciel sur sa page: http://www.cs.princeton.edu/~blei/topicmodeling.html
la source
Une autre alternative non mentionnée jusqu'à présent dans les réponses est les approximations variationnelles. Bien que ces algorithmes ne soient pas exactement des algorithmes EM dans tous les cas, dans certains cas, les algorithmes EM limitent les cas des algorithmes variationnels de champ moyen bayésien. La limite se rapporte au cas limite des hyper-paramètres, le choix des valeurs limites - dans certains cas - vous donnera l'algorithme EM.
Dans les deux cas (algorithmes EM, VB ou même MM), il existe 2 façons génériques d'accélérer les choses:
(1) réduire la dimensionnalité du problème - d'unp -dim problème à p problèmes univariés. Ce sont généralement des algorithmes de descente de coordonnées, mais j'ai vu des algorithmes MM qui font également ce type d'accélération.
(2) améliorer le taux de convergence de votre algorithme EM (ou autre type). Dans un commentaire, JohnRos a mentionné l'accélération d'Aitken. Cela vient du monde de l'analyse numérique mais est discuté dans le livre EM de McLachlan et Krishnan.
Il y en a peut-être d'autres qui m'ont manqué, mais ceux-ci semblent être les deux grands.
la source