Este artículo es parte de nuestras revisiones de artículos de investigación de IA, una serie de publicaciones que exploran los últimos hallazgos en inteligencia artificial.
En un artículo publicado en la revista científica revisada por pares Naturaleza La semana pasada, los científicos de Google Brain introdujeron una técnica de aprendizaje por refuerzo profundo para la planificación del piso, el proceso de organizar la ubicación de diferentes componentes de chips de computadora.
Los investigadores lograron utilizar la técnica de aprendizaje por refuerzo para diseñar la próxima generación de Unidades de procesamiento de tensores, los procesadores de inteligencia artificial especializados de Google.
El uso de software en el diseño de chips no es nuevo. Pero según los investigadores de Google, el nuevo modelo de aprendizaje por refuerzo «genera automáticamente planos de planta de chips que son superiores o comparables a los producidos por humanos en todas las métricas clave, incluido el consumo de energía, el rendimiento y el área del chip». Y lo hace en una fracción del tiempo que le tomaría a un humano hacerlo.
La superioridad de la IA sobre el desempeño humano ha llamado mucho la atención. Un medio de comunicación lo describió como “software de inteligencia artificial que puede diseñar chips de computadora más rápido que los humanos” y escribió que “un chip que a los humanos les tomaría meses diseñar puede ser ideado por [Google’s] nueva IA en menos de seis horas «.
Otro medio escribió: «El círculo virtuoso del diseño de chips de IA para IA parece que apenas está comenzando».
Pero mientras leía el artículo, lo que me sorprendió no fue la complejidad del sistema de inteligencia artificial utilizado para diseñar chips de computadora, sino las sinergias entre la inteligencia humana y la artificial.
Analogías, intuiciones y recompensas
El documento describe el problema como tal: «La planificación del piso de chips implica colocar listas de redes en lienzos de chips (cuadrículas bidimensionales) para que las métricas de rendimiento (por ejemplo, consumo de energía, tiempo, área y longitud de cable) se optimicen, mientras se adhieren a las estrictas restricciones de densidad. y congestión de rutas «.
Básicamente, lo que quieres hacer es colocar los componentes de la forma más óptima. Sin embargo, como cualquier otro problema, a medida que aumenta la cantidad de componentes en un chip, encontrar diseños óptimos se vuelve más difícil.
El software existente ayuda a acelerar el proceso de descubrimiento de arreglos de chips, pero se quedan cortos cuando el chip objetivo aumenta en complejidad. Los investigadores decidieron extraer experiencia de la forma en que el aprendizaje por refuerzo ha resuelto otros problemas espaciales complejos, como el juego Go.
«La planificación de la planta de chips es análogo [emphasis mine] a un juego con diferentes piezas (por ejemplo, topologías de lista de redes, recuentos de macros, tamaños de macros y relaciones de aspecto), tableros (tamaños de lienzo y relaciones de aspecto variables) y condiciones de victoria (importancia relativa de diferentes métricas de evaluación o diferentes restricciones de densidad y congestión de enrutamiento) ”, Escribieron los investigadores.
Esta es la manifestación de uno de los aspectos más importantes y complejos de la inteligencia humana: la analogía. Los humanos podemos extraer abstracciones de un problema que resolvemos y luego aplicar esas abstracciones a un nuevo problema. Si bien damos por sentado estas habilidades, son lo que nos hace muy buenos en el aprendizaje por transferencia. Esta es la razón por la que los investigadores pudieron replantear el problema de la planificación del piso de chips como un juego de mesa y abordarlo de la misma manera que otros científicos habían resuelto el juego de Go.
Los modelos de aprendizaje por refuerzo profundo pueden ser especialmente buenos para buscar espacios muy grandes, una hazaña que es físicamente imposible con el poder de cómputo del cerebro. Pero los científicos enfrentaron un problema que era órdenes de magnitud más complejo que Go. «[The] ¡El espacio de estado de colocar 1000 grupos de nodos en una cuadrícula con 1000 celdas es del orden de 1000! (mayor de 102500), mientras que Go tiene un espacio de estado de 10360”, Escribieron los investigadores. Los chips que querían diseñar estarían compuestos por millones de nodos.
Resolvieron el problema de la complejidad con una red neuronal artificial que podría codificar diseños de chips como representaciones vectoriales y facilitaron mucho la exploración del espacio del problema. Según el periódico, «Nuestro intuición [emphasis mine] era que una política capaz de la tarea general de colocación de chips también debería poder codificar el estado asociado con un nuevo chip invisible en una señal significativa en el momento de la inferencia. Por lo tanto, entrenamos una arquitectura de red neuronal capaz de predecir la recompensa en la colocación de nuevas listas de red, con el objetivo final de utilizar esta arquitectura como la capa codificadora de nuestra política «.
El término intuición se usa a menudo de manera vaga. Pero es un proceso muy complejo y poco entendido que involucra experiencia, conocimiento inconsciente, reconocimiento de patrones y más. Nuestras intuiciones provienen de años de trabajo en un campo, pero también pueden obtenerse de experiencias en otras áreas. Afortunadamente, poner a prueba estas intuiciones es cada vez más fácil con la ayuda de herramientas de aprendizaje automático y computación de alta potencia.
También vale la pena señalar que los sistemas de aprendizaje por refuerzo necesitan una recompensa bien diseñada. De hecho, algunos científicos creen que con la función de recompensa adecuada, el aprendizaje por refuerzo es suficiente para alcanzar la inteligencia artificial general. Sin embargo, sin la recompensa adecuada, un agente de RL puede atascarse en bucles interminables, haciendo cosas estúpidas y sin sentido. En el siguiente video, un agente de RL que juega a Coast Runners está tratando de maximizar sus puntos y abandona el objetivo principal, que es ganar la carrera.
Los científicos de Google diseñaron la recompensa por el sistema de planificación de piso como la «suma ponderada negativa de la longitud de cable del proxy, la congestión y la densidad». Los pesos son hiperparámetros que tuvieron que ajustar durante el desarrollo y entrenamiento del modelo de aprendizaje por refuerzo.
Con la recompensa adecuada, el modelo de aprendizaje por refuerzo pudo aprovechar su poder de cómputo y encontrar todo tipo de formas de diseñar planos de planta que maximizaran la recompensa.
Conjuntos de datos seleccionados
La red neuronal profunda utilizada en el sistema se desarrolló mediante aprendizaje supervisado. El aprendizaje automático supervisado requiere datos etiquetados para ajustar los parámetros del modelo durante el entrenamiento. Los científicos de Google crearon «un conjunto de datos de 10,000 ubicaciones de chips donde la entrada es el estado asociado con una ubicación determinada y la etiqueta es la recompensa por esa ubicación».
Para evitar la creación manual de cada plano, los investigadores utilizaron una combinación de planos diseñados por humanos y datos generados por computadora. No hay mucha información en el documento sobre cuánto esfuerzo humano se involucró en la evaluación de los ejemplos generados por algoritmos incluidos en el conjunto de datos de entrenamiento. Pero sin datos de entrenamiento de calidad, los modelos de aprendizaje supervisado terminarán haciendo inferencias deficientes.
En este sentido, el sistema de IA se diferencia de otros programas de aprendizaje reforzado como AlphaZero, que desarrolló su política de juego sin necesidad de intervención humana. En el futuro, los investigadores podrían desarrollar un agente de RL que pueda diseñar sus propios planos de planta sin la necesidad de componentes de aprendizaje supervisados. Pero supongo que, dada la complejidad del problema, existe una gran posibilidad de que la resolución de tales problemas continúe requiriendo una combinación de intuición humana, aprendizaje automático e informática de alto rendimiento.
Diseño de aprendizaje reforzado vs diseño humano
Entre los aspectos interesantes del trabajo presentado por los investigadores de Google se encuentra la disposición de los chips. Los humanos usamos todo tipo de atajos para superar los límites de nuestro cerebro. No podemos abordar problemas complejos en una gran parte. Pero podemos diseñar sistemas modulares y jerárquicos para dividir y conquistar la complejidad. Nuestra capacidad para pensar y diseñar arquitecturas de arriba hacia abajo ha jugado un papel importante en el desarrollo de sistemas que pueden realizar tareas muy complicadas.
Daré un ejemplo de ingeniería de software, mi propia área de especialización. En teoría, puede escribir programas completos en una secuencia de comandos muy grande y contigua en un solo archivo. Pero los desarrolladores de software nunca escriben sus programas de esa manera. Creamos software en pequeñas piezas, funciones, clases, módulos, que pueden interactuar entre sí a través de interfaces bien definidas. Luego anidamos esas piezas en piezas más grandes y creamos gradualmente una jerarquía de componentes. No es necesario leer todas las líneas de un programa para comprender lo que hace. La modularidad permite que varios programadores trabajen en un solo programa y varios programas para reutilizar componentes previamente construidos. A veces, solo mirar la arquitectura de clase de un programa es suficiente para indicarle la dirección correcta para localizar un error o encontrar el lugar correcto para agregar una actualización. A menudo intercambiamos velocidad por modularidad y mejor diseño.
De alguna manera, lo mismo se puede ver en el diseño de chips de computadora. Los chips diseñados por humanos tienden a tener límites precisos entre los diferentes módulos. Por otro lado, los planos de planta diseñados por el agente de aprendizaje por refuerzo de Google han encontrado el menor camino de resistencia, independientemente de cómo se vea el diseño (vea la imagen a continuación).
Estoy interesado en ver si esto se convertirá en un modelo de diseño sostenible en el futuro o si requerirá algún tipo de compromiso entre los diseños generados por aprendizaje automático altamente optimizados y el orden de arriba hacia abajo impuesto por ingenieros humanos.
AI + inteligencia humana
Como muestra el diseñador de chips impulsado por el aprendizaje por refuerzo de Google, las innovaciones en hardware y software de inteligencia artificial continuarán requiriendo pensamiento abstracto, encontrar los problemas correctos para resolver, desarrollar intuiciones sobre las soluciones y elegir el tipo correcto de datos para validar las soluciones. Esos son los tipos de habilidades que mejores chips de IA pueden mejorar, pero no reemplazar.
Al final del día, no veo esto como una historia de “IA burlando a los humanos”, “IA creando IA más inteligente” o IA desarrollando capacidades de “superación personal recursiva”. Es más bien una manifestación de los seres humanos que encuentran formas de utilizar la IA como apoyo para superar sus propios límites cognitivos y ampliar sus capacidades. Si hay un círculo virtuoso, es uno en el que la IA y los humanos encuentran mejores formas de cooperar.