26/05/2017

Procesador inteligente y frugal… de Google

Últimamente, el sintagma Inteligencia Artificial aparece hasta en la sopa (en la de letras como IA). Esta disciplina,  que solía ser territorio exclusivo de una pocas universidades, está siendo invadida por un puñado de multinacionales. En primera fila, Google. Su conferencia I/O, pobre en novedades, dio relevancia a un mensaje explícito: de ahora en adelante todos sus productos y servicios – desde el buscador a la nube, desde Android a Gmail, sin olvidar la optimización publicitaria – tendrá un componente de IA como denominador común. Entendiendo por IA varias combinaciones de machine learning, reconocimiento de imágenes, lenguaje natural y otras proezas de la ciencia de la computación.

Sundar Pichai

Sundar Pichai, CEO de Google, lo expresó con una fórmula reduccionista: ´IA-first´. Pretendía dejar claro que esta prioridad cubre toda la estrategia de la compañía. Puede que lo más rompedor [o ´disruptivo` como se dice ahora] ha sido la segunda generación de su procesador Tensor Flow (TPU),  un chip relativamente sencillo y económico, investido de la cualidad de cribar e inferir múltiples informaciones.

Pichai habló durante dos hora en el Shoreline Amphitheater de Mountain View – casi una extensión de la sede de Google – y de lo que dijo se deduce que el nuevo procesador consigue mejores resultados con menos recursos físicos y requiere menos especialistas en crear algoritmos. Se avizora una batalla de relaciones públicas con Intel y Nvidia en torno al argumento de que no será indispensable diseñar superprocesadores con IA embebida, porque pueden ser reemplazados por múltiples y sencillos coprocesadores.

En su presentación,  Sundar Pichai sostuvo que con Cloud TPU «estamos construyendo lo que pensamos son los primeros centros de datos con inteligencia artificial […] Queremos que Google Cloud sea, sin discusión,  la mejor nube gracias a sus capacidades de machine learning»

Para dar empaque técnico al anuncio, el blog oficial de Google publicó un prolijo artículo que le aporta contexto y verosimilitud al discurso de Pichai. El procesador se llama Cloud Tensor Processing Unit (Cloud TPU) o coloquialmente TPU2, porque es la secuela del primero que presentó el año pasado, también en I/O. La anterior versión fue diseñada para desplegarla internamente e incorporar al motor de búsqueda un  sistema neuronal para traducción  así como  reconocimiento de  voz.

Con esta segunda generación, se pretende profundizar en actividades de inferencia y clasificación de tareas sobre modelos que, en la primera, debían haber sido entrenados previamente por una GPU. Con este chip y este software, Google quiere ponerse al frente del desarrollo de servicios cloud empresariales. En este momento, Google Cloud Platform va muy rezagada con respecto a Amazon Web Services y Microsoft Azure, pero con Cloud TPU aspira atraer cargas de trabajo con más complejidad que las que son capaces de tratar sus competidores. Esta es la teoría.

AWS, Azure, Facebook y Google son epítomes de la nueva categoría de hyperscalers, con una creciente integración vertical que les lleva a diseñar sus propias infraestructuras, al margen de la industria tradicional. En el caso de Google, su tecnología Tensor Flow le facilita aumentar considerablemente la densidad de sus servidores para manejar simultàneamente un número mucho más alto de transacciones (búsquedas).

Fuera de los hyperscalers, en el mundo nada esotérico de los problemas que se plantean diariamente a las empresas, pueden ser resueltos con enfoques de machine learning no tan ambiciosos. Sobran los dedos de las manos para contar las que manejen un volumen de datos comparable al de Google, Amazon, Alibaba, Baidu, Facebook, Microsoft, Tencent, quizá alguna más.

Es probable que Amazon – tan opaca como de costumbre – se esté apoyando en la compra de la compañía israelí Annapurna Labs para trabajar en este campo. Como Microsoft, AWS necesita iniciativas no menos ambiciosas que las de Google. En esta partida para pocos jugadores no se puede descartar a Facebook ni a la compañía china Baidu.

De las nombradas, la más explicita ha sido Microsoft, que lleva adelante proyectos en esta línea de actuación, por ejemplo acelerando el ranking de resultados de Bing. Según proclamó su CEO, Satya Nadella, en la conferencia Ignite, «Azure tiene actualmente diez veces más capacidad de IA que el superordenador más potente existente […]».

El enfoque de Microsoft difiere del de Google en que utiliza chips FPGA (programables) en lugar de esforzarse en desarrollar sus ASICs no programables. En principio, esto daría a Azure la capacidad de reaccionar reprogramando sus tarjetas con la frecuencia necesaria, mientras que Google tendría que reemplazar sus Cloud TPU en cada nodo de su nube, al no poder reprogramarlo.

Una incógnita legítima es preguntarse si el anuncio de Google amenaza en alguna medida a Intel y Nvidia, conspicuos exponentes del desarrollo de procesadores para IA. Cabe suponer que la novedad reducirá el número de chips que Google compra a intel para sus granjas de servidores. Pero no parece probable que esta se plantee competir con aquellas en el mercado, entre otras cosas porque en el mercado sólo tiene enemigos.

Para Intel, la inteligencia artificial es pieza clave de su nueva estrategia. Está ahora mismo desarrollando nuevos productos basados en la compra de Nervana Systems, cuyo fundador Naveen Rao dirige ahora el esfuerzo para integrar su acelerador Knights Cresr en los procesadores Xeon en los que serán corrientes las funciones de machine learning . Esta integración debería dar un rendimiento muy superior al reducir la complejidad en la gestión de memoria. Al parecer, en los planes de Intel está liberar en régimen open source un compilador gráfico de Nervana, mientras sus ingenieros colaboran con los de Google para que Tensor Flow pueda trabajar eficientemente bajo la arquitectura x86.

Por otra parte, el intenso despliegue de Nvidia ha convencido al mundo de que es el líder del mercado de hardware para IA, con sus chips Tegra y Volta. La primera reacción de su CEO, Jen  Hsun Huang, ha sido congratularse de que la cantidad de procesadores gráficos que Google ha comprado a Nvidia le permitieran entrenar su primera generación de TPU. Ya puesto, Huang subrayó que la última versión de Volta incluye un núcleo que trabaja a más del doble que la máxima potencia de cálculo anunciada por Google.

Volviendo al anuncio de Pichai: un grupo «muy selecto» de científicos tendrá acceso a un programa de pruebas para compartir código que el Cloud TPU pueda acelerar, a través de un cluster de 1.000 de estos procesadores, a cambio de publicar los resultados y liberar el software asociado. También los desarrolladores comerciales podrán hacer que su software funcione con el Cloud TPU sobre una plataforma de Google Cloud.

Se asegura que este TPU 2 podrá funcionar con cualquier servidor. Según la información proporcionada, un servidor x86 equipado con cuatro de estos procesadores, simplemente alojados en una tarjeta con ranura PCIe, proporcionaría un total de 180 teraflops, utilizables tanto para aprendizaje como inferencia de información. Google quiere poner al menos 64 de estas tarjetas en red, que sean capaces de manejar hasta 11,5 petaflops, cantidad verdaderamente impresionante de información. He aquí otro contraste: Google puede necesitarla para sus propios usos, pero no encontrará destino comercial a su nuevo procesador.

Los procesadores Cloud TPU actúan como aceleradores de los servidores existentes y envían las instrucciones como si fueran unidades en coma flotante, como un dato más. A diferencia de las tarjetas gráficas, que ejecutan sus propias instrucciones. Esto hace que sus inferencias sean más rápidas y consuman menos energía, aparte de requerir un hardware menos sofisticado. Otro aspecto (por demostrar) es que el coste de la operación en la fase de inferencia es 10 veces más bajo que utilizando tarjetas gráficas y se podrán utilizar aplicaciones desarrolladas para los servidores convencionales. Por lo demás, se supone que el despliegue de la infraestructura es mucho más barato.

En una presentación ad hoc, puede leerse que la próxima ola de las TI, que denomina Cloud 3.0, se caracterizará por una computación sin servidores, con inteligencia en tiempo real y asumiendo tareas de machine learning, todo ello en la nube. Bajo este prisma, las futuras mejoras en computación provendrán de las tareas realizadas sin distinción entre los servidores individuales. No habrá alojamiento de los datos, balanceo de cargas ni configuración de sistemas operativos; todo se hará en tiempo real. Esta audaz hipótesis ha entrado en circulación con la etiqueta serverless. Pero esto, evidentemente, merecería otra crónica.

A todo esto, se observa que los esfuerzos de estas compañías extraen recursos humanos de las universidades donde durante años se ha desarrollado la IA. El trasiego es siempre de la universidad a la empresa, nunca al revés. Un ejemplo entre muchos es Fei-Li, profesor de Stanford y pionero en el campo de deep learning, fichado por Google. Y no hay motivos para pensar que la tendencia amaine: las aplicaciones de la IA serán cada vez más numerosas, y los científicos están descubriendo que su experiencia académica es premiada por las empresas con salarios que ni siquiera las universidades de referencia podrían permitirse.

[informe de Lluís Alonso]


Contacto Suscríbete RSS


Sobre el autor. Copyright © 2024 El dominio norbertogallego.com es propiedad y está administrado por Diandro SL. B85905537. Creative Commons