Une machine de Boltzmann restreinte (RBM) est un réseau de neurones artificiels stochastique génératif qui peut apprendre une distribution de probabilité sur son ensemble d'entrées. C'est une variante de la machine de Boltzmann, avec la restriction que ses neurones forment un graphe biparti : les connexions n'existent qu'entre deux groupes d'unités, communément appelés unités visibles et unités cachées, et il n'y a pas de connexions au sein de chaque groupe. Cette restriction permet des algorithmes d'apprentissage plus efficaces que ceux disponibles pour les machines de Boltzmann générales, notamment l'algorithme de divergence contrastive basé sur le gradient.
Les RBM ont été initialement proposées sous le nom d'Harmonium par Paul Smolensky en 1986, et ont gagné en importance après que Geoffrey Hinton et ses collaborateurs ont développé des algorithmes d'apprentissage rapides pour elles au milieu des années 2000. Elles ont trouvé des applications dans la réduction de dimensionnalité, la classification, le filtrage collaboratif, l'apprentissage de caractéristiques, la modélisation thématique, l'immunologie et la mécanique quantique à plusieurs corps. Les RBM peuvent être entraînées de manière supervisée ou non supervisée, selon la tâche, et sont un composant clé des réseaux d'apprentissage profond, où des réseaux de croyances profondes peuvent être formés en empilant des RBM et en affinant éventuellement le réseau résultant avec une descente de gradient et une rétropropagation.
Structure
Le type standard de RBM possède des unités cachées et visibles à valeurs binaires (booléennes). Elle consiste en une matrice de poids \(W\) de taille \(m \times n\), où chaque élément de poids \(w_{i,j}\) est associé à la connexion entre l'unité visible \(v_i\) et l'unité cachée \(h_j\). De plus, il y a des poids de biais \(a_i\) pour les unités visibles et \(b_j\) pour les unités cachées. L'énergie d'une configuration (paire de vecteurs booléens) \((v, h)\) est définie comme :
\[ E(v, h) = -\sum_i a_i v_i - \sum_j b_j h_j - \sum_i \sum_j v_i w_{i,j} h_j \]
ou en notation matricielle :
\[ E(v, h) = -a^{\mathrm{T}} v - b^{\mathrm{T}} h - v^{\mathrm{T}} W h. \]
Cette fonction d'énergie est analogue à celle d'un réseau de Hopfield. Comme pour les machines de Boltzmann générales, la distribution de probabilité conjointe pour les vecteurs visibles et cachés est définie en termes de la fonction d'énergie :
\[ P(v, h) = \frac{1}{Z} e^{-E(v, h)} \]
où \(Z\) est une fonction de partition, une constante de normalisation qui garantit que les probabilités totalisent 1. La probabilité marginale d'un vecteur visible est la somme de \(P(v, h)\) sur toutes les configurations possibles de la couche cachée, et vice versa.
Entraînement et divergence contrastive
Étant donné que la structure de graphe sous-jacente d'une RBM est bipartie, les activations des unités cachées sont mutuellement indépendantes étant donné les activations des unités visibles, et inversement, les activations des unités visibles sont mutuellement indépendantes étant donné les activations des unités cachées. Cette propriété simplifie le calcul des probabilités conditionnelles, permettant un entraînement efficace. L'algorithme d'entraînement le plus courant est la divergence contrastive, qui approxime le gradient de la log-vraisemblance en effectuant une courte chaîne de Markov Monte Carlo, généralement avec une seule étape d'échantillonnage de Gibbs. Cette approche évite le calcul intraitable de la fonction de partition \(Z\), qui somme sur toutes les configurations possibles.
Les RBM peuvent être entraînées en modes supervisé et non supervisé. En apprentissage non supervisé, le modèle apprend à représenter la distribution des données d'entrée, souvent pour l'extraction de caractéristiques ou la réduction de dimensionnalité. Dans les tâches supervisées, la RBM peut être adaptée pour prédire des étiquettes en les incorporant dans la couche visible ou en utilisant une couche de sortie séparée.
Applications dans l'apprentissage profond
Les machines de Boltzmann restreintes sont un composant fondamental de l'apprentissage profond. Un réseau de croyances profondes peut être formé en empilant plusieurs RBM, où la couche cachée d'une RBM sert de couche visible pour la suivante. Ce pré-entraînement par couches permet au réseau d'apprendre des caractéristiques hiérarchiques à partir des données. Après le pré-entraînement, l'ensemble du réseau peut être affiné en utilisant la descente de gradient et la rétropropagation, une technique qui a été influente dans le développement des architectures modernes d'apprentissage profond.
Les RBM ont été appliquées au filtrage collaboratif, où elles modélisent les interactions utilisateur-article pour les systèmes de recommandation, et à la modélisation thématique, où elles apprennent des thèmes latents à partir de corpus de textes. En immunologie, elles ont été utilisées pour modéliser les réponses du système immunitaire, et en mécanique quantique, elles ont été employées pour représenter des états quantiques à plusieurs corps.
Relation avec d'autres modèles
Les RBM sont étroitement liées à d'autres modèles de réseaux de neurones. Elles sont un cas particulier des machines de Boltzmann, qui permettent des connexions entre unités cachées, mais la restriction bipartie rend l'entraînement plus traitable. Elles partagent également des similitudes avec les réseaux de Hopfield dans leur fonction d'énergie, mais les RBM sont génératives et stochastiques, tandis que les réseaux de Hopfield sont généralement déterministes et utilisés pour la mémoire associative. Dans le contexte plus large de l'apprentissage automatique, les RBM sont considérées comme un type de modèle génératif, distinct des modèles discriminatifs comme les réseaux de neurones standard à propagation avant.
Héritage et influence
Le développement des RBM a contribué de manière significative à la résurgence de l'apprentissage profond au milieu des années 2000. Geoffrey Hinton, qui est devenu plus tard une figure éminente de l'intelligence artificielle, a utilisé les RBM pour démontrer que les réseaux profonds pouvaient être entraînés efficacement, surmontant les difficultés antérieures avec les méthodes basées sur le gradient. Ce travail a influencé les architectures ultérieures, y compris les transformeurs et les grands modèles de langage, bien que ces modèles utilisent des paradigmes d'entraînement différents. Les RBM restent un modèle théorique important dans l'étude de la IA générative et sont encore utilisées dans des applications spécialisées où leur nature probabiliste est avantageuse.