Los desafíos actuales en la producción de IA requieren arquitecturas específicas de dominio


Presentado por Xilinx


La Inteligencia Artificial (IA) es omnipresente en casi todas las industrias y ya está cambiando muchas de nuestras vidas cotidianas. La IA tiene dos fases diferentes: entrenamiento e inferencia. Hoy, la mayoría de los ingresos por IA provienen de la capacitación: trabajar para mejorar la precisión y la eficiencia de un modelo de IA. La inferencia de IA es el proceso de usar modelos entrenados de IA para hacer una predicción. La industria de la inferencia de IA recién comienza y es probable que pronto supere los ingresos por capacitación debido a la "productización" de los modelos de IA, o de un modelo de IA a una aplicación de IA lista para la producción.

Manteniendo el ritmo de la creciente demanda [19659004] Estamos en las primeras etapas de la introducción de conclusiones de IA y todavía hay mucho espacio para la innovación y la mejora. Los requisitos para la inferencia de IA en el hardware se han disparado porque los modelos modernos de IA requieren órdenes de magnitud más poder de cómputo que los algoritmos convencionales. Sin embargo, con el fin de la Ley de Moore, ya no podemos confiar en el desarrollo de silicio. La frecuencia del procesador ha golpeado una pared durante mucho tiempo y agregar más núcleos de procesador también está en el techo. Si el 25% de su código no es paralelo, la mejor velocidad que puede obtener es 4x, sin importar cuántos núcleos empaque. Entonces, ¿cómo puede su hardware mantenerse al día con la creciente demanda de inferencia de IA? La respuesta es Arquitectura específica de dominio (DSA). Los DSA son el futuro de la informática, en el que el hardware se adapta a una carga de trabajo específica.

Cada modelo de IA se está volviendo cada vez más poderoso y complejo en el flujo de datos, y las CPU, GPU, ASSP y ASIC de hardware fijo de hoy en día tienen problemas para mantenerse al ritmo de la innovación. Las CPU se pueden usar universalmente y pueden manejar cualquier problema, pero carecen de eficiencia informática. Los aceleradores de hardware fijos como GPU y ASIC están diseñados para cargas de trabajo estándar, cuya innovación es relativamente estable. DSA es el nuevo requisito en el que el hardware personalizable se personaliza para que "cualquier grupo de cargas de trabajo" trabaje con la máxima eficiencia.

Personalización para alta eficiencia

Cada red de IA tiene tres componentes informáticos que deben ser personalizables y personalizables para obtener la máxima eficiencia: ruta de datos personalizada, precisión personalizada y jerarquía de almacenamiento personalizada. La mayoría de los chips emergentes de IA tienen potentes motores PS, pero debido a estas tres ineficiencias, no pueden bombear los datos lo suficientemente rápido.

Echemos un vistazo más de cerca a lo que DSA realmente significa para la inferencia de IA. Cada modelo de IA que ve requiere una arquitectura DSA leve o a veces drásticamente diferente. El primer componente es una ruta de datos personalizada. Cada modelo tiene diferentes topologías en las que debe transmitir datos de una capa a otra mediante difusión, cascada, omisión, etc. Sincronizar todo el procesamiento de capas para garantizar que los datos estén siempre disponibles para comenzar el siguiente procesamiento de capas es una tarea difícil. [19659005] El segundo componente es la precisión personalizada. Hasta hace unos años, el punto flotante 32 era la precisión principal. Como Google TPU es el líder de la industria en la reducción de la precisión al número entero 8, el estado del arte ha cambiado a una precisión aún más baja como INT4, INT2, binario y ternario. Investigaciones recientes ahora confirman que cada red tiene un punto dulce de precisión mixta diferente para ser más eficiente, p. B. 8 bits para las primeras 5 capas, 4 bits para las siguientes 5 capas y 1 bit para las últimas 2 capas. [19659005] El componente final, y probablemente la parte más crítica que debe adaptarse al hardware, es la jerarquía de almacenamiento definida por el usuario. Bombear constantemente los datos en un motor potente para mantenerlo ocupado es todo, y necesita una jerarquía de almacenamiento personalizada, desde almacenamiento interno hasta DDR / HBM externo, para mantenerse al día con los requisitos de cambio a cambio.

Arriba: Arquitectura específica de dominio (DSA): cada red de IA tiene tres componentes que deben ajustarse.

Aumento de la productividad de IA

Se requiere IA personalizada para cada modelo de IA. Por razones de aplicación, los casos de uso de IA están creciendo rápidamente. Los motores de clasificación, reconocimiento de objetos, segmentación, reconocimiento de voz y recomendación basados ​​en IA son solo algunos de los casos de uso que ya se están produciendo. Muchas aplicaciones nuevas aparecen todos los días.

