Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Modèles de Diffusion et Approches Génératives Probabilistes | Fondements Théoriques
Modèles Génératifs Profonds avec Python

Modèles de Diffusion et Approches Génératives Probabilistes

Glissez pour afficher le menu

Compréhension de la génération basée sur la diffusion

Les modèles de diffusion sont un type puissant de modèle d'IA qui génèrent des données – en particulier des images – en apprenant à inverser un processus d'ajout de bruit aléatoire. Imaginez regarder une image nette devenir progressivement floue, comme des parasites sur une télévision. Un modèle de diffusion apprend à faire l'inverse : il prend des images bruitées et reconstruit l'image d'origine en supprimant le bruit étape par étape.

diffusion_architecture

Le processus implique deux phases principales :

  • Processus direct (diffusion) : ajoute progressivement du bruit aléatoire à une image sur de nombreuses étapes, la corrompant jusqu'à obtenir un bruit pur ;
  • Processus inverse (dénoyautage) : un réseau de neurones apprend à supprimer le bruit étape par étape, reconstruisant l'image d'origine à partir de la version bruitée.

Les modèles de diffusion sont reconnus pour leur capacité à produire des images de haute qualité et réalistes. Leur entraînement est généralement plus stable que celui des modèles comme les GAN, ce qui les rend très attractifs dans l'IA générative moderne.

Modèles probabilistes de diffusion pour la suppression du bruit (DDPM)

Les modèles probabilistes de diffusion pour la suppression du bruit (DDPM) sont un type populaire de modèle de diffusion qui appliquent des principes probabilistes et l'apprentissage profond pour éliminer le bruit des images de manière progressive.

Processus direct

Dans le processus direct, on commence avec une image réelle x0x_0 et on ajoute progressivement du bruit gaussien sur TT étapes temporelles :

q(xtxt1)=N(xt;1βtxt1,βtI)q(x_t|x_{t-1})= \mathcal{N}(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_tI)

Où :

  • xtx_t : version bruitée de l'entrée à l'étape temporelle ;
  • βt\beta_t : planification de faible variance contrôlant la quantité de bruit ajoutée ;
  • N\mathcal{N} : distribution gaussienne.

On peut également exprimer le bruit total ajouté jusqu'à l'étape comme :

q(xtx0)=N(xt;αˉtx0,(1αˉt)I)q(x_t|x_0)= \mathcal{N}(x_t;\sqrt{\={\alpha}_t}x_0,(1-\={\alpha}_t)I)

Où :

  • αˉt=s=1t(1βs)\=\alpha_t=\prod_{s=1}^t(1-\beta_s)

Processus inverse

L'objectif du modèle est d'apprendre l'inverse de ce processus. Un réseau de neurones paramétré par θ\theta prédit la moyenne et la variance de la distribution débruitée :

pθ(xt1xt)=N(xt1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1};\mu_\theta(x_t,t), \Sigma_\theta(x_t,t))

où :

  • xtx_t : image bruitée à l'étape temporelle tt ;
  • xt1x_{t-1} : image prédite moins bruitée à l'étape t1t-1 ;
  • μθ\mu_\theta : moyenne prédite par le réseau de neurones ;
  • Σθ\Sigma_\theta : variance prédite par le réseau de neurones.

Fonction de perte

L'entraînement consiste à minimiser la différence entre le bruit réel et le bruit prédit par le modèle à l'aide de l'objectif suivant :

Lsimple=Ex0,ϵ,t[ϵϵ0(αˉtx0+1αˉtϵ,t)2]L_{simple} = \mathbb{E}_{x_0, \epsilon, t} \left[ ||\epsilon - \epsilon_0 \left( \sqrt{\=\alpha_t}x_0 + \sqrt{1-\=\alpha_t}\epsilon, t \right)||^2 \right]

où :

  • xtx_t : image d'entrée originale ;
  • ϵ\epsilon : bruit gaussien aléatoire ;
  • tt : étape temporelle pendant la diffusion ;
  • ϵθ\epsilon_\theta : prédiction du bruit par le réseau de neurones ;
  • αˉt\={\alpha}_t : produit des paramètres du planning de bruit jusqu'à l'étape tt.

Cela aide le modèle à mieux débruiter, améliorant ainsi sa capacité à générer des données réalistes.

Modélisation Générative Basée sur le Score

Les modèles basés sur le score constituent une autre catégorie de modèles de diffusion. Au lieu d'apprendre directement le processus inverse du bruit, ils apprennent la fonction score :

xlogp(x)\nabla_x\log{p(x)}

où :

  • xlogp(x)\nabla_x\log{p(x)} : le gradient de la densité de log-probabilité par rapport à l'entrée xx. Cela indique la direction d'augmentation de la vraisemblance selon la distribution des données ;
  • p(x)p(x) : la distribution de probabilité des données.

