- Génération IA
- Posts
- Comment marche Sora ? La technique derrière le modèle de génération de vidéo d’Open AI
Comment marche Sora ? La technique derrière le modèle de génération de vidéo d’Open AI
Jeudi 15 février, OpenAI a bousculé le monde de la vidéo en publiant une démonstration de leur premier modèle de génération de vidéo. Mais qu'est-ce qui se cache derrière l'effet "Waouh" ?
L’annonce a été tellement assourdissante qu’elle a réussi à éclipser une autre annonce fracassante : la sortie du nouveau modèle de langage Gemini 1.5 de Google. Le timing était certainement voulu. Tandis que Google attaque OpenAi sur son produit phare, ChatGPT (et son modèle GPT-4), cette dernière contre-attaque sur un secteur inattendu : la génératioin de vidéo.
Et les démonstrations de Sora (c’est le nom de ce nouvel outil) publiées par Open semblent écraser la concurrence. Des vidéos d’une minutes (contre une dizaine de secondes pour les leaders actuels comme Gen-2 de Runway ou Pika). Mais surtout une cohérence impressionnante dans la représentation des objets et dans leur interaction avec leur environnement.
Introducing Sora, our text-to-video model.
Sora can create videos of up to 60 seconds featuring highly detailed scenes, complex camera motion, and multiple characters with vibrant emotions.
openai.com/sora
Prompt: “Beautiful, snowy… twitter.com/i/web/status/1…
— OpenAI (@OpenAI)
6:14 PM • Feb 15, 2024
Pour l’heure, personne n’a pu tester Sora, et donc vérifier si la qualité impressionnante des vidéos de démonstration résistait à de multiples essais.
L’article de recherche est ici. Il donne quelques indices sur les technologies utilisées, mais est resté suffisamment flou pour laisser les observateurs dans l’expectative. Comment ont-ils fait ?
Voici 6 points à retenir de Sora, et de ce que ça nous dit sur 2024, l’année de la vidéo et des technologies immersives.
1. Sora est un ChatGPT de la vidéo.
Ou pour être plus exact, un GPT-4 de la vidéo. Il adapate la technologie des transformers (qui a été inventée en 2017 pour l’analyse et la génération de texte) à la vidéo.
Dans l’analyse et la génération de texte, ce dernier est décomposé en “tokens”(qui sont des morceaux de mots), ce qui permet au modèle de rentrer en profondeur et de mieux comprendre l’importance des mots par rapport à d’autres et par rapport au contexte textuel.
Ici, les tokens sont remplacés par des “patchs visuels spatio-temporels” : on découpe la vidéo en morceaux pour en faciliter l’analyse et la génération par assemblage/ découpage. C’est une forme de “structuralisme” appliqué à la vidéo.
2. Sora est un modèle de diffusion latente
Sora utilise la technologie derrière tous les modèles de génération d’image et de vidéo actuels (Stable Diffusion, Midjourney ou encore Dall-E3) : la diffusion latente. Ou le “diffusion model”. On débruite une image pour générer pixel par pixel l’image décrite dans un texte. Ici, le modèle remplace les pixels par des patchs spatio-temporels qui permettent d’analyser les dépendances entre les différents patchs et donc d’améliorer la cohérence.
3. Sora est une combinaison de technologies existantes
Le modèle de Sora n’est pas révolutionnaire en soi, il s’inspire de découvertes précédentes. J’en ai noté 3 (référencées par OpenAI dans son article) :
VideoGPT (2021) : une technique de compression d’image qui s’appuie sur les transformers pour générer des images (en prédisant les images suivantes).
Diffusion Transformers (2022) : en utilisant ce qu'on appelle des "Diffusion Transformers", les chercheurs ont transformé le bruit en images détaillées, surpassant les techniques précédentes.
Patches (2023) : un modèle inventé par Google Deepming. En traitant les images dans leur format original (et pas compressé sous un seul aspect comme habituellement), le modèle NaViT promet un pas vers un futur où les ordinateurs peuvent "voir" de manière presque humaine, mais avec la vitesse et la précision que seule la machine peut offrir.
4. Sora s’inspire de Dall-E 3 pour générer des images à partir d’instructions très détaillées
C’est une des particularités du modèle de génération d’images star d’OpenAI, intégré dans ChatGPT : plus l’instruction (prompt) est détaillée, mieux le modèle se comporte avec précision.
5. Sora est aussi un générateur d’images, mais surpuissant
Sora peut aussi générer des images d’une qualité supérieure à Dall-E 3, en exploitant la technologie Vision Transformers et Patches.
6. Enfin, Sora affiche l’ambition de devenir un simulateur de monde au-delà d’un générateur de vidéos
Qu’est-ce que ça veut dire ? Qu’il est, selon OpenAI, capable de comprendre une action dans un contexte d’images vidéo et de modifier l’environnement autour.
Voici ce qu’en pense Jim Fan, chercheur chez NVidia (qui ne fait que des hypthèses) :
“Si vous pensez que OpenAI Sora est un jouet créatif comme DALLE, ... détrompez-vous. Sora est un moteur physique piloté par des données. Il s'agit d'une simulation de nombreux mondes, réels ou fantastiques. Le simulateur apprend le rendu complexe, la physique "intuitive", le raisonnement à long terme et l'ancrage sémantique, le tout grâce au débruitage et aux “mathématiques de gradient”.
Jim Fan fait référence à la technique du “gradient descent”, utilisée fréquemment en machine learning et en deep learning : c’est à dire une méthode de machine learning destinée à minimiser une fonction coût. Qu’’est-ce que c’est ? C’est une fonction qui évalue à quel point un modèle donné est éloigné de la réalité.
Il continue :
“Apparemment, certaines personnes ne comprennent pas ce qu'est un "moteur physique piloté par les données", alors laissez-moi clarifier les choses. Sora est un modèle de transformateur de diffusion de bout en bout. Il entre du texte/de l'image et sort directement des pixels vidéo. Sora apprend un moteur physique implicitement dans les paramètres neuronaux par “gradient descent”, à travers des quantités massives de vidéos.
Selon lui, Sora se comporte de manière assez proche d’un moteur 3D pour jeux vidéo, sans en être un. Il suggère que Sora a été entraîné sur de nombreuses données synthétiques à l'aide d'Unreal Engine 5 (le moteur star des jeux vidéo dernière génération").
Ce qui explique sa capacité à générer des vidéos où les interactions entre les objets et leur environnement sont cohérentes et persistantes (un homme qui mange un burger par exemple, affectant la forme du burger). Mais aussi de changer l’environnement d’un objet (une même voiture roule dans différents environnements) voire même de générer une vision du monde adaptative en fonction des mouvements et actions d’un personnage du jeu vidéo Minecraft.
If you think OpenAI Sora is a creative toy like DALLE, ... think again. Sora is a data-driven physics engine. It is a simulation of many worlds, real or fantastical. The simulator learns intricate rendering, "intuitive" physics, long-horizon reasoning, and semantic grounding, all… twitter.com/i/web/status/1…
— Jim Fan (@DrJimFan)
7:22 PM • Feb 15, 2024
C’est donc une sorte de GPT-4 de la vidéo capable de prédire la suite d’une vidéo avec une meilleure appréhension du moteur physique du monde. Ce qui ne veut pas forcément dire que Sora a une compréhension du monde. Cela reste de la prédiction du prochain “token” (ou du prochain “patche” pour reprendre la terminologie utilisée par OpenAI) et de la génération de pixels.
Mais prédire n’est pas comprendre…
Ce que l’on sait, c’est que le modèle peine encore avec certaines modélisations physiques complexes.
Here, Sora fails to accurately model how glass shatters.
It leads to a pretty... weird... output.
— Matt Shumer (@mattshumer_)
2:54 PM • Feb 16, 2024
On manque d’éléments techniques pour aller plus loin dans cette analyse, mais le débat fait déjà rage entre les scientifiques.
Cette approche fait penser à celle de Meta, annoncée étonnamment le même jour. Mais Meta a une approche radicalement opposée. Avec sa technologie JEPA-2, Meta (et son responsable de recherches Yann LeCun), propose un modèle non-génératif qui permet de détecter et comprendre des interactions détaillées entre des objets dans des vidéos. L’idée est de donner au modèle d’IA une compréhension du monde physique qui l’entoure. Une étape clé dans l’avancée vers les IA dites “générales”.
Yann LeCun s’est d’ailleurs exprimé sur ce sujet, estimant que l’ambition d’OpenAi était vouée à l’échec :
"Sora est formé pour générer des pixels. L'architecture/méthode sous-jacente n'a rien à voir avec l'argument. Il n'y a rien de mal à cela si votre objectif est de générer des vidéos. Mais si votre objectif est de comprendre comment le monde fonctionne, c'est une proposition perdante".