También hay una segunda dimensión de crecimiento complejo. Se inventan más modelos dentro de cada aplicación, ya sea para mejorar la precisión o para hacer el modelo más ligero. Los FPGA Xilinx y los dispositivos informáticos adaptativos pueden adaptarse a las últimas redes de IA desde la arquitectura de hardware hasta la capa de software en un solo nodo / dispositivo, mientras que otros proveedores tienen que rediseñar un nuevo ASIC, nuevas CPU y GPU, lo que es un costo y un gasto significativos. crea tiempo para desafíos de marketing.

DSA Trends

Este nivel de innovación pone el hardware existente bajo presión constante y requiere que los fabricantes de chips innoven rápidamente. Aquí hay algunas tendencias actuales que están aumentando la necesidad de nuevos DSA.

Deep Convolution es una capa emergente que requiere gran ancho de banda de memoria y almacenamiento en caché de memoria interna especializada para ser eficiente. Los chips y GPU AI típicos tienen una arquitectura de caché L1 / L2 / L3 fija y un ancho de banda de memoria interna limitado, lo que conduce a una eficiencia muy baja. Los investigadores están constantemente inventando nuevas capas personalizadas, para las cuales los chips simplemente no tienen soporte nativo en estos días. Debido a esto, deben ejecutarse en CPU host sin aceleración, lo que a menudo se convierte en un cuello de botella de rendimiento.

Red neuronal dispersa es otra optimización prometedora donde las redes se recortan severamente, a veces hasta un 99% menos. Al recortar los bordes de la red, eliminar los valores de matriz de grano fino en convolución, etc. Sin embargo, para hacer esto de manera eficiente en hardware, necesita una arquitectura especial de baja densidad y un codificador y decodificador para estas operaciones que la mayoría de los chips simplemente no tienen. [19659005] Binario / Ternario son ​​las optimizaciones extremas que hacen que todas las operaciones matemáticas sean una pequeña manipulación. La mayoría de los chips y GPU de IA solo tienen unidades de cálculo de 8 bits, 16 bits o coma flotante, por lo que no obtendrá rendimiento ni eficiencia energética con una precisión extremadamente baja.

La inferencia MLPerf v0.5 publicada a fines de 2019 ha demostrado todos estos desafíos. Mirando los resultados clave de T4 de Nvidia, se logra una eficiencia de solo el 13%. Si bien Nvidia 130 TOPS exige un rendimiento máximo en las tarjetas T4, los modelos AI reales como SSD con MobileNet-v1 se pueden usar en 16.9 TOPS de hardware. Por lo tanto, los números de TOPS utilizados por los proveedores para la promoción de chips no son métricas significativas.

Arriba: Resultados de la inferencia MLPerf v-0.5

La computación adaptativa resuelve los desafíos de la "Productividad AI"

Los FPGA Xilinx y los dispositivos de computación adaptativa se han comparado con el estado de Estado a través de hasta 8x memoria interna Las GPU de última generación y la jerarquía de memoria pueden ser totalmente personalizadas por los usuarios. Esto es crucial para lograr TOPS de highware "utilizables" en redes modernas como el plegado profundo. La lógica FPGA programable por el usuario permite la implementación más eficiente de una capa personalizada, evitando un cuello de botella del sistema. Para una red neuronal dispersa, Xilinx se ha utilizado durante mucho tiempo en muchas aplicaciones de procesamiento de señales, como dominios de comunicación basados ​​en una matriz dispersa. Los usuarios pueden diseñar un codificador especial, decodificador y motores de matriz dispersa en tejido FPGA. Y finalmente, los FPGA binarios / termales de Xilinx usan tablas de búsqueda para implementar manipulaciones a nivel de bits, lo que resulta en casi 1 PetaOps (1000 TOPS) cuando se usa binario en lugar del entero 8. Con todas las funciones para adaptar el hardware Es posible lograr casi el 100% de la excelencia del hardware en todas las cargas de trabajo de inferencia de IA modernas.

Xilinx se enorgullece de resolver otro desafío y hacer que nuestros dispositivos sean accesibles para aquellos con experiencia en el desarrollo de software. Con Vitis ™, Xilinx ha creado una nueva plataforma de software unificada que combina inteligencia artificial y desarrollo de software y permite a los desarrolladores acelerar sus aplicaciones utilizando C ++ / Python, el marco de IA y las bibliotecas.

Arriba: Vitis Unified Software Platform.

Más información sobre Vitis AI se puede encontrar aquí.

Nick Ni es director de marketing de productos, IA, software y ecosistema en Xilinx. Lindsey Brown es especialista en marketing de productos de software e inteligencia artificial en Xilinx.


Los artículos patrocinados son contenido creado por una empresa que paga por correo o tiene una relación comercial con VentureBeat y siempre está claramente marcado. El contenido creado por nuestro equipo editorial no está influenciado de ninguna manera por anunciantes o patrocinadores. Para obtener más información, comuníquese con sales@venturebeat.com.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *