Modèles de diffusion démystifiés: comprendre la technologie derrière Dall-E et MidJourney

 Modèles de diffusion démystifiés: comprendre la technologie derrière Dall-E et MidJourney


Modèles de diffusion démystifiés: comprendre la technologie derrière Dall-E et MidJourney
Image de l’auteur | Idéogramme

Les modèles génératifs d’IA sont devenus une étoile montante ces dernières années, en particulier avec l’introduction de produits de modèle de grande langue (LLM) comme Chatte. En utilisant un langage naturel que les humains peuvent comprendre, ces modèles peuvent traiter les entrées et fournir une sortie appropriée. À la suite de produits comme Chatgpt, d’autres formes d’IA génératrices sont également devenues populaires et dominantes.

Produits tels que Dall-E et Média sont devenus populaires au milieu de la flèche génératrice de l’IA en raison de leur capacité à générer des images uniquement à partir de la contribution du langage naturel. Ces produits populaires ne créent pas d’images à partir de rien; Au lieu de cela, ils s’appuient sur un modèle appelé modèle de diffusion.

Dans cet article, nous démystifierons le modèle de diffusion pour acquérir une compréhension plus approfondie de la technologie derrière elle. Nous discuterons du concept fondamental, du fonctionnement du modèle et de la façon dont il est formé.

Curieux? Allons-y.

# Fondamentaux du modèle de diffusion

Les modèles de diffusion sont une classe d’algorithmes d’IA qui relèvent de la catégorie des modèles génératifs, conçus pour générer de nouvelles données basées sur des données de formation. Dans le cas des modèles de diffusion, cela signifie qu’ils peuvent créer de nouvelles images à partir d’entrées données.

Cependant, les modèles de diffusion génèrent des images via un processus différent de celui d’habitude, où le modèle ajoute puis supprime le bruit des données. En termes plus simples, le modèle de diffusion modifie une image puis l’affine pour créer le produit final. Vous pouvez considérer le modèle comme un modèle de débraillé, car il apprend à supprimer le bruit des images.

Formellement, le modèle de diffusion a d’abord émergé dans le papier Apprentissage non supervisé profond utilisant une thermodynamique sans équilibre Par Sohl-Dickstein et al. (2015). L’article introduit le concept de conversion des données en bruit à l’aide d’un processus appelé processus de diffusion vers l’avant contrôlé, puis de formation d’un modèle pour inverser le processus et reconstruire les données, qui est le processus de débraillé.

S’appuyant sur cette fondation, le papier Modèles probabilistes de diffusion de débrassement par Ho et al. (2020) introduit le cadre de diffusion moderne, qui peut produire des images de haute qualité et surpasser les modèles populaires précédents, tels que les réseaux adversaires génératifs (GAN). En général, un modèle de diffusion se compose de deux étapes critiques:

  1. Processus avant (diffusion): Les données sont corrompues en ajoutant progressivement le bruit jusqu’à ce qu’ils deviennent indiscernables de statique aléatoire
  2. Processus inversé (déniisation): Un réseau neuronal est formé pour supprimer itérativement le bruit, apprenant à reconstruire les données d’image à partir de l’aléatoire complet

Essayons de comprendre les composants du modèle de diffusion mieux pour avoir une image plus claire.

// Processus à terme

Le processus avant est la première phase, où une image est systématiquement dégradée en ajoutant du bruit jusqu’à ce qu’elle devienne statique aléatoire.

Le processus avant est contrôlé et itératif, que nous pouvons résumer dans les étapes suivantes:

  1. Commencez par une image à partir de l’ensemble de données
  2. Ajoutez une petite quantité de bruit à l’image
  3. Répétez ce processus plusieurs fois (potentiellement des centaines ou des milliers), à chaque fois, corrompant davantage l’image

Après suffisamment d’étapes, l’image d’origine apparaîtra comme un bruit pur.

Le processus ci-dessus est souvent modélisé mathématiquement en tant que chaîne de Markov, car chaque version bruyante ne dépend que de celle qui la précédente immédiatement, et non de la séquence entière des étapes.

Mais pourquoi devrions-nous progressivement transformer l’image en bruit au lieu de la convertir directement en bruit en une seule étape? L’objectif est de permettre au modèle d’apprendre progressivement à inverser la corruption. De petites étapes incrémentielles permettent au modèle d’apprendre la transition des données bruyantes à moins de nois, ce qui l’aide à reconstruire l’image étape par étape à partir du bruit pur.

Pour déterminer la quantité de bruit ajoutée à chaque étape, le concept d’un calendrier de bruit est utilisé. Par exemple, les calendriers linéaires introduisent le bruit régulièrement au fil du temps, tandis que les horaires de cosinus introduisent le bruit plus progressivement et préservent les fonctionnalités d’image utiles pendant une période plus étendue.

C’est un résumé rapide du processus à terme. Apprenons le processus inverse.

// Processus inversé

L’étape suivante après le processus avant consiste à transformer le modèle en générateur, qui apprend à transformer le bruit en données d’image. Grâce à de petites étapes itératives, le modèle peut générer des données d’image qui n’existaient pas auparavant.

