Traduit de l'anglais

Les flux normalisants sont une classe de modèles génératifs en apprentissage automatique qui transforment une distribution de probabilité simple en une distribution complexe via une séquence de fonctions inversibles, permettant un calcul exact de la vraisemblance et un échantillonnage.

Les flots normalisants sont une classe de modèles génératifs en apprentissage automatique qui modélisent explicitement une distribution de probabilité en appliquant une séquence de transformations inversibles à une distribution de base simple. La méthode exploite la loi du changement de variable pour les probabilités afin de convertir une distribution simple, telle qu'une gaussienne, en une distribution cible complexe. Cette modélisation directe de la vraisemblance offre des avantages : la log-vraisemblance négative peut être calculée et minimisée comme fonction de perte, et de nouveaux échantillons peuvent être générés en échantillonnant à partir de la distribution de base puis en appliquant la transformation du flot. En revanche, d'autres méthodes de modélisation générative, comme les autoencodeurs variationnels (VAE), les réseaux antagonistes génératifs (GAN) et les modèles de diffusion, ne représentent pas explicitement la fonction de vraisemblance.

Le terme « flot normalisant » reflète deux aspects : « normalisant » fait référence au fait que les transformations produisent une densité de probabilité normalisée (intégrant à un), et « flot » fait référence à la composition séquentielle de transformations qui « font fluer » la distribution de base vers la cible. Les modèles basés sur les flots ont été appliqués dans des domaines tels que la génération d'images, l'estimation de densité et la détection d'anomalies, et ils constituent la base d'architectures plus avancées comme RealNVP et Glow.

Méthode

Soit \( z_0 \) une variable aléatoire (éventuellement multivariée) avec une distribution \( p_0(z_0) \). Pour \( i = 1, \dots, K \), soit \( z_i = f_i(z_{i-1}) \) une séquence de variables aléatoires transformées à partir de \( z_0 \). Les fonctions \( f_1, \dots, f_K \) doivent être inversibles, ce qui signifie que la fonction inverse \( f_i^{-1} \) existe. Le résultat final \( z_K \) modélise la distribution cible.

La log-vraisemblance de \( z_K \) est donnée par :

\[ \log p_K(z_K) = \log p_0(z_0) - \sum_{i=1}^K \log \left| \det \frac{d f_i(z_{i-1})}{d z_{i-1}} \right| \]

Cette formule découle de la règle du changement de variable, qui ajuste la densité par le déterminant absolu du Jacobien de chaque transformation. Pour calculer efficacement la log-vraisemblance, les fonctions \( f_1, \dots, f_K \) doivent être facilement inversibles, et les déterminants de leurs Jacobiens doivent être simples à calculer. En pratique, ces fonctions sont modélisées à l'aide de réseaux de neurones profonds, entraînés pour minimiser la log-vraisemblance négative des échantillons de données provenant de la distribution cible. Les architectures sont conçues de sorte que seule la passe avant du réseau soit nécessaire pour le calcul de l'inverse et du déterminant du Jacobien. Des exemples incluent NICE, RealNVP et Glow.

Dérivation de la log-vraisemblance

Considérons \( z_1 \) et \( z_0 \). Notons que \( z_0 = f_1^{-1}(z_1) \). Par la formule du changement de variable, la distribution de \( z_1 \) est :

\[ p_1(z_1) = p_0(z_0) \left| \det \frac{d f_1^{-1}(z_1)}{d z_1} \right| \]

En utilisant le théorème de la fonction inverse, le déterminant du Jacobien de l'inverse est l'inverse du déterminant du Jacobien de la transformation directe, ce qui conduit à l'expression de la log-vraisemblance ci-dessus. Cette dérivation s'étend à plusieurs transformations par induction.

Innovations architecturales

Les premiers modèles basés sur les flots se concentraient sur la conception de transformations avec des Jacobiens tractables. NICE (Estimation de composantes indépendantes non linéaires), introduit par Dinh et al. en 2014, utilisait des couches de couplage additives qui partitionnent l'entrée et appliquent des transformations affines simples, rendant le Jacobien triangulaire avec un déterminant de un. RealNVP (Préservation de volume non réel) a étendu cela à des couches de couplage affines, permettant des opérations d'échelle et de décalage, ce qui a amélioré l'expressivité tout en maintenant l'inversibilité. Glow, introduit par Kingma et Dhariwal en 2018, a ajouté des convolutions 1x1 inversibles et des couches actnorm, permettant un entraînement efficace sur des images haute résolution.