Cette fonction indique au modèle dans quelle direction l'image doit évoluer pour ressembler davantage à des données réelles. Ces modèles utilisent ensuite une méthode d'échantillonnage telle que la dynamique de Langevin pour déplacer progressivement les données bruitées vers des régions de données à forte probabilité.

Les modèles basés sur le score fonctionnent souvent en temps continu à l'aide d'équations différentielles stochastiques (EDS). Cette approche continue offre de la flexibilité et permet de générer des échantillons de haute qualité sur divers types de données.

Applications à la Génération d’Images Haute Résolution

Les modèles de diffusion ont révolutionné les tâches génératives, en particulier dans la génération visuelle haute résolution. Parmi les applications notables :

  • Stable Diffusion : un modèle de diffusion latente qui génère des images à partir de descriptions textuelles. Il combine un modèle de débruitage basé sur U-Net avec un autoencodeur variationnel (VAE) pour opérer dans l’espace latent ;
  • DALL·E 2 : combine des embeddings CLIP et un décodage basé sur la diffusion pour générer des images très réalistes et sémantiques à partir de texte ;
  • MidJourney : une plateforme de génération d’images basée sur la diffusion, reconnue pour produire des visuels de haute qualité au style artistique à partir de requêtes abstraites ou créatives.

Ces modèles sont utilisés pour la génération artistique, la synthèse photoréaliste, l’inpainting, la super-résolution, et bien plus encore.

Résumé

Les modèles de diffusion définissent une nouvelle ère de la modélisation générative en traitant la génération de données comme un processus stochastique inversé dans le temps. Grâce aux DDPM et aux modèles basés sur le score, ils permettent un entraînement robuste, une haute qualité d’échantillons et des résultats convaincants sur diverses modalités. Leur fondement dans les principes probabilistes et thermodynamiques les rend à la fois élégants sur le plan mathématique et puissants en pratique.

1. Quelle est l'idée principale des modèles génératifs basés sur la diffusion ?

2. Qu'utilise le processus direct des DDPM pour ajouter du bruit à chaque étape ?

3. Laquelle des propositions suivantes décrit le mieux le rôle de la fonction score xlogp(x)\nabla_x\log{p(x)} dans la modélisation générative basée sur le score ?

question mark

Quelle est l'idée principale des modèles génératifs basés sur la diffusion ?

Sélectionnez la réponse correcte

question mark

Qu'utilise le processus direct des DDPM pour ajouter du bruit à chaque étape ?

Sélectionnez la réponse correcte

question mark

Laquelle des propositions suivantes décrit le mieux le rôle de la fonction score xlogp(x)\nabla_x\log{p(x)} dans la modélisation générative basée sur le score ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 9

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Modèles de Diffusion et Approches Génératives Probabilistes

Compréhension de la génération basée sur la diffusion

Les modèles de diffusion sont un type puissant de modèle d'IA qui génèrent des données – en particulier des images – en apprenant à inverser un processus d'ajout de bruit aléatoire. Imaginez regarder une image nette devenir progressivement floue, comme des parasites sur une télévision. Un modèle de diffusion apprend à faire l'inverse : il prend des images bruitées et reconstruit l'image d'origine en supprimant le bruit étape par étape.

diffusion_architecture

Le processus implique deux phases principales :

  • Processus direct (diffusion) : ajoute progressivement du bruit aléatoire à une image sur de nombreuses étapes, la corrompant jusqu'à obtenir un bruit pur ;
  • Processus inverse (dénoyautage) : un réseau de neurones apprend à supprimer le bruit étape par étape, reconstruisant l'image d'origine à partir de la version bruitée.

Les modèles de diffusion sont reconnus pour leur capacité à produire des images de haute qualité et réalistes. Leur entraînement est généralement plus stable que celui des modèles comme les GAN, ce qui les rend très attractifs dans l'IA générative moderne.

Modèles probabilistes de diffusion pour la suppression du bruit (DDPM)

Les modèles probabilistes de diffusion pour la suppression du bruit (DDPM) sont un type populaire de modèle de diffusion qui appliquent des principes probabilistes et l'apprentissage profond pour éliminer le bruit des images de manière progressive.

Processus direct

Dans le processus direct, on commence avec une image réelle x0x_0 et on ajoute progressivement du bruit gaussien sur TT étapes temporelles :

q(xtxt1)=N(xt;1βtxt1,βtI)q(x_t|x_{t-1})= \mathcal{N}(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_tI)

