18 points par xguru 2024-03-22 | 3 commentaires | Partager sur WhatsApp
  • Sora repose sur Diffusion Transformers (DiT) et la diffusion latente, avec un modèle et un jeu de données d’entraînement étendus à très grande échelle
  • Sora montre qu’il est pertinent de faire évoluer les modèles vidéo, et que des montées en échelle supplémentaires, similaires à celles des grands modèles de langage (LLM), seront un moteur clé pour améliorer rapidement le modèle
  • Des entreprises comme Runway, Genmo et Pika construisent des interfaces et des workflows intuitifs pour des modèles de génération vidéo comme Sora
  • L’entraînement de Sora nécessiterait une quantité énorme de puissance de calcul, estimée à 4 200 à 10 500 GPU Nvidia H100 pendant un mois
  • Pour l’inférence, Sora pourrait générer jusqu’à environ 5 minutes de vidéo par heure et par GPU Nvidia H100. Comparée aux LLM, l’inférence des modèles à diffusion comme Sora coûte plusieurs fois plus cher
  • À mesure que des modèles comme Sora seront largement déployés, le calcul d’inférence dominera le calcul d’entraînement ; le « point mort » est estimé entre 15,3 et 38,1 millions de minutes de vidéo générées, au-delà desquelles l’inférence consomme plus de calcul que l’entraînement initial. À titre de comparaison, 17 millions de minutes (TikTok) et 43 millions de minutes (YouTube) de vidéo sont mises en ligne chaque jour
  • En tenant compte de la part des vidéos générées par l’IA sur TikTok et YouTube, la demande maximale en GPU Nvidia H100 pour l’inférence est estimée à environ 720 000 unités

Contexte

  • Sora appartient à la famille des modèles à diffusion. Les modèles à diffusion sont un choix populaire pour la génération d’images, avec des modèles connus comme DALL-E d’OpenAI ou Stable Diffusion de Stability AI. Plus récemment, des entreprises comme Runway, Genmo et Pika explorent la génération vidéo, probablement en s’appuyant elles aussi sur des modèles à diffusion.
  • Les modèles à diffusion sont un type de modèle génératif de machine learning qui apprend à produire des données, comme des images ou des vidéos, en inversant progressivement un processus d’ajout de bruit aléatoire aux données. Ces modèles partent d’un motif de bruit pur, puis retirent progressivement ce bruit en affinant les motifs pour les transformer en sorties compréhensibles et détaillées.

Détails techniques de Sora

  • OpenAI a publié un rapport technique en même temps que l’annonce de Sora. Ce rapport manque de détails, mais sa conception semble fortement influencée par l’article de recherche « scalable diffusion models with transformers »

  • Les auteurs de cet article ont proposé DiT, une architecture basée sur Transformer pour la génération d’images (DiT étant l’abréviation de Diffusion Transformers)

  • Sora semble étendre ce travail à la génération vidéo. En combinant le rapport technique de Sora et l’article sur DiT, on peut obtenir une image assez précise de la manière dont le modèle Sora fonctionne

  • Sora comporte trois éléments importants :

    • il n’opère pas dans l’espace des pixels, mais effectue la diffusion dans un espace latent (on parle de diffusion latente)
    • il utilise une architecture Transformer
    • il semble utiliser un très grand jeu de données
  • Diffusion latente

    • Pour comprendre le premier point, la diffusion latente, prenons la génération d’images
      • on pourrait générer chaque pixel via diffusion, mais ce serait très inefficace (par exemple, une image 512x512 contient 262 144 pixels)
      • à la place, on peut projeter les pixels vers une représentation latente avec un certain niveau de compression, effectuer la diffusion dans cet espace latent plus compact, puis décoder à nouveau du latent vers l’espace pixel
      • ce mappage améliore considérablement la complexité de calcul : au lieu d’exécuter le processus de diffusion sur 512x512 = 262 144 pixels, il suffit par exemple de générer 64x64 = 4 096 latents
      • cette idée était l’avancée clé de l’article « High-Resolution Image Synthesis with Latent Diffusion Models », et elle constitue la base de Stable Diffusion.
    • L’exemple de mappage des pixels vers une représentation latente provient d’une image du rapport technique de Sora.
    • DiT comme Sora exploitent cette approche. Dans le cas de Sora, il faut en plus prendre en compte la dimension temporelle de la vidéo : une vidéo est composée d’images ordonnées dans le temps
    • D’après le rapport technique de Sora, l’étape d’encodage qui projette les pixels dans l’espace latent semble se faire à la fois spatialement (compression de la largeur et de la hauteur de chaque image) et temporellement (compression dans la durée)
  • Transformer

    • Deuxième point, DiT comme Sora utilisent une architecture Transformer « vanilla » au lieu de l’architecture U-Net couramment employée
    • C’est important parce que les auteurs de l’article DiT ont observé que l’usage des Transformers entraînait un scaling prévisible, c’est-à-dire qu’en appliquant davantage de calcul d’entraînement (entraîner le modèle plus longtemps, le rendre plus grand, ou les deux), les performances s’améliorent
    • Ce comportement de scaling est une propriété importante qui peut être quantifiée par ce qu’on appelle des lois d’échelle, déjà étudiées dans le contexte des grands modèles de langage (LLM) et d’autres modèles autorégressifs sur d’autres modalités
    • La capacité à améliorer un modèle par le passage à l’échelle a été l’un des principaux moteurs des progrès rapides des LLM
    • Comme la même propriété existe aussi pour la génération d’images et de vidéos, on peut s’attendre à ce que la même recette de scaling fonctionne ici aussi
  • Jeu de données

    • Le dernier élément clé nécessaire à l’entraînement du modèle est la donnée annotée, souvent considérée comme l’ingrédient secret le plus important pour entraîner un modèle comme Sora
    • Pour entraîner un modèle texte-vers-vidéo comme Sora, il faut des paires constituées d’une vidéo et de sa description textuelle
    • OpenAI dit peu de choses sur son jeu de données, mais laisse entendre qu’il est très vaste : « inspiré par les grands modèles de langage qui acquièrent des capacités générales grâce à un entraînement sur des données à l’échelle d’Internet. »
    • OpenAI a également révélé une méthode pour associer aux images des labels textuels détaillés, utilisée pour constituer le jeu de données de DALLE-3
    • L’idée générale consiste à entraîner un modèle de captioning sur un sous-ensemble annoté du jeu de données, puis à utiliser ce modèle pour annoter automatiquement le reste
    • La même technique semble avoir été appliquée au jeu de données de Sora

