1 puntos por GN⁺ 2024-08-29 | 1 comentarios | Compartir por WhatsApp

Diffusion Models Are Real-Time Game Engines

  • GameNGen: el primer motor de juego impulsado por un modelo neuronal, que ofrece interacción en tiempo real con entornos complejos y alta calidad
  • Simulación de DOOM: puede simular de forma interactiva el juego clásico DOOM a más de 20 cuadros por segundo en una sola TPU
  • PSNR: logró 29.4 PSNR en la predicción del siguiente cuadro, similar a la compresión JPEG con pérdida
  • Evaluadores humanos: los evaluadores humanos solo fueron ligeramente mejores que una adivinanza aleatoria al distinguir entre clips del juego y clips simulados

Video completo de gameplay

Recolección de datos mediante juego del agente

  • Agente RL automatizado: como no es posible recopilar grandes volúmenes de datos de gameplay humano, en la primera etapa se entrena un agente RL automatizado para jugar, y se registran las acciones y observaciones de esos episodios de entrenamiento para usarlas como datos de entrenamiento del modelo generativo

Entrenamiento del modelo generativo de difusión

  • Stable Diffusion v1.4: se reutiliza un modelo de difusión pequeño condicionado por secuencias de acciones y observaciones previas (cuadros)
  • Adición de ruido gaussiano: durante el entrenamiento, se añade ruido gaussiano a los cuadros codificados para degradar los cuadros de contexto, permitiendo que la red corrija la información muestreada de cuadros anteriores. Esto es importante para mantener la estabilidad visual durante largos periodos

Ajuste fino del decodificador latente

  • Autoencoder preentrenado de Stable Diffusion v1.4: comprime parches de 8x8 píxeles en 4 canales latentes, lo que provoca artefactos significativos al predecir cuadros del juego. Esto afecta especialmente a los detalles pequeños y al HUD de la barra inferior
  • Entrenamiento del decodificador: para mejorar la calidad de imagen, se entrena solo el decodificador del autoencoder latente calculando la pérdida MSE sobre los píxeles del cuadro objetivo

Resumen de GN⁺

  • GameNGen es el primer motor de juego que utiliza un modelo neuronal para interactuar en tiempo real con entornos de juego complejos
  • A través de la simulación de DOOM, ofrece una predicción de cuadros de alta calidad, tan sofisticada que a los evaluadores humanos les resulta difícil distinguir entre el juego real y la simulación
  • Reutiliza modelos existentes como Stable Diffusion v1.4 para mejorar la eficiencia, y mantiene la estabilidad visual mediante técnicas como la adición de ruido gaussiano
  • Mediante el ajuste fino del decodificador latente, mejora la calidad de imagen y preserva los detalles de los cuadros del juego

1 comentarios

 
GN⁺ 2024-08-29
Opiniones de Hacker News
  • El modelo de difusión de Google que usa SD 1.4 incluye más causalidad, resultados y secuencia de lo esperado

    • Hicieron que un agente jugara Doom para obtener datos de entrenamiento infinitos
    • Agregaron ruido gaussiano a los frames de origen y recompensaron al agente por “corregir” los frames secuenciales
    • Es importante enseñar al modelo a corregir errores y mantener la estabilidad
    • Da curiosidad si este modelo podría ajustarse finamente a un estilo “fotorrealista” o de ray tracing
  • Este paper no describe un sistema que reciba entrada del usuario en tiempo real y ajuste la salida

    • Fue entrenado con un gran conjunto de datos de un agente jugando Doom
    • La entrada del usuario no se refleja en la simulación en tiempo real
    • El paper omite explicar el gameplay del usuario en tiempo real
  • Sorprende que este modelo pueda renderizar a 20 fps

    • Parece una intersección entre modelos de difusión y RNN
    • Se parece a un modelo soñando con un juego que ha jugado mucho
    • Los humanos también podrían ser máquinas que predicen el siguiente momento
  • Siguen los intentos de hacer correr Doom en todo

    • Este modelo es la versión de Doom con los requisitos de hardware más altos
    • Doom está presente en ambos extremos de las especificaciones de hardware
  • Es divertido leer comentarios que dicen que esto no tiene sentido

    • No todo tiene que crearse para generar ganancias
    • También es importante crear cosas por la experiencia de aprendizaje, el desafío y la curiosidad
    • El tiempo en el que uno se divierte nunca es tiempo perdido
  • Comparación entre los requisitos del sistema de Doom y Stable Diffusion v1

    • Doom: 4 MB de RAM, 12 MB de espacio en disco
    • Stable Diffusion v1: 860M UNet y CLIP ViT-L/14, tamaño del checkpoint de 4.27 GB, ejecutado en TPU-v5e
    • Aunque el modelo tiene capacidad para memorizar el juego cientos de veces, todavía hay mucho margen para optimizar
    • Si automatizas suficiente parte del juego, puedes replicarlo
  • El papel de un motor de juego es renderizar el mundo

    • El mensaje “esta puerta requiere la llave azul” no le da al usuario la llave azul
    • Un motor de juego puede crear juegos nuevos y modificar en tiempo real las reglas de juegos existentes
    • Un modelo de difusión no es un motor de juego
  • Aunque no se proporcionó una condición de texto, podría ser posible crear un juego nuevo solo con prompts de texto

    • Usaron RL para aprender cómo se ve y cómo funciona Doom
    • Simular un juego de mundo abierto con estados infinitos sería difícil