Se gastan 153.000 euros en ense?ar a una IA a jugar a Minecraft en PC
Ense?an a una inteligencia artificial a jugar a Minecraft y hacer lo mismo que un usuario humano entren¨¢ndola con v¨ªdeos de Internet.
Ver jugar a alguien, ya sea en un directo o en un v¨ªdeo subido, puede ense?arte sobre ese juego en particular. Puedes aprender alg¨²n truco, o conocer los fundamentos de su gameplay. Pero como para cualquier juego, necesitas saber c¨®mo se maneja, el mapeado de las acciones en los botones de un pad o de un teclado, c¨®mo responden en pantalla a tus acciones.
Cuando juegas a un juego y ya conoces la jugabilidad de ese juego, aprendes m¨¢s que quien lo est¨¦ viendo sin haberlo probado en una consola / PC, ya que esa otra persona necesita hacerse primero a los controles f¨ªsicos. Esto es un ABC, pero imagina que eres un experto en Inteligencia Artificial y necesitas ense?ar no a un jugador, sino a una IA. Y adem¨¢s con un entrenamiento m¨¢s visual que jugable. ?C¨®mo lo har¨ªas?
La IA que juega a Minecraft
Son varias las redes neuronales que han conquistado varios tipos de juegos en los ¨²ltimos a?os mediante lo que se llama aprendizaje por refuerzo: AlphaZero de DeepMind, que se enfrent¨® al ajedrez, al Go y al Shogi, y el posterior programa MuZero, que a?adi¨® la capacidad de manejar juegos de Atari.
¡°Hay millones de horas de gameplay en la Red, lo que pasa es que estos v¨ªdeos s¨®lo proporcionan un registro de lo que sucedi¨®, pero no precisamente de c¨®mo se logr¨®¡±: este es el desaf¨ªo al que se enfrentaron los ingenieros de OpenAI, compa?¨ªa especializada en Inteligencia Artificial, en su proyecto ¡®Aprendiendo a jugar al Minecraft con VPT (Preentrenamiento de V¨ªdeo)¡¯. Estos se propusieron entrenar una red neuronal en un enorme conjunto de datos de v¨ªdeo no etiquetados sobre partidas de jugadores reales de Minecraft, al tiempo que ¡°utilizamos s¨®lo una peque?a cantidad de datos de contratistas etiquetados¡±.
El desaf¨ªo era que su IA aprendiese a jugar a un juego m¨¢s complejo que los citados como es Minecraft, y adem¨¢s usando m¨¢s opciones que solo el lenguaje, vali¨¦ndose de un modelo m¨¢s visual aprovechando la cantidad de horas de gamers jugando a Minecraft que hay en Internet.
Seg¨²n los ingenieros de OpenAI, ¡°nuestro modelo puede aprender a fabricar herramientas de diamante, una tarea que suele llevar a los humanos competentes m¨¢s de 20 minutos (24.000 acciones). Nuestro modelo utiliza la interfaz humana nativa de pulsaciones de teclas y movimientos de rat¨®n, lo que lo hace bastante general, y representa un paso hacia los agentes generales que utilizan ordenadores¡±.
IDM
El concepto de adiestrar a su IA con m¨¢s videos de gameplay que de la jugabilidad en s¨ª comienza reuniendo un peque?o conjunto de datos de los jugadores contratados ¡°en el que grabamos no s¨®lo su v¨ªdeo, sino tambi¨¦n las acciones que realizaron, que en nuestro caso son pulsaciones de teclas y movimientos del rat¨®n. Con estos datos entrenamos un modelo de din¨¢mica inversa (IDM), que predice la acci¨®n que se realiza en cada paso del v¨ªdeo¡±.
Es importante destacar que el IDM puede utilizar informaci¨®n pasada y futura para adivinar la acci¨®n en cada paso. Esta tarea es mucho m¨¢s sencilla y, por tanto, requiere muchos menos datos que la tarea de clonaci¨®n del comportamiento de predecir las acciones teniendo en cuenta s¨®lo los fotogramas de v¨ªdeo pasados, lo que requiere inferir lo que la persona quiere hacer y c¨®mo llevarlo a cabo. A continuaci¨®n, ¡°podemos utilizar el IDM entrenado para etiquetar un conjunto de datos mucho mayor de v¨ªdeos en l¨ªnea y aprender a actuar mediante la clonaci¨®n de comportamientos¡±.
Los investigadores adjuntaron etiquetas a los fotogramas del v¨ªdeo del juego para acciones como 'inventario', para comprobar la colecci¨®n de objetos del jugador utilizando la tecla 'E'; y 'colarse, para moverse con cuidado en la direcci¨®n actual, utilizando la tecla SHIFT. Estas acciones se registran como cadenas de texto JSON en cada momento del juego y se almacenan con los fotogramas de v¨ªdeo.
Los fotogramas del juego con sus acciones etiquetadas se utilizaron para entrenar la red neuronal del IDM, que aprende qu¨¦ acciones van con qu¨¦ fotogramas. El IDM es una mezcla de varios tipos de redes neuronales, como una red neuronal convolucional 3D y una ResNet para analizar los fotogramas de v¨ªdeo, y varias redes Transformer (redes neuronales para secuencias, basadas en la auto-atenci¨®n,) de atenci¨®n para predecir el siguiente fotograma de v¨ªdeo.
La capacidad entrenada del IDM se utiliza entonces en un conjunto mucho mayor de secuencias de v¨ªdeo, un total de 70.000 horas de secuencias de Minecraft sin etiquetar recogidas de la web. El IDM aplica "pseudoetiquetas" a esa colecci¨®n mucho mayor. En otras palabras, el IDM, y los honorarios de los contratistas, son una forma de arrancar un enorme conjunto de v¨ªdeos de entrenamiento.
Pillar Jumping
Entrenado con 70.000 horas de v¨ªdeo online etiquetado con IDM, el llamado modelo de clonaci¨®n del comportamiento (el "modelo de fundaci¨®n VPT") realiza tareas en Minecraft que ¡°son casi imposibles de lograr con el aprendizaje por refuerzo desde cero¡±. La IA aprendi¨® a talar ¨¢rboles para recoger troncos, convertir esos troncos en tablones y, a continuaci¨®n, convertir esos tablones en una mesa de artesan¨ªa. Una secuencia que lleva a un humano experto en Minecraft aproximadamente 50 segundos o 1.000 acciones de juego consecutivas.
Adem¨¢s, el modelo realiza otras habilidades complejas que los humanos suelen hacer en el juego, como nadar, cazar animales para alimentarse y comer esa comida. Tambi¨¦n aprendi¨® la habilidad de ¡°pillar jumping¡± , un comportamiento habitual en Minecraft de elevarse saltando repetidamente y colocando un bloque debajo de uno mismo. Y sus creadores lograron que la IA hiciese todos los pasos y acciones que se requieren para lograr el Pico de Diamante, lo que le llev¨® m¨¢s de 20 minutos y 24.000 acciones.
Por qu¨¦ entrenarlo con Minecraft
?Por qu¨¦ usar Minecraft y no otro juego? OpenAI eligi¨® validar su m¨¦todo de aprendizaje en Minecraft porque se trata de ¡°uno de los videojuegos m¨¢s jugados del mundo y, por tanto, cuenta con una gran cantidad de datos de v¨ªdeo disponibles de forma gratuita¡±. Y porque es ¡°un juego abierto con una gran variedad de cosas que hacer, similar a las aplicaciones del mundo real, como el uso del ordenador¡±.
A diferencia de trabajos anteriores en Minecraft que utilizan espacios de acci¨®n simplificados con el fin de facilitar la exploraci¨®n, su IA utiliza la interfaz humana nativa, mucho m¨¢s aplicable, aunque tambi¨¦n mucho m¨¢s dif¨ªcil: 20Hz de velocidad de fotogramas con el rat¨®n y el teclado.
153.000 euros
El trabajo de construcci¨®n de la red neuronal, denominada VPT, se desarroll¨® en dos etapas. En la primera se necesitaron jugadores humanos o contratistas, que reunieron 4.500 horas de juego. M¨¢s tarde, los investigadores descubrieron que en realidad s¨®lo necesitaban unas 2.000 horas.
Baker y su equipo describen el proceso:
¡°Tuvimos las solicitudes abiertas durante un d¨ªa, y luego seleccionamos al azar a 10 solicitantes para la primera ronda de contratistas. M¨¢s adelante, cuando necesit¨¢bamos m¨¢s datos y algunos contratistas pidieron que se rescindieran sus contratos, a?adimos m¨¢s solicitantes del grupo original, as¨ª como referencias de los contratistas que ya estaban trabajando.
A los contratistas se les pag¨® 20 d¨®lares / 19 euros por hora (menos las tasas de la plataforma Upwork y los impuestos aplicables). Todos los resultados presentados en este documento se basan en unas 4.500 horas de datos (incluidos los datos registrados para recopilar estad¨ªsticas del juego humano que no se utilizaron para la formaci¨®n), que nos costaron unos 90.000 d¨®lares (86.300€). A lo largo del proyecto, recogimos algunos datos que no utilizamos debido a fallos en la grabadora y para algunas ideas que finalmente no llevamos a cabo.
En total, gastamos unos 160.000$ (153.410€) en compensaciones a contratistas a lo largo del proyecto. Sin embargo, como discutimos en la secci¨®n 4.6, probablemente podr¨ªamos obtener la mayor¨ªa de nuestros resultados con un IDM entrenado usando s¨®lo 2.000$ (1.917€) de datos, es decir, el modelo VPT b¨¢sico, el ajuste de BC al conjunto de datos earlygame_keyword y los resultados del ajuste de RL.
La recopilaci¨®n del conjunto de datos contractor_house cost¨® unos 8.000 d¨®lares (7.670€). Como utilizamos el IDM entrenado en unas 2.000 horas de datos de contratistas, el coste real de los datos de contratistas para esos resultados fue de unos 40.000$ (38.352€)¡±.