Varias innovaciones nuevas han sido posibles gracias a los avances en el campo de la inteligencia artificial y el aprendizaje profundo. Tareas complejas como la síntesis, segmentación y clasificación de textos o imágenes se manejan con éxito con la ayuda de redes neuronales. Sin embargo, puede llevar días o semanas obtener resultados adecuados del entrenamiento de redes neuronales debido a sus demandas informáticas. La inferencia en modelos previamente entrenados también es a veces lenta, particularmente para diseños complejos.
Las técnicas de paralelización aceleran el entrenamiento y la inferencia en redes neuronales profundas. Aunque estos métodos se utilizan ampliamente, algunas operaciones en redes neuronales todavía se realizan de forma secuencial. Los modelos de difusión generan resultados a través de una sucesión de etapas de eliminación de ruido, y los pases hacia adelante y hacia atrás ocurren capa por capa. A medida que aumenta el número de pasos, la ejecución secuencial de estos procesos se vuelve computacionalmente costosa, lo que potencialmente resulta en un cuello de botella computacional.
Para abordar este problema, un equipo de investigadores de Apple ha presentado DeepPCR, un algoritmo único que busca acelerar el entrenamiento y la inferencia de redes neuronales. DeepPCR funciona percibiendo una serie de L pasos como la respuesta a un determinado conjunto de ecuaciones. El equipo ha empleado el algoritmo de reducción cíclica paralela (PCR) para recuperar esta solución. Reducir el costo computacional de los procesos secuenciales de O(L) a O(log2 L) es la principal ventaja de DeepPCR. La velocidad aumenta como resultado de esta reducción de la complejidad, especialmente para valores altos de L.
El equipo ha realizado experimentos para verificar las afirmaciones teóricas sobre la menor complejidad de DeepPCR y determinar las condiciones para la aceleración. Lograron aceleraciones de hasta 30x para el paso hacia adelante y 200x para el paso hacia atrás aplicando DeepPCR para paralelizar el paso hacia adelante y hacia atrás en perceptrones multicapa.
El equipo también demostró la adaptabilidad de DeepPCR usándolo para entrenar ResNets, que tienen 1024 capas. La capacitación se puede completar hasta 7 veces más rápido gracias a DeepPCR. La técnica se utiliza para la fase de generación de modelos de difusión, produciendo una generación 11 veces más rápida que el enfoque secuencial.
El equipo ha resumido sus principales contribuciones de la siguiente manera.
- Se ha introducido DeepPCR, que es un enfoque innovador para paralelizar procesos secuenciales en el entrenamiento y la inferencia de redes neuronales. Su característica principal es su capacidad para reducir la complejidad computacional de O(L) a O(log2 L), donde L es la longitud de la secuencia.
- DeepPCR se ha utilizado para paralelizar los pases hacia adelante y hacia atrás en perceptrones multicapa (MLP). También se ha realizado un análisis exhaustivo del rendimiento de la tecnología para identificar los regímenes de alto rendimiento del método teniendo en cuenta los parámetros básicos de diseño. El estudio también investiga las compensaciones entre velocidad, corrección de la solución y uso de memoria.
- DeepPCR se ha utilizado para acelerar el entrenamiento profundo de ResNet en MNIST y la generación de modelos de difusión entrenados en conjuntos de datos MNIST, CIFAR-10 y CelebA. Los resultados han demostrado que, si bien DeepPCR muestra una aceleración significativa, recuperando datos mejorados a 7 veces más rápido para el entrenamiento de ResNet y 11 veces más rápido para la creación del modelo de difusión, aún produce resultados comparables a las técnicas secuenciales.
Revisar la Papel. Todo el crédito por esta investigación va a los investigadores de este proyecto. Además, no olvides unirte. nuestro SubReddit de 34k+ ML, 41k+ comunidad de Facebook, Canal de discordia, y Boletín electrónicodonde compartimos las últimas noticias sobre investigaciones de IA, interesantes proyectos de IA y más.
Si te gusta nuestro trabajo, te encantará nuestra newsletter.
Tanya Malhotra es estudiante de último año de la Universidad de Estudios de Petróleo y Energía, Dehradun, y cursa BTech en Ingeniería Informática con especialización en Inteligencia Artificial y Aprendizaje Automático.
Es una entusiasta de la Ciencia de Datos con buen pensamiento analítico y crítico, junto con un ardiente interés en adquirir nuevas habilidades, liderar grupos y gestionar el trabajo de manera organizada.