Tecnología

Alimentando los cerebros de las máquinas inteligentes del mañana

Armando Perez

Sentido y computación son los ojos y oídos electrónicos que serán el poder definitivo para automatizar el trabajo de baja categoría y alentar a los humanos a cultivar su creatividad.

Estas nuevas capacidades para máquinas dependerán de los mejores y más brillantes talentos e inversionistas que están construyendo y financiando compañías con el objetivo de entregar los chips AI destinados a ser las neuronas y sinapsis de los cerebros robóticos.

Como cualquier otra tarea hercúlea, se espera que esta venga con grandes recompensas. Y traerá consigo grandes promesas, reclamos escandalosos y resultados sospechosos. En este momento, sigue siendo el Salvaje Oeste cuando se trata de medir los chips de AI unos contra otros.

¿Recuerdas comprar una computadora portátil antes de que Apple te lo pusiera fácil? Los núcleos, buses, gigabytes y GHz han dado paso a "Pro" y "Air". No es así para los chips AI.

Los roboticistas están luchando para hacer cara a cara con las afirmaciones hechas por las compañías de chips de AI. Cada día que pasa sin automóviles autónomos pone más vidas en riesgo de los conductores humanos. Las fábricas quieren que los humanos sean más productivos mientras están fuera de peligro. Amazon desea acercarse lo más posible al replicador de Star Trek al llevar los productos a los consumidores más rápido.

Un componente clave de eso son los chips AI que los alimentarán. Un ingeniero talentoso que apuesta por su carrera para construir chips AI, un inversionista que busca suscribir a la mejor compañía de chips AI y los desarrolladores de AV que buscan los mejores chips AI, necesitan medidas objetivas para tomar decisiones importantes que pueden tener enormes consecuencias.

Una métrica que se usa con frecuencia es TOPS, o billones de operaciones por segundo, para medir el desempeño. TOPS / W, o billones de operaciones por segundo por vatio, se utiliza para medir la eficiencia energética. Estas métricas son tan ambiguas como suenan.

¿En qué operaciones se realizan? ¿Qué es una operación? ¿Bajo qué circunstancias se realizan estas operaciones? ¿Cómo afecta el tiempo por el cual programas estas operaciones a la función que estás intentando realizar? ¿Está su chip equipado con la memoria costosa que necesita para mantener el rendimiento cuando se ejecutan modelos del "mundo real"? Expresado de manera diferente, ¿estos chips realmente entregan estos números de rendimiento en la aplicación prevista?

Imagen a través de Getty Images / antoniokhr

¿Qué es una operación?

La función matemática básica realizada en el entrenamiento y en la ejecución de redes neuronales es una convolución, que es simplemente una suma de multiplicaciones. Una multiplicación en sí misma es un conjunto de sumas (o acumulación), por lo tanto, ¿todas las sumas se agrupan como una "operación" o cada suma cuenta como una operación? Este pequeño detalle puede dar como resultado una diferencia de 2x o más en un cálculo TOPS. Para el propósito de esta discusión, usaremos una multiplicación completa y acumularemos (o MAC), como "dos operaciones".

¿Cuales son las condiciones?

¿Este chip funciona a pleno rendimiento a cerca de un voltio o está consumiendo electrones a medio voltio? ¿Habrá un enfriamiento sofisticado o se espera que se hornee al sol? Correr las fichas calientes, y engañar a los electrones con ellas, las ralentiza. A la inversa, operar a una temperatura moderada y al mismo tiempo ser generoso con el poder, le permite extraer un mejor rendimiento de un diseño determinado. Además, ¿la medición de energía incluye la carga y la preparación para una operación? Como verá a continuación, la sobrecarga de la "preparación" puede ser tan costosa como realizar la operación en sí misma.

¿Cuál es la utilización?

Aquí es donde se vuelve confuso. El hecho de que un chip tenga una determinada cantidad de TOPS, no significa necesariamente que cuando le da un problema del mundo real, realmente puede entregar el equivalente al TOPS anunciado. ¿Por qué? No se trata solo de TOPS. Tiene que ver con recuperar los pesos, o valores contra los que se realizan las operaciones, sin memoria y configurar el sistema para realizar el cálculo. Esta es una función de para qué se está utilizando el chip. Por lo general, esta "configuración" lleva más tiempo que el proceso en sí. La solución es simple: obtener los pesos y configurar el sistema para un montón de cálculos, luego hacer un montón de cálculos. El problema con eso es que estás sentado mientras todo se está recuperando, y luego estás pasando por los cálculos.

