Connect with us

Inteligencia artificial

Investigadores Crean Alternativa a GPU

mm

Científicos informáticos de la Universidad de Rice, junto con colaboradores de Intel, han desarrollado una alternativa más rentable a GPU. El nuevo algoritmo se llama “motor de aprendizaje profundo sublineal” (SLIDE), y utiliza unidades centrales de procesamiento de propósito general (CPUs) sin hardware de aceleración especializado.

Los resultados se presentaron en el Centro de Convenciones de Austin, que alberga la conferencia de sistemas de aprendizaje automático MLSys.

Uno de los mayores desafíos dentro de la inteligencia artificial (IA) rodea el hardware de aceleración especializado, como las unidades de procesamiento gráfico (GPUs). Antes de los nuevos desarrollos, se creía que para acelerar la tecnología de aprendizaje profundo, se requería el uso de este hardware de aceleración especializado.

Muchas empresas han puesto gran énfasis en invertir en GPUs y hardware especializado para el aprendizaje profundo, que es responsable de tecnologías como asistentes digitales, reconocimiento facial y sistemas de recomendación de productos. Una de esas empresas es Nvidia, que crea las GPUs Tesla V100 Tensor Core. Nvidia informó recientemente un aumento del 41% en sus ingresos del cuarto trimestre en comparación con el año anterior.

El desarrollo de SLIDE abre posibilidades completamente nuevas.

Anshumali Shrivastava es profesor asistente en la Escuela de Ingeniería Brown de Rice y ayudó a inventar SLIDE con los estudiantes de posgrado Beidi Chen y Tharun Medini.

“Nuestras pruebas muestran que SLIDE es la primera implementación algorítmica inteligente de aprendizaje profundo en CPU que puede superar la aceleración del hardware GPU en conjuntos de datos de recomendación a escala industrial con arquitecturas completamente conectadas grandes”, dijo Shrivastava.

SLIDE supera el desafío de las GPUs debido a su enfoque completamente diferente para el aprendizaje profundo. Actualmente, la técnica de entrenamiento estándar para las redes neuronales profundas es la “propagación hacia atrás”, y requiere multiplicación de matrices. Esta carga de trabajo requiere el uso de GPUs, por lo que los investigadores alteraron el entrenamiento de la red neuronal para que pudiera resolverse con tablas hash.

Este nuevo enfoque reduce en gran medida la sobrecarga computacional para SLIDE. La plataforma GPU actual más avanzada que empresas como Amazon y Google utilizan para el aprendizaje profundo en la nube tiene ocho Tesla V100, y el precio es de alrededor de $100,000.

“Tenemos uno en el laboratorio, y en nuestro caso de prueba tomamos una carga de trabajo que es perfecta para V100, una con más de 100 millones de parámetros en redes completamente conectadas grandes que caben en la memoria de la GPU”, dijo Shrivastava. “La entrenamos con el mejor paquete de software que hay, Google’s TensorFlow, y tomó 3 horas y media entrenar.

“Luego mostramos que nuestro nuevo algoritmo puede hacer el entrenamiento en una hora, no en GPUs sino en una CPU Xeon de 44 núcleos”, continuó.

El hashing es un tipo de método de indexación de datos inventado en la década de 1990 para la búsqueda en Internet. Se utilizan métodos numéricos para codificar grandes cantidades de información como una cadena de dígitos, que se llama un hash. Los hashes se enumeran para crear tablas que se pueden buscar rápidamente.

“No tendría sentido implementar nuestro algoritmo en TensorFlow o PyTorch porque lo primero que quieren hacer es convertir lo que estás haciendo en un problema de multiplicación de matrices”, dijo Chen. “Eso es precisamente lo que queríamos evitar. Así que escribimos nuestro propio código C++ desde cero”.

Según Shrivastava, la mayor ventaja de SLIDE es que es paralelo de datos.

“Al ser paralelo de datos, quiero decir que si tengo dos instancias de datos que quiero entrenar, digamos que una es una imagen de un gato y la otra de un autobús, es probable que activaran neuronas diferentes, y SLIDE puede actualizar, o entrenar en estas dos de forma independiente”, dijo. “Esta es una mejor utilización del paralelismo para las CPUs”.

“La contraparte, en comparación con la GPU, es que requerimos mucha memoria”, dijo. “Hay una jerarquía de caché en la memoria principal, y si no se tiene cuidado con ella, se puede tener un problema llamado thrashing de caché, donde se obtienen muchos errores de caché”.

SLIDE ha abierto la puerta a nuevas formas de implementar el aprendizaje profundo, y Shrivastava cree que es solo el comienzo.

“Solo hemos arañado la superficie”, dijo. “Hay mucho que aún podemos hacer para optimizar. No hemos utilizado vectorización, por ejemplo, o aceleradores integrados en la CPU, como Intel Deep Learning Boost. Hay muchos trucos que aún podríamos usar para hacer que esto sea aún más rápido”.

Alex McFarland es un periodista y escritor de inteligencia artificial que explora los últimos desarrollos en inteligencia artificial. Ha colaborado con numerosas startups y publicaciones de inteligencia artificial en todo el mundo.