Où :

  • xtx_t : version bruitée de l'entrée à l'étape temporelle ;
  • βt\beta_t : planification de faible variance contrôlant la quantité de bruit ajoutée ;
  • N\mathcal{N} : distribution gaussienne.

On peut également exprimer le bruit total ajouté jusqu'à l'étape comme :

q(xtx0)=N(xt;αˉtx0,(1αˉt)I)q(x_t|x_0)= \mathcal{N}(x_t;\sqrt{\={\alpha}_t}x_0,(1-\={\alpha}_t)I)

Où :

  • αˉt=s=1t(1βs)\=\alpha_t=\prod_{s=1}^t(1-\beta_s)

Processus inverse

L'objectif du modèle est d'apprendre l'inverse de ce processus. Un réseau de neurones paramétré par θ\theta prédit la moyenne et la variance de la distribution débruitée :

pθ(xt1xt)=N(xt1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1};\mu_\theta(x_t,t), \Sigma_\theta(x_t,t))

où :

  • xtx_t : image bruitée à l'étape temporelle tt ;
  • xt1x_{t-1} : image prédite moins bruitée à l'étape t1t-1 ;
  • μθ\mu_\theta : moyenne prédite par le réseau de neurones ;
  • Σθ\Sigma_\theta : variance prédite par le réseau de neurones.

Fonction de perte

L'entraînement consiste à minimiser la différence entre le bruit réel et le bruit prédit par le modèle à l'aide de l'objectif suivant :

Lsimple=Ex0,ϵ,t[ϵϵ0(αˉtx0+1αˉtϵ,t)2]L_{simple} = \mathbb{E}_{x_0, \epsilon, t} \left[ ||\epsilon - \epsilon_0 \left( \sqrt{\=\alpha_t}x_0 + \sqrt{1-\=\alpha_t}\epsilon, t \right)||^2 \right]

où :

  • xtx_t : image d'entrée originale ;
  • ϵ\epsilon : bruit gaussien aléatoire ;
  • tt : étape temporelle pendant la diffusion ;
  • ϵθ\epsilon_\theta : prédiction du bruit par le réseau de neurones ;
  • αˉt\={\alpha}_t : produit des paramètres du planning de bruit jusqu'à l'étape tt.

Cela aide le modèle à mieux débruiter, améliorant ainsi sa capacité à générer des données réalistes.

Modélisation Générative Basée sur le Score

Les modèles basés sur le score constituent une autre catégorie de modèles de diffusion. Au lieu d'apprendre directement le processus inverse du bruit, ils apprennent la fonction score :

xlogp(x)\nabla_x\log{p(x)}

où :

  • xlogp(x)\nabla_x\log{p(x)} : le gradient de la densité de log-probabilité par rapport à l'entrée xx. Cela indique la direction d'augmentation de la vraisemblance selon la distribution des données ;
  • p(x)p(x) : la distribution de probabilité des données.

Cette fonction indique au modèle dans quelle direction l'image doit évoluer pour ressembler davantage à des données réelles. Ces modèles utilisent ensuite une méthode d'échantillonnage telle que la dynamique de Langevin pour déplacer progressivement les données bruitées vers des régions de données à forte probabilité.

Les modèles basés sur le score fonctionnent souvent en temps continu à l'aide d'équations différentielles stochastiques (EDS). Cette approche continue offre de la flexibilité et permet de générer des échantillons de haute qualité sur divers types de données.

Applications à la Génération d’Images Haute Résolution

Les modèles de diffusion ont révolutionné les tâches génératives, en particulier dans la génération visuelle haute résolution. Parmi les applications notables :

  • Stable Diffusion : un modèle de diffusion latente qui génère des images à partir de descriptions textuelles. Il combine un modèle de débruitage basé sur U-Net avec un autoencodeur variationnel (VAE) pour opérer dans l’espace latent ;
  • DALL·E 2 : combine des embeddings CLIP et un décodage basé sur la diffusion pour générer des images très réalistes et sémantiques à partir de texte ;
  • MidJourney : une plateforme de génération d’images basée sur la diffusion, reconnue pour produire des visuels de haute qualité au style artistique à partir de requêtes abstraites ou créatives.

Ces modèles sont utilisés pour la génération artistique, la synthèse photoréaliste, l’inpainting, la super-résolution, et bien plus encore.

Résumé

Les modèles de diffusion définissent une nouvelle ère de la modélisation générative en traitant la génération de données comme un processus stochastique inversé dans le temps. Grâce aux DDPM et aux modèles basés sur le score, ils permettent un entraînement robuste, une haute qualité d’échantillons et des résultats convaincants sur diverses modalités. Leur fondement dans les principes probabilistes et thermodynamiques les rend à la fois élégants sur le plan mathématique et puissants en pratique.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 9
some-alt