En général, le processus inverse est l’inverse du processus à terme:

  1. Commencez par du bruit pur – une image entièrement aléatoire composée de bruit gaussien
  2. Retirez itérativement le bruit en utilisant un modèle formé qui essaie d’approximer une version inverse de chaque étape avant. Dans chaque étape, le modèle utilise l’image bruyante actuelle et le pas de temps correspondant comme entrée, prédisant comment réduire le bruit en fonction de ce qu’il a appris pendant l’entraînement
  3. Étape par étape, l’image devient progressivement plus claire, entraînant les données d’image finales

Ce processus inverse nécessite un modèle formé pour dénuire des images bruyantes. Les modèles de diffusion utilisent souvent une architecture de réseau neuronal, comme un réseau U, qui est un autoencodeur qui combine des couches convolutionnelles dans une structure d’encodeur-décodeur. Pendant l’entraînement, le modèle apprend à prédire les composants de bruit ajoutés pendant le processus à terme. À chaque étape, le modèle considère également l’horodatage, lui permettant d’ajuster ses prédictions en fonction du niveau de bruit.

Le modèle est généralement formé à l’aide d’une fonction de perte telle que l’erreur quadratique moyenne (MSE), qui mesure la différence entre le bruit prévu et le bruit réel. En minimisant cette perte à travers de nombreux exemples, le modèle devient progressivement compétent pour inverser le processus de diffusion.

Par rapport à des alternatives comme GANS, les modèles de diffusion offrent plus de stabilité et un chemin génératif plus simple. L’approche étape par étape en débrouillard conduit à un apprentissage plus expressif, ce qui rend la formation plus fiable et interprétable.

Une fois le modèle entièrement formé, la génération d’une nouvelle image suit le processus inverse que nous avons résumé ci-dessus.

// Conditionnement du texte

Dans de nombreux produits de texte à l’image, tels que Dall-E et MidJourney, ces systèmes peuvent guider le processus inverse à l’aide d’invites de texte, que nous appelons le conditionnement du texte. En intégrant le langage naturel, nous pouvons acquérir une scène correspondante plutôt que des visuels aléatoires.

Le processus fonctionne en utilisant un encodeur de texte pré-formé, tel que Clip (pré-formation de langue contrastive-image)qui convertit l’invite de texte en un vecteur incorporant. Cette intégration est ensuite introduite dans l’architecture du modèle de diffusion à travers un mécanisme tel que l’attention croisée, un type de mécanisme d’attention qui permet au modèle de se concentrer sur des parties spécifiques du texte et d’aligner le processus de génération d’image avec le texte. À chaque étape du processus inverse, le modèle examine l’état d’image actuel et l’invite de texte, en utilisant la transtention croisée pour aligner l’image avec la sémantique à partir de l’invite.

Il s’agit du mécanisme de base qui permet à Dall-E et MidJourney de générer des images à partir d’invites.

# En quoi Dall-E et MidJourney diffèrent-ils?

Les deux produits utilisent des modèles de diffusion comme fondation mais diffèrent légèrement dans leurs applications techniques.

Par exemple, Dall-E utilise un modèle de diffusion guidé par une incorporation basée sur des clips pour le conditionnement du texte. En revanche, MidJourney présente son architecture de modèle de diffusion propriétaire, qui comprendrait un décodeur d’image affiné optimisé pour un réalisme élevé.

Les deux modèles reposent également sur la transtention croisée, mais leurs styles d’orientation diffèrent. Dall-E met l’accent sur l’adhésion à l’invite grâce à des conseils sans classificateur, qui équilibre entre une sortie inconditionnée et conditionnée par texte. En revanche, MidJourney a tendance à hiérarchiser l’interprétation stylistique, en utilisant peut-être une échelle de guidage par défaut plus élevée pour les conseils sans classificateur.

Dall-E et MidJourney diffèrent dans leur manipulation de la longueur et de la complexité de l’invite, car le modèle de Dall-E peut gérer des invites plus longues en les traitant avant d’entrer dans le pipeline de diffusion, tandis que MidJourney a tendance à mieux fonctionner avec des invites concises.

Il y a plus de différences, mais ce sont ceux que vous devez savoir qui se rapportent aux modèles de diffusion.

# Conclusion

Les modèles de diffusion sont devenus un fondement de systèmes de texte à l’image modernes tels que Dall-E et Midjourney. En utilisant les processus fondamentaux de la diffusion directe et inverse, ces modèles peuvent générer des images entièrement nouvelles à partir de hasard. De plus, ces modèles peuvent utiliser le langage naturel pour guider les résultats à travers des mécanismes tels que le conditionnement du texte et la transtention croisée.

J’espère que cela a aidé!

Cornellius Yudha Wijaya est un directeur adjoint des sciences de données et un écrivain de données. Tout en travaillant à plein temps chez Allianz Indonesia, il aime partager des conseils de python et de données via les médias sociaux et la rédaction des médias. Cornellius écrit sur une variété d’IA et de sujets d’apprentissage automatique.



Source link

Related post