Flex Logix (mi firma, Lux Capital es un inversor) compara el rendimiento de TOPS entregado por el Nvidia Tesla T4 con los 130 TOPS que anuncia en su sitio web. Usan ResNet-50, un marco común utilizado en la visión por computadora: requiere 3.5 mil millones de MAC (equivalente a dos operaciones, según la explicación anterior de un MAC) para una imagen modesta de 224 × 224 píxeles. Son 7 mil millones de operaciones por imagen. El Tesla T4 tiene una clasificación de 3,920 imágenes / segundo, por lo tanto, multiplíquelo por las 7,000 millones de operaciones requeridas por imagen, y obtendrá 27,440,000 millones de operaciones por segundo, o 27 TOPS, muy por debajo de los 130 TOPS anunciados.

Screen Shot 2019 07 19 at 6.13.46 AM

El procesamiento por lotes es una técnica en la que los datos y los pesos se cargan en el procesador durante varios ciclos de cálculo. Esto le permite aprovechar al máximo la capacidad de cómputo, PERO a costa de ciclos agregados para cargar los pesos y realizar los cálculos. Por lo tanto, si su hardware puede hacer 100 TOPS, las limitaciones de memoria y rendimiento pueden llevarlo a obtener solo una fracción del rendimiento de TOPS de la placa de identificación.

¿A dónde fueron los TOPS? La programación, también conocida como procesamiento por lotes, de la configuración y la carga de los pesos seguidos por el número real de procesamiento nos lleva a una fracción de la velocidad que el núcleo puede realizar. Algunos fabricantes de chips superan este problema al poner un montón de SRAM rápido y costoso en chip, en lugar de DRAM off-chip lento, pero barato. Pero los chips con una tonelada de SRAM, como los de Graphcore y Cerebras , son grandes y costosos, y más propicios para los centros de datos.

Hay, sin embargo, soluciones interesantes que algunas compañías de chips están buscando:

Compiladores

Los compiladores tradicionales traducen las instrucciones en código de máquina para ejecutarse en un procesador. Con los modernos procesadores de múltiples núcleos, los subprocesos múltiples se han convertido en un lugar común, pero la "programación" en un procesador de muchos núcleos es mucho más simple que los procesos por lotes que describimos anteriormente. Muchas compañías de chips AI están confiando en compiladores genéricos de Google y Facebook, lo que resultará en que muchas compañías de chips ofrezcan productos que funcionen casi igual en condiciones reales.

Las compañías de chips que construyen compiladores patentados y avanzados específicos para su hardware, y ofrecen herramientas poderosas a los desarrolladores para una variedad de aplicaciones para sacar el máximo provecho de su silicio y Watts sin duda tendrá una ventaja distinta. Las aplicaciones van desde autos sin conductor hasta inspección de fábrica, fabricación de robótica, automatización de logística, robots domésticos y cámaras de seguridad.

Nuevos paradigmas de cómputo:

Simplemente atascar un montón de memoria cerca de un montón de resultados de cómputo en grandes chips que agotan un montón de poder. El diseño digital es una de las ventajas y desventajas, entonces, ¿cómo puedes almorzar y comerlo también? Se creativo. Mythic (mi firma Lux es un inversor) está realizando la multiplicación y se acumula dentro de la memoria flash incorporada utilizando computación analógica. Esto les permite obtener un rendimiento de velocidad y energía superior en nodos de tecnología más antiguos. Otras compañías están haciendo analógica y fotónica de lujo para escapar de las garras de la Ley de Moore.

En última instancia, si está haciendo un diseño digital convencional, está limitado por una sola restricción física: la velocidad a la que la carga viaja a través de un transistor en un nodo de proceso determinado. Todo lo demás es optimización para una aplicación dada. ¿Quieres ser bueno en múltiples aplicaciones? ¡Piense fuera de la caja VLSI!

Leave a Reply

Your email address will not be published. Required fields are marked *