Ces architectures sont souvent composées de plusieurs couches de couplage, chacune avec une permutation ou une convolution pour mélanger les dimensions. L'inversibilité est garantie par construction, et le déterminant du Jacobien est calculé comme le produit des éléments diagonaux du Jacobien triangulaire, ce qui est efficace.

Applications et comparaisons

Les flots normalisants sont utilisés pour l'estimation de densité, où ils apprennent la distribution de probabilité d'un ensemble de données, et pour l'échantillonnage génératif, où ils produisent de nouveaux points de données. Ils ont été appliqués à la génération d'images, à la synthèse audio et à la génération de conformations moléculaires. Contrairement aux GAN, connus pour leurs échantillons nets mais sans estimation de vraisemblance, les flots fournissent des log-vraisemblances exactes, ce qui peut être utile pour la comparaison de modèles et la détection de valeurs aberrantes. Par rapport aux modèles de diffusion, les flots sont souvent plus rapides à échantillonner car ils nécessitent seulement une passe avant, tandis que les modèles de diffusion exigent un débruitage itératif.

Cependant, les flots peuvent être coûteux à entraîner en raison de la nécessité d'architectures inversibles et de calculs de Jacobiens. Ils peuvent également nécessiter plus de paramètres pour capturer des distributions complexes par rapport à d'autres méthodes.

Entraînement et optimisation

L'entraînement d'un flot normalisant consiste à minimiser la log-vraisemblance négative des données d'entraînement. La fonction de perte est :

\[ \mathcal{L} = -\frac{1}{N} \sum_{n=1}^N \log p_K(x_n) \]

où \( x_n \) sont des échantillons de données. Cela est généralement effectué à l'aide de la descente de gradient stochastique. L'inversibilité des transformations garantit que la log-vraisemblance est bien définie, et le déterminant du Jacobien est calculé pendant la passe avant. Des techniques de régularisation, telles que la décroissance du poids et l'abandon, peuvent être appliquées aux paramètres du réseau.

Applications et comparaisons

Les flots normalisants sont utilisés pour l'estimation de densité, où ils apprennent la distribution de probabilité d'un ensemble de données, et pour l'échantillonnage génératif, où ils produisent de nouveaux points de données. Ils ont été appliqués à la génération d'images, à la synthèse audio et à la génération de conformations moléculaires. Contrairement aux GAN, qui sont connus pour produire des échantillons nets mais sans estimation de vraisemblance, les flots fournissent des log-vraisemblances exactes, utiles pour la comparaison de modèles et la détection de valeurs aberrantes. Par rapport aux modèles de diffusion, les flots sont souvent plus rapides à échantillonner car ils ne nécessitent qu'une seule passe avant, alors que la diffusion nécessite un débruitage itératif.

Cependant, les flots peuvent être coûteux en calcul lors de l'entraînement en raison de la nécessité d'architectures inversibles et du calcul des Jacobiens. Ils peuvent également nécessiter plus de paramètres pour capturer des distributions complexes par rapport à d'autres méthodes.

Entraînement et optimisation

L'entraînement d'un flot normalisant implique de minimiser la log-vraisemblance négative des données. La fonction de perte est :

\[ \mathcal{L} = -\frac{1}{N} \sum_{n=1}^N \log p_K(x_n) \]

où \( x_n \) sont des échantillons de données. Cela est généralement effectué à l'aide de la descente de gradient stochastique. L'inversibilité des transformations garantit que la log-vraisemblance est bien définie, et le déterminant du Jacobien est calculé dans le cadre de la passe avant. Des techniques de régularisation, telles que la décroissance du poids et l'abandon, peuvent être appliquées aux paramètres du réseau.

Concepts connexes

Les flots normalisants font partie du domaine plus large de l'intelligence artificielle et des réseaux de neurones. Ils sont souvent comparés à d'autres modèles génératifs tels que les modèles génératifs et les autoencodeurs variationnels. La recherche dans ce domaine a été avancée par des institutions comme le laboratoire d'intelligence artificielle de Stanford et la recherche en intelligence artificielle de Berkeley, ainsi que par des chercheurs tels que Daphne Koller et Anima Anandkumar. Ces connexions s'inscrivent dans le contexte plus large du apprentissage automatique.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Catégories:generative-models·machine-learning·deep-learning·probability-distributions
Cette page a été modifiée pour la dernière fois le 7 sept. 2026 par AI Wiki Bot · Historique