Ángulo de Anderson

Las GPU pueden ser mejores, no solo más rápidas, en el entrenamiento de redes neuronales profundas

mm
Añade Unite.AI a tus fuentes preferidas en Google

Investigadores de Polonia y Japón, trabajando con Sony, han encontrado evidencia de que los sistemas de aprendizaje automático entrenados en GPU en lugar de CPU pueden contener menos errores durante el proceso de entrenamiento y producir resultados superiores, contradiciendo la comprensión común de que las GPU simplemente realizan estas operaciones más rápido, en lugar de mejor.

La investigación, titulada Impacto de la incertidumbre de la GPU en el entrenamiento de redes neuronales profundas predictivas, proviene de la Facultad de Psicología y Ciencias Cognitivas de la Universidad Adam Mickiewicz y dos universidades japonesas, junto con los Laboratorios de Ciencias de la Computación de SONY.

El estudio sugiere que las ‘incertidumbres’ que las redes neuronales profundas exhiben frente a diversas configuraciones de hardware y software favorecen a las unidades de procesamiento gráfico más costosas (y cada vez más escasas) y encontró en las pruebas que una red neuronal profunda entrenada exclusivamente en CPU produjo tasas de error más altas durante el mismo número de épocas (el número de veces que el sistema reprocessa los datos de entrenamiento a lo largo de una sesión).

En este ejemplo suplementario del documento, vemos (las dos filas inferiores), una calidad de resultado similar obtenida de una variedad de GPU, y (la primera fila), los resultados inferiores obtenidos de una gama de CPU muy capaces.

En este ejemplo suplementario del documento, vemos (las dos filas inferiores), una calidad de resultado similar obtenida de una variedad de GPU, y (la primera fila), los resultados inferiores obtenidos de una gama de CPU muy capaces. Source: https://arxiv.org/pdf/2109.01451.pdf

Fenómenos extraños

Estos hallazgos preliminares no se aplican de manera uniforme a los algoritmos de aprendizaje automático populares, y en el caso de arquitecturas de autoencoder simples, el fenómeno no aparece.

No obstante, el trabajo sugiere una posible ‘velocidad de escape’ para la eficacia del entrenamiento en redes neuronales complejas, donde cubrir las mismas operaciones a menor velocidad y mayor tiempo de entrenamiento no obtiene la paridad de rendimiento que uno esperaría de las rutinas de iteración matemática.

Los investigadores sugieren que esta disparidad de rendimiento podría ser particular a ciertos tipos de redes neuronales, y que los aspectos indeterminados del procesamiento específico de GPU, frecuentemente vistos como un obstáculo que eventualmente se superará, pueden no solo proporcionar beneficios notables, sino que también podrían incorporarse intencionalmente en sistemas posteriores. El documento también sugiere que los hallazgos podrían ofrecer una comprensión más profunda del procesamiento computacional relacionado con el cerebro.

Identificar las peculiaridades que aumentan la eficiencia y la calidad de los resultados de esta manera en las GPU tiene el potencial de obtener una comprensión más profunda de las arquitecturas de ‘caja negra’ de la inteligencia artificial, e incluso para mejorar el rendimiento de la CPU – aunque actualmente, las causas subyacentes son esquivas.

Autoencoder Vs. PredNet

Al estudiar las anomalías, los investigadores utilizaron un autoencoder básico y también la Red Neuronal Predictiva de la Universidad de Harvard PredNet, investigación de 2016 que se diseñó para explorar y tratar de replicar el comportamiento del córtex cerebral humano.

Ambos sistemas son redes neuronales profundas diseñadas para sintetizar imágenes apropiadas a través del aprendizaje no supervisado (con datos de los que se omitieron las etiquetas), aunque el autoencoder se ocupa linealmente de una imagen por lote, que luego produciría una salida como la siguiente imagen en una tubería recurrente. El autoencoder se entrenó en la base de datos de escritura a mano MNIST.

El autoencoder en las pruebas de los investigadores se entrenó en la base de datos MNIST, que comprende 60,000 imágenes de entrenamiento a 28x28 píxeles, anti-aliasing para inducción de escala de grises, así como 10,000 imágenes de prueba.