Impacts

  • Sora devrait avoir plusieurs effets importants. En voici un aperçu rapide
  • Début de la viabilité pratique des modèles vidéo
    • La qualité des vidéos que Sora peut générer constitue clairement une percée, non seulement par le niveau de détail, mais aussi par la cohérence temporelle (par exemple, le modèle gère correctement la persistance d’un objet momentanément occulté et produit fidèlement les reflets sur l’eau)
    • La qualité vidéo semble désormais suffisante pour certains types de scènes utilisables dans des applications réelles
    • Par exemple, Sora pourrait bientôt remplacer une partie de l’usage des stock footage vidéo
    • Mais plusieurs défis restent à relever :
      • il n’est pas clair à quel point le modèle Sora actuel est contrôlable
      • comme le modèle produit des pixels, l’édition des vidéos générées est difficile et prend du temps
      • il faut aussi construire des interfaces utilisateur (UI) et des workflows intuitifs pour rendre ces modèles réellement utiles
      • des entreprises comme Runway, Genmo, Pika et d’autres travaillent déjà sur ces problèmes
  • Attente d’un progrès rapide des modèles vidéo
    • L’un des enseignements clés de l’article DiT est que la qualité du modèle s’améliore directement avec davantage de calcul, comme expliqué plus haut
    • Cela ressemble aux lois d’échelle observées pour les LLM
    • On peut donc s’attendre à de nouveaux progrès rapides dans la qualité des modèles de génération vidéo à mesure qu’ils seront entraînés avec toujours plus de calcul
    • Sora montre clairement que cette recette fonctionne en pratique, et l’on peut s’attendre à ce qu’OpenAI et d’autres entreprises accentuent encore leurs efforts dans cette direction
  • Génération de données synthétiques et augmentation des données
    • Dans des domaines comme la robotique et les véhicules autonomes, les données sont intrinsèquement rares : Internet regorge peu de vidéos de robots accomplissant des tâches ou de véhicules en train de conduire.
    • En général, ces problèmes ont été abordés soit par l’entraînement en simulation, soit par la collecte de données à grande échelle dans le monde réel (ou une combinaison des deux)
    • Mais ces deux approches se heurtent au fait que les données de simulation sont souvent irréalistes
    • Et collecter des données réelles à grande échelle coûte cher, tandis qu’il est difficile de réunir suffisamment de données sur des événements rares
    • Des modèles comme Sora pourraient être très utiles ici. Ils pourraient servir directement à générer des données entièrement synthétiques
    • Sora pourrait aussi être utilisé pour l’augmentation de données, en transformant des vidéos existantes pour leur donner un autre aspect
    • Le deuxième point illustré plus haut montre Sora transformant une vidéo d’une voiture rouge roulant sur un chemin forestier en paysage de jungle dense
    • On peut imaginer utiliser la même technique pour rerendre une scène du jour à la nuit ou changer les conditions météorologiques
  • Simulation et world models
    • L’apprentissage de ce qu’on appelle des world models est une direction de recherche prometteuse
    • S’ils sont suffisamment précis, ces world models peuvent servir à entraîner directement des agents en leur sein, ou être utilisés pour la planification et l’exploration.
    • Des modèles comme Sora semblent apprendre implicitement, à partir de données vidéo, une simulation de base du fonctionnement du monde réel
      • ces « simulations émergentes » sont encore imparfaites, mais restent fascinantes : elles suggèrent qu’il pourrait être possible d’entraîner à grande échelle ce type de world models à partir de vidéos
      • de plus, Sora semble capable de simuler des scènes très complexes, comme les liquides, les reflets de lumière, les tissus et les mouvements de cheveux.
      • OpenAI l’indique clairement en donnant à son rapport technique le titre « Video generation models as world simulators », signe qu’il s’agit selon eux de l’aspect le plus important du modèle.
    • Très récemment, DeepMind a démontré un effet similaire avec son modèle Genie, entraîné uniquement à partir de vidéos de jeux vidéo : le modèle a appris à simuler ces jeux (et à en créer de nouveaux)
      • dans ce cas, le modèle a appris à se conditionner sur des actions sans les avoir directement observées
      • autrement dit, l’objectif est de permettre l’apprentissage directement à l’intérieur de ces simulations.
    • En combinant les deux, il semble que des modèles comme Sora et Genie pourraient être très utiles pour entraîner à grande échelle des agents incarnés sur des tâches du monde réel (par exemple en robotique)
    • Mais il y a des limites : comme ces modèles sont entraînés dans l’espace pixel, ils modélisent tous les détails, y compris la manière dont le vent fait bouger les brins d’herbe, ce qui peut n’avoir aucun rapport avec la tâche à accomplir
    • L’espace latent est compressé, mais il doit pouvoir être reprojeté en pixels et doit donc conserver beaucoup d’informations ; il n’est donc pas certain qu’une planification efficace puisse se faire dans cet espace latent

