Google AI presenta ArchGym un gimnasio de código abierto para Machine Learning que conecta una amplia gama de algoritmos de búsqueda con simuladores de arquitectura.
Google AI presenta ArchGym, un gimnasio de código abierto para Machine Learning que conecta algoritmos de búsqueda con simuladores de arquitectura.
La investigación en arquitectura de computadoras tiene una larga historia de producción de simuladores y herramientas para evaluar e influir en el diseño del sistema informático. Por ejemplo, a finales de la década de 1990, se desarrolló el simulador SimpleScalar para permitir a los científicos probar nuevos conceptos de microarquitectura. La investigación en arquitectura de computadoras ha avanzado mucho gracias a las simulaciones y herramientas como gem5, DRAMSys y muchas otras. Desde entonces, la disciplina ha avanzado significativamente gracias a la disponibilidad generalizada de recursos compartidos e infraestructura a nivel académico y empresarial.
La industria y la academia se centran cada vez más en la optimización del aprendizaje automático (ML) en la investigación de arquitectura de computadoras para cumplir con los estrictos requisitos específicos del dominio. Estos incluyen ML para arquitectura de computadoras, ML para aceleración TinyML, optimización de la vía de datos de aceleradores DNN, controladores de memoria, consumo de energía, seguridad y privacidad. Aunque trabajos anteriores han mostrado las ventajas del ML en la optimización del diseño, aún existen obstáculos para su adopción, como la falta de baselines robustos y reproducibles, que dificultan la comparación justa y objetiva entre diferentes metodologías. El desarrollo coherente requiere una apreciación y un ataque conjunto de estos obstáculos.
El uso del aprendizaje automático (ML) para simplificar el proceso de exploración del espacio de diseño para arquitecturas específicas del dominio se ha vuelto ampliamente utilizado. Si bien el uso de ML para explorar el espacio de diseño es tentador, hacerlo está lleno de dificultades:
- Encontrar el mejor algoritmo en una creciente biblioteca de técnicas de ML es difícil.
- No existe una forma clara de evaluar el rendimiento relativo y la eficiencia de las aproximaciones.
- La adopción de la exploración del espacio de diseño de arquitectura asistida por ML y la producción de artefactos repetibles se ven obstaculizadas por la falta de un marco unificado para la comparación justa, reproducible y objetiva entre varias metodologías.
Para abordar estos problemas, los investigadores de Google presentan ArchGym, un gimnasio flexible y de código abierto que integra numerosas técnicas de búsqueda con simuladores de construcción.
- Solucionando problemas de Vendedor Viajero Geográfico utilizando Py...
- AI Generativa y MLOps Una Combinación Poderosa para el Desarrollo E...
- Una nueva forma de ver la privacidad de los datos
Investigación de la arquitectura con aprendizaje automático: principales desafíos
Existen muchos obstáculos para estudiar la arquitectura con la ayuda del aprendizaje automático.
No existe un método para determinar sistemáticamente el mejor algoritmo de aprendizaje automático (ML) o hiperparámetros (por ejemplo, tasa de aprendizaje, pasos de calentamiento, etc.) para un problema dado en arquitectura de computadoras (por ejemplo, identificar la mejor solución para un controlador DRAM). La exploración del espacio de diseño (DSE) ahora puede utilizar una mayor variedad de métodos de ML y heurísticos, desde caminatas aleatorias hasta aprendizaje por refuerzo (RL). Si bien estas técnicas mejoran el rendimiento notablemente por encima de sus baselines elegidos, no está claro si esto se debe a los algoritmos de optimización utilizados o a los hiperparámetros establecidos.
Los simuladores de arquitectura de computadoras han sido fundamentales para el progreso arquitectónico, pero existe una preocupación apremiante sobre el equilibrio entre precisión, eficiencia y economía durante la fase de exploración. Dependiendo de los detalles del modelo utilizado (por ejemplo, modelos de proxy basados en ML contra modelos de proxy precisos en ciclos), los simuladores pueden proporcionar estimaciones de rendimiento muy diferentes. Los modelos de proxy, ya sean analíticos o basados en ML, son flexibles porque pueden ignorar características de bajo nivel, sin embargo, suelen tener un alto error de predicción. Además, las licencias comerciales pueden limitar la frecuencia con la que se puede utilizar un simulador para recopilar datos. En resumen, la compensación entre las limitaciones de rendimiento y eficiencia de muestra afecta el algoritmo de optimización seleccionado para la exploración del diseño.
Por último, pero no menos importante, el entorno de los algoritmos de ML está cambiando rápidamente, y ciertos algoritmos de ML dependen de los datos para funcionar correctamente. Además, es esencial obtener información sobre el espacio de diseño al visualizar la salida de DSE en artefactos relevantes, como conjuntos de datos.
Diseño por ArchGym
ArchGym resuelve estos problemas al proporcionarnos una forma uniforme de comparar y contrastar varios algoritmos de búsqueda basados en ML de manera consistente. Tiene dos partes principales:
1) El entorno de ArchGym
2) El agente de ArchGym
Para calcular el costo computacional de ejecutar la carga de trabajo dada un conjunto de parámetros arquitectónicos, el entorno encapsula el modelo de costo de la arquitectura y la carga de trabajo deseada. El agente contiene los hiperparámetros y las políticas que dirigen el algoritmo de ML utilizado en la búsqueda. Los hiperparámetros son integrales para el algoritmo para el cual se está optimizando el modelo y pueden tener un impacto significativo en los resultados. En contraste, la política especifica cómo el agente debe elegir un parámetro para optimizar el objetivo con el tiempo.
La interfaz estandarizada de ArchGym une estas dos partes, y el conjunto de datos de ArchGym es donde se almacena toda la información de exploración. Las tres señales principales que conforman la interfaz son el estado del hardware, los parámetros y las métricas. Estas señales son el mínimo requerido para establecer una línea de comunicación confiable entre el agente y su entorno. Estas señales permiten al agente monitorear la salud del hardware y recomendar ajustar su configuración para maximizar una recompensa especificada por el cliente. El incentivo es proporcional a varias medidas de eficiencia del hardware.
Los investigadores utilizan ArchGym para demostrar empíricamente que al menos una combinación de hiperparámetros produce el mismo rendimiento en hardware que otros métodos de aprendizaje automático (ML), y esto se cumple en una amplia gama de objetivos de optimización y situaciones de DSE. Se puede llegar a una conclusión errónea sobre qué familia de algoritmos de ML es superior si se eligen arbitrariamente el hiperparámetro para el algoritmo de ML o su línea de base. Demuestran que varios algoritmos de búsqueda, incluido el random walk (RW), pueden encontrar la recompensa óptima con el ajuste adecuado de hiperparámetros. Sin embargo, recuerde que puede requerir mucho trabajo o suerte identificar la combinación óptima de hiperparámetros.
ArchGym permite una interfaz común y extensible para la DSE de arquitecturas de ML y está disponible como software de código abierto. ArchGym también facilita líneas de base más robustas para problemas de investigación en arquitectura de computadoras y permite una evaluación justa y reproducible de diversas técnicas de ML. Los investigadores creen que sería un gran avance si los investigadores en el campo de la arquitectura de computadoras tuvieran un lugar donde pudieran utilizar el aprendizaje automático para acelerar su trabajo e inspirar nuevas y creativas ideas de diseño.