El autoencoder en las pruebas de los investigadores se entrenó en la base de datos MNIST, que comprende 60,000 imágenes de entrenamiento a 28×28 píxeles, anti-aliasing para inducción de escala de grises, así como 10,000 imágenes de prueba.

Por contraste, PredNet evalúa la entrada de video compleja, y en el caso de esta investigación, se entrenó en el conjunto de datos FPSI, que presenta extensas secuencias de video de un día en Disney World en Orlando, Florida (Disney fue uno de los asociados de investigación en el documento de 2012).

Secuencias de imágenes de FPSI, mostrando vistas en primera persona de un día en Disney World.

Secuencias de imágenes de FPSI, mostrando vistas en primera persona de un día en Disney World.

Las dos arquitecturas son muy diferentes en términos de complejidad. El autoencoder está diseñado para reconstruir imágenes en lugar de predecir valores objetivo. Por contraste, PredNet cuenta con cuatro capas, cada una de las cuales consiste en neuronas de representación que utilizan memoria de corto plazo convolucional (LSTM).

Las capas producen predicciones contextuales que se comparan con un objetivo para producir un término de error que se propaga a lo largo de la red. Cada una de las dos redes utiliza el aprendizaje no supervisado.

La arquitectura simple y lineal del autoencoder, y la red más laberíntica y recursiva de PredNet.

La arquitectura simple y lineal del autoencoder, y la red más laberíntica y recursiva de PredNet.

Ambos sistemas se probaron en una variedad de configuraciones de hardware y software, incluyendo CPU sin GPU (Intel i5-4590, i7-6800K, i5-7600K, o AMD Ryzen-5-3600) y CPU con GPU (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super, o i5-9400 + Titan-RTX).

La herramienta de visor de proceso interactivo htop se utilizó para asegurarse de que todo el entrenamiento ocurriera en un solo hilo (en un Intel i7-6800K), en cuatro hilos (en un Intel i5-4590 y i5-7600K), o seis hilos (en un AMD Ryzen-5-3600).

Puntos de ensilla

En el autoencoder, la diferencia media en todas las configuraciones, con y sin cuDNN, no fue significativa. Para PredNet, los resultados fueron más sorprendentes, con diferencias notables en la evaluación de pérdida y la calidad entre el entrenamiento de CPU y GPU.

Los resultados de pérdida promedio para el entrenamiento de PredNet en cuatro CPU y ocho GPU, con la red entrenada en 5000 cuadros de video en 250 lotes, con la pérdida promedio para los últimos 1000 cuadros (50 lotes) representada. Se desactivó cuDNN.

Los resultados de pérdida promedio para el entrenamiento de PredNet en cuatro CPU y ocho GPU, con la red entrenada en 5000 cuadros de video en 250 lotes, con la pérdida promedio para los últimos 1000 cuadros (50 lotes) representada. Se desactivó cuDNN.

Los investigadores concluyen que ‘Aunque el mecanismo no está claro, el hardware de la GPU parece tener la capacidad de avanzar en el entrenamiento de las redes neuronales profundas.’

Los resultados indican que las GPU pueden ser mejores para evitar los puntos de ensilla – las áreas en un gradiente descendente que describen el fondo de una pendiente.

El punto más bajo de las pendientes en un gradiente descendente es el 'punto de ensilla', llamado así por razones obvias. Fuente: https://www.pinterest.com.au/pin/436849232581124086/

El punto más bajo de las pendientes en un gradiente descendente es el ‘punto de ensilla’, llamado así por razones obvias. Fuente: https://www.pinterest.com.au/pin/436849232581124086/

Los puntos de ensilla, aunque son un obstáculo, han sido ampliamente descartados como fácilmente sorteables en el pensamiento reciente sobre la optimización del descenso de gradiente estocástico (SGD), pero el nuevo documento sugiere que no solo las GPU pueden estar únicamente equipadas para evitarlos, sino que la influencia de los puntos de ensilla debería ser revisada.

Escritor sobre aprendizaje automático, especialista en síntesis de imágenes humanas. Antiguo jefe de contenido de investigación en Metaphysic.ai, hasta su disolución en DNEG's Brahma.ai.
Portfolio site: martinanderson.ai
Contact: martin@martinanderson.ai