Estimations de calcul (Compute Estimates)

  • Chez Factorial Funds, on aime examiner la quantité de calcul utilisée pour l’entraînement et l’inférence. C’est utile car cela peut éclairer les prévisions sur la quantité de calcul nécessaire à l’avenir
  • Mais comme il existe très peu de détails sur la taille du modèle et le jeu de données utilisés pour entraîner Sora, il est difficile d’estimer ces chiffres
  • Les estimations de cette section sont donc très incertaines et doivent être lues en gardant cela à l’esprit
  • (Comme il ne s’agit que d’estimations, cette partie est omise)

3 commentaires

 
soon0698 2024-03-23

J’ajoute aussi quelques TMI personnels en plus du contenu.

  • Diffusion Transformers (DiT) a été porté à l’époque par William Peebles, alors doctorant à Berkeley, et l’article a été nettement rejeté par la plus prestigieuse conférence de vision par ordinateur, la CVPR, pour « manque d’originalité » (Lack of Novelty). Il a ensuite été publié à l’ICCV, l’auteur a obtenu son diplôme, a rejoint OpenAI, puis a immédiatement pris la tête du projet Sora.
  • L’architecture de DiT est une architecture Diffusion model + Transformer. À l’époque, les excellentes performances de restauration d’image des modèles de diffusion utilisant une structure U-Net étaient déjà bien connues ; le changement apporté ici consiste à remplacer cette base CNN par une structure Vision Transformer avec Patchify. En conséquence, l’essentiel de l’article est consacré à démontrer la « Scaling Law » via l’introduction de l’architecture ViT, et la méthode effectivement proposée n’occupe même pas une page entière dans le corps du texte.
  • Contrairement à l’intérêt du grand public, les personnes du milieu académique expriment de fortes inquiétudes face au fait que ce type d’orientation attire progressivement autant d’attention et de citations. S’il suffit d’avoir plus de (bonnes) données, d’énormes ressources de calcul, et enfin une architecture pour laquelle la Scaling Law est garantie, alors on a l’impression qu’il n’y a plus besoin d’aucun hack ingénieux ni d’aucune invention supplémentaire. Si le simple fait d’ajouter 100 GPU de plus donne toujours un meilleur résultat que des méthodes astucieuses élaborées par des chercheurs, ce n’est sans doute pas très réjouissant.
 
yangisu12 2024-03-22

On dit que DiT et Sora utilisent tous deux une architecture de transformeur vanilla au lieu de l’architecture U-Net généralement utilisée, mais quel rôle jouent l’U-Net et les transformeurs en intelligence artificielle ? Je suis vraiment perdu, snif snif

 
mhj5730 2024-03-22

On dirait des extraterrestres, wow.