Question

Je suis passé par les réseaux de neurones de Geoff Hinton cours sur Coursera et aussi par introduction aux machines de Boltzmann restreintes , encore que je ne comprenais pas l'intuition derrière RBMs.

Pourquoi avons-nous besoin de calculer l'énergie dans cette machine? Et quelle est l'utilisation de la probabilité dans cette machine? J'ai vu aussi cette vidéo . Dans la vidéo, il vient d'écrire les équations de probabilité et de l'énergie avant les étapes de calcul et ne semble pas l'utiliser partout.

Ajout à ce qui précède, je ne suis pas sûr de ce que la fonction de vraisemblance est pour?

Était-ce utile?

La solution

de la GAR sont une bête intéressante. Pour répondre à votre question, et de faire du jogging ma mémoire sur eux, je tire RBMs et parler à travers la dérivation. Vous avez dit que vous êtes confus sur la probabilité, donc ma dérivation sera du point de vue d'essayer de maximiser la probabilité. Commençons donc.

RBMs contiennent deux ensembles différents de neurones, visibles et cachés, je les désignent respectivement $ $ v et $ h $. Compte tenu d'une configuration spécifique de $ v $ et $ h $, nous localiser l'espace de probabilité.

$$ p (v, h) = \ frac {e ^ {- E (v, h)}} {Z} $$

Il y a deux choses plus à définir. La fonction de substitution que nous utilisons pour la carte à partir d'une configuration spécifique à l'espace de probabilité est appelée la fonction d'énergie $ E (v, h) $. La constante $ Z de $ est un facteur de normalisation pour faire en sorte que nous dressons la carte en fait l'espace de probabilité. Maintenant, passons à ce que nous cherchons vraiment; la probabilité d'un ensemble de neurones visibles, autrement dit, la probabilité de nos données. Z = $$ \ sum_ {v \ in V} \ sum_ {h \ in H} e ^ {- E (v, h)} $$ $$ p (v) = \ sum_ {h \ in H} p (v, h) = \ frac {\ sum_ {h \ in H} e ^ {- E (v, h)}} {\ {v sum_ \ in V} \ sum_ {h \ in h} e ^ {- e (v, h)}} $$

Bien qu'il ya beaucoup de termes dans cette équation, il vient simplement à écrire les équations de probabilité correctes. Si tout va bien, jusqu'à présent, cela vous a aidé à réaliser pourquoi nous avons besoin fonction d'énergie pour calculer la probabilité, ou ce qui se fait généralement plus la probabilité p $ non normalisée (v) * Z $. La probabilité est non normalisée utilisée parce que la fonction de partition $ Z $ est très cher à calculer.

Maintenant, passons à la phase d'apprentissage réel de RBMs. Afin de maximiser la probabilité, pour chaque point de données, nous devons faire un pas de gradient pour faire $ p (v) = 1 $. Pour obtenir les expressions de gradient, il prend quelques acrobaties mathématiques. La première chose que nous faisons ici est le journal de $ p (v) $. Nous allons opérer dans l'espace de probabilité de journal à partir de maintenant afin de rendre le calcul possible.

$$ \ log (p (v)) = \ log [\ sum_ {h \ in H} e ^ {- E (v, h)}] - \ log [\ sum_ {v \ in V} \ sum_ {h \ in h} e ^ {- e (v, h)}] $$ Prenons le gradient par rapport aux paremeters en $ p (v) $

\ begin {align} \ Frac {\ partial \ log (p (v))} {\ partial \ theta} = & - \ frac {1} {\ sum_ {h '\ in H} e ^ {- E (v, h ')}} \ sum_ {h' \ in H} e ^ {- E (v, h')} \ frac {\ e partielle (v, h ')} {\ partial \ theta} \\ & + \ frac {1} {\ sum_ {v' \ in V} \ sum_ {h » \ in h} e ^ { -E (v 'h ')}} \ sum_ {v' \ in V} \ sum_ {h' \ in h} e ^ {- e (v 'h')} \ frac {\ e partielle (v , h)} {\ partial \ theta} \ End {align}

