Lorsque nous utilisons l'algorithme d'apprentissage de CD persistant pour les machines Bolzmann restreintes, nous commençons notre chaîne d'échantillonnage Gibbs dans la première itération à un point de données, mais contrairement au CD normal, dans les itérations suivantes, nous ne recommençons pas sur notre chaîne. Au lieu de cela, nous commençons là où la chaîne d'échantillonnage de Gibbs dans l'itération précédente s'est terminée.
Dans l'algorithme CD normal, chaque itération évalue un mini-lot de points de données et calcule les chaînes d'échantillonnage de Gibbs à partir de ces points de données eux-mêmes.
Dans un CD persistant, devons-nous conserver les chaînes d'échantillonnage de Gibbs pour chaque point de données? Ou devrions-nous également conserver un mini-lot de chaînes d'échantillonnage Gibbs, qui a commencé à des points de données qui ne sont pas actuellement évalués dans l'itération actuelle?
Il me semble que conserver les chaînes d'échantillonnage de Gibbs pour chaque point de données sera trop lourd, mais d'un autre côté, il semble insuffisant de comparer les signaux de l'échantillon actuel avec les signaux après une longue chaîne de Gibbs qui n'a pas commencé au courant échantillon .
la source
Réponses:
Le document original décrivant cela peut être trouvé ici
Dans la section 4.4, ils discutent des façons dont l'algorithme peut être implémenté. La meilleure implémentation qu'ils ont découverte initialement était de ne réinitialiser aucune chaîne de Markov, de faire une mise à jour complète de Gibbs sur chaque chaîne de Markov pour chaque estimation de gradient et d'utiliser un nombre de chaînes de Markov égal au nombre de points de données d'entraînement dans un mini lot.
La section 3 pourrait vous donner une idée de l'idée clé derrière PCD.
la source
Comme le dit le président, ils ne réinitialisent pas la chaîne pour la partie du gradient négatif.
Quelle est l'intuition derrière cela? Comme l'indique le document d' origine , pour les RBM, vous n'avez pas à réinitialiser la chaîne car il n'y a qu'une seule distribution à partir de laquelle vous devez échantillonner, par opposition à une distribution par point (dont vous pourriez avoir besoin pour les réseaux de croyances). Vous avez raison de penser que pour certains modèles, vous devrez peut-être vous souvenir de la chaîne par point.
Pour les méthodes contrastées: le terme négatif dans la mise à jour est sur une attente ou un échantillon selon une distribution, mais les RBM n'ont qu'une seule distribution (post-burn-in).
la source