- OpenAI explora, a través de Sora, si los modelos de generación de video pueden ir más allá de la simple síntesis visual y expandirse hacia la simulación del mundo físico y digital
- El diseño central consiste en colocar videos e imágenes en un espacio latente comprimido en tiempo y espacio, y entrenarlos dividiéndolos en parches espaciotemporales como si fueran tokens de Transformer
- Sora no recorta a un tamaño fijo, sino que entrena directamente con longitudes, resoluciones y relaciones de aspecto variables, por lo que puede manejar en un mismo modelo la generación de video panorámico, vertical e imágenes de alta resolución
- Aplica el recaptioning de DALL·E 3 al video y usa GPT para expandir prompts cortos en captions detallados, mejorando la fidelidad al texto y la calidad visual
- Aunque puede lograr en cierta medida consistencia 3D, persistencia de objetos y simulación de mundos digitales como Minecraft, todavía tiene limitaciones en interacciones físicas que requieren cambios de estado, como romper vidrio o comer alimentos
El problema que aborda Sora y el alcance del informe
- OpenAI explora el entrenamiento de modelos generativos a gran escala sobre datos de video
- Sora es un modelo de difusión condicionado por texto que entrena conjuntamente videos e imágenes de distintas longitudes, resoluciones y relaciones de aspecto
- El modelo más grande, Sora, puede generar videos de alta fidelidad de hasta 1 minuto de duración
- Este informe técnico se centra en dos aspectos
- Cómo convertir distintos tipos de datos visuales en una representación unificada adecuada para entrenar modelos generativos a gran escala
- Una evaluación cualitativa de las capacidades y limitaciones de Sora
- No incluye detalles finos de la arquitectura del modelo ni de su implementación
- La investigación previa en generación de video ha usado varios enfoques, como redes neuronales recurrentes, GAN, Transformers autorregresivos y modelos de difusión, pero en muchos casos se ha concentrado en categorías de datos limitadas, videos cortos o videos de tamaño fijo
- Sora fue diseñado como un modelo general de datos visuales que genera videos e imágenes en una amplia variedad de longitudes, relaciones de aspecto y resoluciones
Cómo unifica los datos visuales con parches
- Así como los modelos de lenguaje a gran escala unifican código, matemáticas y lenguaje natural mediante tokens de texto, Sora usa parches para los datos visuales
- Los videos primero se comprimen en un espacio latente de baja dimensión y luego se descomponen en parches espaciotemporales
- La representación basada en parches escala bien y funciona de forma efectiva para entrenar distintos tipos de videos e imágenes
Compresión de video y parches latentes espaciotemporales
- Sora no trabaja directamente con el video original en el espacio de píxeles, sino que entrena y genera a partir de una representación latente comprimida en tiempo y espacio
- Un modelo decodificador separado vuelve a mapear la representación latente generada al espacio de píxeles
- La secuencia de parches espaciotemporales extraída del video comprimido funciona como los tokens de un Transformer
- Las imágenes pueden verse como videos de un solo frame, por lo que se pueden procesar de la misma manera
- Durante la inferencia, coloca parches inicializados aleatoriamente en una cuadrícula del tamaño deseado para controlar el tamaño del video generado
Escalar los Transformers de difusión para generar video
- Sora es un modelo de difusión entrenado para predecir los parches limpios originales a partir de parches con ruido y de información condicional, como un prompt de texto
- Al mismo tiempo, Sora es un Transformer de difusión
- Los Transformers han mostrado buenas propiedades de escalamiento en múltiples áreas, como modelado de lenguaje, visión por computadora y generación de imágenes, y en Sora también escalan de forma efectiva como modelo de video
- Con la misma seed y la misma entrada, a medida que avanza el entrenamiento y aumenta el cómputo, la calidad de las muestras mejora de forma clara
- Los ejemplos comparativos están compuestos por base compute, 4x compute y 32x compute
Ventajas de entrenar con el tamaño original
- Los enfoques tradicionales de generación de imágenes y video suelen redimensionar, recortar o recortar en duración a tamaños estándar, como 4 segundos o 256x256
- Sora obtiene varias ventajas al entrenar los datos en su tamaño original
-
Flexibilidad de muestreo
- Sora puede muestrear videos panorámicos de 1920x1080p, videos verticales de 1080x1920 y muchos formatos intermedios
- Permite generar directamente contenido con relaciones de aspecto nativas para distintos dispositivos
- Con el mismo modelo se puede prototipar rápido en tamaños pequeños y luego generar a resolución completa
-
Mejor encuadre y composición
- Entrenar con la relación de aspecto original mejora la composición y el encuadre
- Un modelo entrenado recortando todos los videos a formato cuadrado a veces genera videos donde el sujeto solo se ve parcialmente
- Sora produce videos con mejor encuadre que un modelo basado en recortes cuadrados
Comprensión del lenguaje y procesamiento de captions
- Para entrenar un sistema de generación de texto a video se necesita una gran cantidad de videos con captions de texto correspondientes
- OpenAI aplica al video la técnica de recaptioning introducida en DALL·E 3
- Primero entrena un modelo que produce captions muy detallados, y luego lo usa para generar captions de texto para todo el video de entrenamiento
- Entrenar con captions detallados de video mejora la fidelidad al texto y la calidad general del video
- Al igual que en DALL·E 3, usa GPT para convertir prompts breves del usuario en captions largos y detallados, que luego se pasan al modelo de video
- Este enfoque se usa para que Sora genere videos de alta calidad que sigan con mayor precisión el prompt del usuario
Generación y edición usando imágenes y videos como entrada
- Sora puede recibir no solo texto, sino también imágenes o videos existentes como prompt
- Esta capacidad se usa para tareas como generación de video perfectamente repetible, animación de imágenes estáticas y extensión temporal de videos hacia adelante o hacia atrás
-
Animación de imágenes de DALL·E
- Sora puede generar video a partir de una imagen y un prompt
- Los ejemplos incluyen generación de video basada en imágenes de DALL·E 2 y DALL·E 3
-
Extensión de videos generados
- Sora puede extender un video hacia adelante o hacia atrás en el tiempo
- Tres videos extendidos hacia el futuro a partir de una misma sección del video generado tienen distintos puntos de inicio, pero convergen en el mismo final
- Del mismo modo, al extender un video hacia adelante y hacia atrás se puede crear un bucle infinito sin cortes
-
Edición video a video y conexión
- OpenAI aplica a Sora SDEdit, un método de edición de imágenes y video basado en modelos de difusión
- Esta técnica permite que Sora transforme en zero-shot el estilo y el entorno del video de entrada
- Al interpolar gradualmente entre dos videos de entrada, puede crear transiciones suaves incluso entre videos con temas y composiciones de escena completamente distintos
Capacidad de generación de imágenes
- Sora también puede generar imágenes
- Genera imágenes colocando parches de Gaussian noise en una cuadrícula espacial con longitud temporal de un solo frame
- El tamaño de imagen que puede generar es variable y puede llegar hasta una resolución de 2048x2048
- Los prompts de ejemplo incluyen un primer plano de una persona en otoño, un arrecife de coral, arte digital de un cachorro de tigre bajo un manzano y un pueblo de montaña nevado con aurora
Capacidades de simulación emergentes al escalar
- Los modelos de video entrenados a gran escala muestran capacidades emergentes para simular ciertos aspectos de personas, animales y entornos
- Estas propiedades se presentan como un fenómeno que aparece con el escalamiento, sin sesgos inductivos explícitos sobre 3D u objetos
-
Consistencia 3D
- Sora puede generar videos con movimientos dinámicos de cámara
- Cuando la cámara se desplaza o gira, las personas y los elementos de la escena se mueven de manera consistente en el espacio tridimensional
-
Consistencia a largo plazo y persistencia de objetos
- Mantener la consistencia temporal en muestras largas es un reto importante para los sistemas de generación de video
- Sora, aunque no siempre, a veces modela de forma efectiva dependencias tanto de corto como de largo alcance
- En algunos casos mantiene la presencia de personas, animales y objetos incluso cuando quedan ocluidos o salen del frame
- Puede generar múltiples tomas del mismo personaje dentro de una sola muestra y conservar su apariencia a lo largo del video
-
Interacción con el mundo
- Sora a veces simula acciones que afectan el estado del mundo de forma simple
- Entre los ejemplos están pinceladas que un pintor deja en un lienzo y que permanecen con el tiempo, o una persona que muerde una hamburguesa y deja la marca
-
Simulación de mundos digitales
- Sora también puede simular procesos artificiales como los de un videojuego
- En el ejemplo de Minecraft, puede controlar al jugador con una política básica mientras renderiza el mundo y su dinámica con alta fidelidad
- Solo con un caption prompt que mencione “Minecraft” puede activar esta capacidad en zero-shot
Limitaciones actuales y conclusión
- Sora tiene varias limitaciones como simulador
- No modela con precisión la física de muchas interacciones básicas, como la rotura de vidrio
- Tampoco siempre acierta en casos donde el estado de un objeto debe cambiar correctamente, como en interacciones de comer alimentos
- En la página principal de Sora se muestran más ejemplos de fallas, como pérdida de consistencia en muestras largas o aparición repentina de objetos
- Sus capacidades actuales muestran que el escalamiento continuo de los modelos de video podría ser una vía para desarrollar simuladores competentes del mundo físico y digital, y de los objetos, animales y personas que existen en él
1 comentarios
Opiniones en Hacker News
Creo que se está perdiendo de vista lo que esta tecnología hace posible. Puede crear secuencias plausibles de video con leyes físicas realistas y, si esto se vuelve lo suficientemente rápido como para funcionar en tiempo real, se produce un gran cambio.
Si se conecta a un robot con una señal de cámara en tiempo real y se le hace generar continuamente varias escenas futuras posibles de lo que entra por la cámara, se convierte en un robot autónomo que construye un modelo en tiempo real del mundo que lo rodea y predice el futuro. Si se agrega corrección de errores en función de qué tan bien coincide cada predicción con el resultado real, creo que podría acercarse mucho a la AGI.
La salida podría conectarse con generación de texto o con el control de sus propios movimientos, y también es posible imaginar un esquema en el que prediga los resultados de las acciones que puede tomar por sí mismo y luego elija la mejor. Para este uso, la imagen no tendría que ser perfectamente realista, ni estar libre de errores, ni ser de alta resolución. Vale la pena pensar qué tan realista es nuestra propia imaginación del mundo.
Por ejemplo, un robot limpiador del hogar ve una imagen de la sala, genera una imagen de la sala ya limpia, luego imagina interpolando un video de sí mismo limpiando la habitación, actúa en la medida de lo posible según ese video, y después vuelve a generar una secuencia y actúa, y así sucesivamente. Si hace falta, podría repetirlo varias veces por segundo.
Para un sistema de este tipo vale la pena ver V-Jepa: https://ai.meta.com/blog/v-jepa-yann-lecun-ai-model-video-jo...
Cuando haces experimentos de aprendizaje por refuerzo, siempre es interesante la expectativa de “solo lo enciendo y funcionará bien, y encontrará un montón de soluciones geniales”, pero en la práctica, aunque puede pasar, normalmente no ocurre. Muchas veces se ven señales de aprendizaje, pero no se obtienen resultados espectaculares.
La razón por la que sigo atento a si aparecen inteligencias artificiales fuertes en videojuegos como Civilization es que quiero ver si pueden resolver problemas de sistemas complejos y, a la vez, ser lo bastante realistas como para que un desarrollador de juegos las implemente de forma práctica. Un equipo de expertos podría resolver Civilization como proyecto de investigación, pero eso está lejos de ser práctico. Antes de que la IA del juego prediga la mejor jugada, me pregunto si un modelo de video podría predecirla con solo mostrarle videos de personas jugando Civilization.
El objetivo final de la robótica es, en realidad, proyectar el futuro en el espacio del mundo 3D, y creo que, dependiendo de cuán complejo sea el modelo 3D del mundo, un modelo funcional de proyección 3D podría ser mucho más pequeño.
El problema es que los datos correspondientes no existen tan fácilmente en internet en esa misma escala.
Cuando llevas tiempo en el campo de la IA, ves muchas veces supuestos avances que conducirán a la AGI, desde DeepBlue hasta las redes neuronales convolucionales, el aprendizaje por refuerzo profundo y los grandes modelos de lenguaje actuales. Cada vez puede ser que no haya sido el avance que la gente pensaba, o que para la AGI haga falta mucho más que un solo avance de ingeniería.
Si crees que esta idea es posible, basta con probarla directamente en un entorno simple. Puedes crear un pequeño mundo de cuadrícula o una simplificación de un juego basado en texto como Nethack [2], implementarlo en un entorno de laboratorio y ver qué tan bien funciona. Incluso podrías escribir un paper.
[1] https://openreview.net/pdf?id=BZ5a1r-kVsf
[2] Es mejor no empezar con Nethack en sí. Es demasiado difícil para una “IA”.
Porque tendrían ventajas como una longitud de contexto mayor que la humana, modalidades sensoriales adicionales como infrarrojo o electrorrecepción, una especialización mucho más amplia y un ancho de banda enorme.
Futuro sucesor de Sora + probable sucesor de GPT-4 = ASI, en mi opinión.
Otro comentario que escribí al respecto: https://news.ycombinator.com/item?id=39391971
Me gusta que esta página no solo muestre los mejores resultados, sino también algunos casos fallidos.
Por ejemplo, el surfista termina surfeando en el aire: https://cdn.openai.com/tmp/s/prompting_7.mp4
También hay una escena donde el vidrio que debería romperse no se rompe y solo se derrama líquido de una forma extraña: https://cdn.openai.com/tmp/s/discussion_0.mp4
La forma en que camina esta persona también es rara: https://cdn.openai.com/tmp/s/a-woman-wearing-a-green-dress-a...
Tampoco sé de dónde salió este mapa: https://cdn.openai.com/tmp/s/a-woman-wearing-purple-overalls...
Al ver la parte que dice que “interacciones como comer alimentos no siempre producen los cambios correctos en el estado de los objetos”, supongo que por eso no mostraron a Will Smith comiendo espagueti.
La frase “escalar los modelos de video es un camino prometedor hacia el desarrollo de simuladores de alto rendimiento del mundo físico y digital” es interesante para la robótica, pero un uso más cercano podría ser rellenar los huecos en escenas de Gaussian splatting.
Para crear un recorrido 3D de un espacio se necesitan cientos o miles de fotos que cubran sin cortes todos los ángulos posibles, y aun así quedan partes faltantes. Con un modelo de este nivel, parece posible reconstruir de forma plausible esquinas ocultas, detalles cercanos y partes que quedarían como agujeros o borrosas en una reconstrucción estándar.
Quizá con solo 5 a 10 fotos de un lugar se podría obtener una escena 3D fluida y realista, navegable desde cualquier ángulo, y también sería posible eliminar personas u objetos no deseados de la escena. Una reconstrucción extrapolada así no coincidiría perfectamente con la realidad en todos los detalles, pero aun así habilitaría muchas aplicaciones.
AlphaGo y AlphaZero lograron un rendimiento sobrehumano porque existía un simulador perfecto de Go. Para el mundo real en el que vivimos no tenemos un simulador así. Los modelos de lenguaje puramente grandes aprenden hasta cierto punto una representación burda y abstracta del mundo percibido por los humanos, pero Sora es un intento de crear ese simulador con deep learning.
La frase clave es: “Nuestros resultados sugieren que escalar los modelos de generación de video es un camino prometedor para crear simuladores de propósito general del mundo físico”.
Si un simulador así llega a ser lo bastante bueno, desde el lado del software podríamos obtener capacidades robóticas generales y sobrehumanas. Todavía no está claro si este enfoque realmente puede lograrlo.
¿Por qué sobrehumanas? Porque una longitud de contexto mayor que nuestra memoria de trabajo es una ventaja evidente, y también podría serlo la capacidad de simular con más densidad modalidades sensoriales alternativas o detalles con los que la mayoría de los humanos no están familiarizados.
Pero la tendencia en IA es saltarse los pasos intermedios y trabajar directamente con datos de píxeles. Es un enfoque que espera que la comprensión de la geometría 3D, la perspectiva y la física surja naturalmente de los datos de entrenamiento.
Creo que Ylecun dijo varias veces que el video es mejor para entrenar modelos grandes, porque tiene mayor densidad de información.
Los resultados son realmente impresionantes. Poder generar videos de esta calidad y extender el pasado y el futuro de un video muestra cuánto “entiende” el modelo sobre el mundo real, las interacciones entre objetos, las estructuras 3D, etc.
La generación de imágenes ya requiere saber mucho sobre el mundo, pero creo que la generación de video implica una brecha mucho mayor porque el modelo debe entender 3D, movimiento de objetos e interacciones.
Es una locura que la escena de alguien dibujando sea un video generado por completo.
Quiero probarlo, pero no puedo ni imaginar lo caro que será. Entrenan a resolución completa y pueden generar videos de hasta un minuto.
Como la generación de video era tan mala, pensé que todavía faltaban años para llegar a este nivel, pero parece otro caso más de basta con agregar datos y cómputo. Transformer parece demostrar una vez más que puede aprender cualquier cosa y hacerla bien.
El artículo principal también tiene mucha reacción, pero esta página es realmente abrumadora. Los resultados son impactantes.
Los ejemplos de robots son bastante decepcionantes, pero las personas y los personajes de fondo están en su mayoría muy bien generados, a un nivel mucho mejor que la mayoría de los modelos de difusión de imágenes estáticas. Tampoco esperaba que un modelo así pudiera mantener a la misma persona mientras interactúa con objetos tan bien y tan rápido.
Es sorprendente que este modelo genere videos con tanta consistencia 3D sin conocimiento previo 3D explícito. Tanto así que se puede entrenar una representación 3D parecida a NeRF directamente a partir de ese video: https://twitter.com/BenMildenhall/status/1758224827788468722
Lo aún más sorprendente es que hacen que el modelo inpaint un esfera cromada en el centro de la imagen, para que genere mediante el reflejo qué hay detrás de la cámara. El modelo interpreta el contexto e imagina algo que podría existir de forma plausible en todo el entorno
En otros ejemplos, caminos, objetos y personas aparecen o desaparecen de golpe; una piedra se convierte en persona; y un caballo de repente tiene una segunda cabeza y luego se vuelve otro caballo separado con solo dos patas
A primera vista es impresionante, pero si se observa con atención, está más cerca de un sueño que del realismo. Es como evocar una imagen a partir de otra, sin consistencia temporal, espacial ni causal a largo plazo. No es fácil decir que sea mucho más impresionante que Google DeepDream de hace 10 años
[1] https://dreamfusion3d.github.io/
Es una idea interesante. Así como los grandes modelos de lenguaje son simples “predictores de texto”, pero para predecir correctamente texto coherente tienen que aprender un modelo del lenguaje y del mundo, parece natural que un predictor de video también tenga que aprender un modelo del mundo que tenga sentido
Me pregunto cuántos órdenes de magnitud más tendrán que avanzar para volverse útiles de una forma similar
Si se permite este tipo de función, probablemente como un modelo premium o superior, pronto podría derrumbar toda la industria del porno. No me refiero a los sitios web, sino a los trabajadores sexuales que a menudo son explotados
Cualquiera podría describir sus gustos y visualizarlos al instante sin que seres humanos reales tengan que sufrir para crear esos videos. Sé que, sobre todo en Estados Unidos, es un tema delicado del que cuesta hablar, pero el mercado es enorme y, si se hace bien, también podría beneficiar a la humanidad
Crear un flujo interminable de estímulos adictivos es de lo más alejado que hay de beneficiar a la humanidad
Si quieres hacer algo bueno en este ámbito, sería mejor investigar formas de limitar el consumo