Maintenant, je l'ai fait sur papier et écrit l'équation demi-finale vers le bas pour ne pas perdre beaucoup d'espace sur ce site. Je vous recommande de calculer ces équations vous-même. Maintenant, je vais écrire quelques équations bas qui aideront à poursuivre notre dérivation. Notez que: ZP $ (v, h) = e ^ {- E (v, h ')} $, $ p (v) = \ sum_ {h \ in H} p (v, h) $ et $ p (h | v) = \ frac {p (v, h)} {p (h)} $

\ begin {align} \ Frac {\ log partiel (p (v))} {\ partial \ theta} = & - \ frac {1} {p (v)} \ sum_ {h » \ in H} p (v, h ') \ frac {\ E partielle (v, h')} {\ partial \ theta} + \ sum_ {v '\ in V} \ sum_ {h' \ in h} p (v 'h ') \ frac {\ E partielle (v', h')} {\ partial \ theta} \\ \ Frac {\ log partiel (p (v))} {\ partial \ theta} = & - \ sum_ {h '\ in H} p (h '| v) \ frac {\ E partielle (v, h')} {\ partial \ theta} + \ sum_ {v' \ in V} \ sum_ {h '\ in h} p (v', h ') \ frac {\ E partielle (v', h ')} {\ partial \ theta} \ End {align}

Et là, nous allons, nous avons calculé l'estimation du maximum de vraisemblance pour RBM de, si vous voulez, vous pouvez écrire les deux derniers termes par l'attente de leur mandat (sous condition, et la probabilité conjointe).

Notes sur la fonction d'énergie et stochasticité des neurones.

Comme vous pouvez le voir ci-dessus dans ma dérivation, je laisse la définition de la fonction d'énergie assez vague. Et la raison de le faire est que de nombreuses versions différentes de la GAR mettre en œuvre diverses fonctions d'énergie. Celui qui Hinton décrit dans la conférence lien ci-dessus, et montré par @ Laurens-Meeus est: $$ E (v, h) = -. A ^ Tv-b ^ Th-v ^ TWh $$

Il est peut-être plus facile de raisonner sur les termes de gradient ci-dessus via le formulaire de l'attente.

$$ \ frac {\ partial \ log (p (v))} {\ Partial \ theta} = - \ mathop {\ mathbb {E}} _ {p (h '| v)} \ frac {\ E partiel (v, h')} {\ partial \ theta} + \ mathop {\ mathbb {E}} _ {p (v 'h ')} \ frac {\ E partielle (v', h')} {\ partial \ theta} $$

L'attente du premier terme est en fait très facile à calculer, et qui était le génie derrière RBMs. En limitant la connexion l'espérance conditionnelle devient simplement une propagation vers l'avant du RBM avec les unités visibles pincés. Ceci est la phase dite de réveil dans les machines de Boltzmann. Maintenant, le calcul du second terme est beaucoup plus difficile et le plus souvent des méthodes de Monte Carlo sont utilisées pour le faire. La rédaction du gradient par moyenne de Monte Carlo court:

$$ \ frac {\ partial \ log (p (v))} {\ partial \ theta} \ approx - \ langle \ frac {\ E partiel (v, h ')} {\ partial \ theta} \ rangle_ {p (h' | v)} + \ langle \ frac {\ E partiel (v 'h')} {\ partial \ theta} \ rangle_ {p (v 'h')} $$

Le calcul du premier terme n'est pas difficile, comme indiqué plus haut, donc Monte-Carlo se fait sur le second terme. méthodes de Monte Carlo utilisent l'échantillonnage successif aléatoire de la distribution, pour le calcul de l'espérance (somme ou intégrale). Maintenant, cet échantillonnage aléatoire dans de RBM classique est définie comme la mise en une unité à 0 ou 1 en fonction de sa probabilité stochasticly, autrement dit, obtenir un numéro uniforme au hasard, si elle est inférieure à la probabilité de neurones mis à 1, si elle est supérieur fixé à 0.

Autres conseils

En plus des réponses existantes, je voudrais parler de cette fonction d'énergie, et l'intuition derrière un peu. Désolé si cela est un peu long et physique.

La fonction d'énergie décrit un soi-disant modèle Ising , qui est un modèle de ferromagnétisme en termes de mécanique de la mécanique statistique quantique /. Dans la mécanique statistique, nous utilisons un opérateur hamiltonien soi-disant pour décrire l'énergie d'un système mécanique quantique. Et un système essaie toujours d'être dans l'état le plus faible énergie.

Maintenant, le modèle d'Ising décrit essentiellement l'interaction entre les électrons avec un $ de rotation $ \ sigma_k soit de +1 ou -1, en présence d'un champ magnétique externe $ h $. L'interaction entre les deux électrons i $ $ et est décrit $ $ j par un coefficient $ J_ {ij} $. Ce Hamiltonien (ou la fonction de l'énergie) est $$ \ hat {H} = \ sum_ {i, j} J_ {ij} \ sigma_i \ sigma_j - \ mu \ sum_j h_j \ sigma_j $$ où $ \ hat {H} $ désigne le hamiltonien. Une procédure standard pour obtenir d'une fonction d'énergie à la probabilité qu'un système est dans un état donné (ici: une configuration de spins, par exemple $ \ sigma_1 = {} +1, \ sigma_2 = {1}, .. . $) consiste à utiliser la distribution de Boltzmann, qui dit que, à une température $ T $, la probabilité $ $ p_i du système pour être dans un état de $ i $ avec une énergie $ $ E_i est donnée par $$ = p_i \ frac {\ exp (-E_i / kT)} {\ sum_ {i} \ exp (-E_i / kt)} $$ À ce stade, vous devez reconnaître que ces deux équations sont exactement les mêmes équations que dans les vidéos de Hinton et la réponse par Armen Aghajanyan . Cela nous amène à la question suivante:

Qu'est-ce que la GAR a à voir avec ce modèle mécanique quantique de ferromagnétisme?

Nous avons besoin d'utiliser une quantité physique finale: l'entropie. Comme nous le savons de la thermodynamique, un système réglera dans l'état avec l'énergie minimale, ce qui correspond également à l'état de l'entropie maximale.

Comme introduit par Shanon en 1946, en théorie de l'information, l'entropie $ H $ peut aussi être considérée comme une mesure du contenu de l'information dans $ X $, donnée par la somme suivante sur tous les états possibles de $ X $: $$ H (X) = - \ sum_i P (x_i) \ log P (x_i) $$ Maintenant, la façon la plus efficace pour coder le contenu de l'information dans $ X $, est d'utiliser d'une manière qui maximise l'entropie $ H $.

Enfin , c'est là que nous revenons à RBMs: Fondamentalement, nous voulons que cette GAR à coder comme beaucoup informations que possible. Donc, comme nous devons Maximize l'entropie (information théorique) dans notre GAR-System. Comme proposé par Hopfield en 1982, nous pouvons maximiser l'entropie de l'information théorique exactement comme l'entropie physique: en modélisant le GAR comme le modèle d'Ising ci-dessus, et utiliser les mêmes méthodes pour minimiser l'énergie. Voilà pourquoi nous avons besoin de cette fonction étrange d'énergie dans une RBM!

La belle dérivation mathématique Armen Aghajanyan spectacles de la réponse de tout ce que nous devons faire, afin de minimiser l'énergie, ainsi maximisant l'entropie et le stockage / sauvegarde autant d'informations que possible dans notre RBM.

PS: S'il vous plaît, chers physiciens, pardonne toute inexactitude dans la dérivation de cet ingénieur. Ne hésitez pas à commenter ou inexactitudes fixes (ou même des erreurs).

La réponse de @Armen moi-même a donné beaucoup d'idées. Une question n'a pas été répondu cependant.

Le but est de maximiser la probabilité (ou la probabilité) de $ v $. Ceci est corrélé à minimiser la fonction d'énergie liée à $ v $ et $ h $:

$$ E (v, h) = -a ^ {\ mathrm {T}} v - b ^ {\ mathrm {T}} h -v ^ {\ mathrm {T}} W h $$

Nos variables sont $ a $, $ b $ et $ W $, qui doivent être formés. Je suis tout à fait sûr que cette formation sera l'objectif ultime du RBM.

scroll top