AI-For-Beginners/translations/it/lessons/X-Extras/X1-MultiModal
Pikachú 5d34bc4eb8 Add support documentation and translations for various lessons 2025-02-12 16:09:04 +00:00
..
README.md Add support documentation and translations for various lessons 2025-02-12 16:09:04 +00:00

README.md

Réseaux Multi-Modal

Après le succès des modèles transformer pour résoudre des tâches de traitement du langage naturel, des architectures similaires ont été appliquées aux tâches de vision par ordinateur. Il y a un intérêt croissant à construire des modèles qui combinent les capacités de vision et de langage naturel. L'une de ces tentatives a été réalisée par OpenAI, et elle s'appelle CLIP et DALL.E.

Pré-Formation d'Image Contrastive (CLIP)

L'idée principale de CLIP est de pouvoir comparer des invites textuelles avec une image et de déterminer à quel point l'image correspond à l'invite.

Architecture CLIP

Image provenant de cet article de blog

Le modèle est entraîné sur des images obtenues sur Internet et leurs légendes. Pour chaque lot, nous prenons N paires de (image, texte) et les convertissons en certaines représentations vectorielles I et T. Ces représentations sont ensuite appariées. La fonction de perte est définie pour maximiser la similarité cosinus entre les vecteurs correspondant à une paire (par exemple, I et T), et minimiser la similarité cosinus entre toutes les autres paires. C'est la raison pour laquelle cette approche est appelée contrastive.

Le modèle/bibliothèque CLIP est disponible sur OpenAI GitHub. L'approche est décrite dans cet article de blog, et plus en détail dans ce document.

Une fois que ce modèle est pré-entraîné, nous pouvons lui donner un lot d'images et un lot d'invites textuelles, et il retournera un tenseur avec des probabilités. CLIP peut être utilisé pour plusieurs tâches :

Classification d'Image

Supposons que nous devions classer des images entre, disons, des chats, des chiens et des humains. Dans ce cas, nous pouvons donner au modèle une image et une série d'invites textuelles : "une image d'un chat", "une image d'un chien", "une image d'un humain". Dans le vecteur résultant de 3 probabilités, nous devons simplement sélectionner l'index avec la valeur la plus élevée.

CLIP pour la Classification d'Image

Image provenant de cet article de blog

Recherche d'Image Basée sur du Texte

Nous pouvons également faire l'inverse. Si nous avons une collection d'images, nous pouvons passer cette collection au modèle, et une invite textuelle - cela nous donnera l'image qui est la plus similaire à l'invite donnée.

✍️ Exemple : Utilisation de CLIP pour la Classification d'Image et la Recherche d'Image

Ouvrez le notebook Clip.ipynb pour voir CLIP en action.

Génération d'Image avec VQGAN+ CLIP

CLIP peut également être utilisé pour la génération d'images à partir d'une invite textuelle. Pour ce faire, nous avons besoin d'un modèle générateur qui sera capable de générer des images basées sur une certaine entrée vectorielle. L'un de ces modèles s'appelle VQGAN (GAN à Quantification Vectorielle).

Les principales idées de VQGAN qui le différencient d'un GAN ordinaire sont les suivantes :

  • Utiliser une architecture transformer autoregressive pour générer une séquence de parties visuelles riches en contexte qui composent l'image. Ces parties visuelles sont à leur tour apprises par un CNN.
  • Utiliser un discriminateur de sous-image qui détecte si des parties de l'image sont "réelles" ou "fausses" (contrairement à l'approche "tout ou rien" dans un GAN traditionnel).

En savoir plus sur VQGAN sur le site Taming Transformers.

Une des différences importantes entre VQGAN et un GAN traditionnel est que ce dernier peut produire une image décente à partir de n'importe quel vecteur d'entrée, tandis que VQGAN est susceptible de produire une image qui ne serait pas cohérente. Ainsi, nous devons guider davantage le processus de création d'image, et cela peut être fait en utilisant CLIP.

Architecture VQGAN+CLIP

Pour générer une image correspondant à une invite textuelle, nous commençons avec un vecteur d'encodage aléatoire qui est passé à travers VQGAN pour produire une image. Ensuite, CLIP est utilisé pour produire une fonction de perte qui montre à quel point l'image correspond à l'invite textuelle. L'objectif est alors de minimiser cette perte, en utilisant la rétropropagation pour ajuster les paramètres du vecteur d'entrée.

Une excellente bibliothèque qui implémente VQGAN+CLIP est Pixray.

Image produite par Pixray Image produite par pixray Image produite par Pixray
Image générée à partir de l'invite un gros plan d'un portrait aquarelle d'un jeune enseignant de littérature avec un livre Image générée à partir de l'invite un gros plan d'un portrait à l'huile d'une jeune enseignante de sciences informatiques avec un ordinateur Image générée à partir de l'invite un gros plan d'un portrait à l'huile d'un vieux professeur de mathématiques devant un tableau noir

Images de la collection Enseignants Artificiels par Dmitry Soshnikov

DALL-E

DALL-E 1

DALL-E est une version de GPT-3 entraînée pour générer des images à partir d'invites. Il a été entraîné avec 12 milliards de paramètres.

Contrairement à CLIP, DALL-E reçoit à la fois le texte et l'image comme un seul flux de jetons pour les images et le texte. Par conséquent, à partir de plusieurs invites, vous pouvez générer des images basées sur le texte.

DALL-E 2

La principale différence entre DALL-E 1 et 2 est qu'il génère des images et des œuvres d'art plus réalistes.

Exemples de générations d'images avec DALL-E :

Image produite par Pixray Image produite par pixray Image produite par Pixray
Image générée à partir de l'invite un gros plan d'un portrait aquarelle d'un jeune enseignant de littérature avec un livre Image générée à partir de l'invite un gros plan d'un portrait à l'huile d'une jeune enseignante de sciences informatiques avec un ordinateur Image générée à partir de l'invite un gros plan d'un portrait à l'huile d'un vieux professeur de mathématiques devant un tableau noir

Références

Disclaimer:
Este documento ha sido traducido utilizando servicios de traducción automática basados en IA. Aunque nos esforzamos por la precisión, tenga en cuenta que las traducciones automáticas pueden contener errores o inexactitudes. El documento original en su idioma nativo debe considerarse la fuente autorizada. Para información crítica, se recomienda una traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o malas interpretaciones que surjan del uso de esta traducción.