noticias

¡el tráfico de formación llm es 10.000 veces menor! un nuevo optimizador distribuido que integra la potencia informática del mundo para entrenar una ia potente

2024-09-10

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina



  nuevo informe de sabiduría

editor: alan
[introducción a la nueva sabiduría]recientemente, nous research anunció un gran avance. al utilizar un optimizador distribuido independiente de la arquitectura y la red, los investigadores redujeron con éxito el volumen de comunicación entre gpu durante el entrenamiento llm entre 1000 y 10 000 veces.

¿qué pasaría si toda la potencia informática del mundo pudiera utilizarse para entrenar modelos de ia?

recientemente, nous research, que ha atraído una gran atención con el lanzamiento del código abierto hermes 3 (basado en llama 3.1), anunció una vez más un gran avance: distro (distributed internet training).

al utilizar un optimizador distribuido independiente de la arquitectura y la red, los investigadores redujeron con éxito la comunicación entre gpu entre 1.000 y 10.000 veces durante el entrenamiento llm.

con mejoras tan exageradas, el importante costo y cuello de botella del entrenamiento de modelos grandes (el ancho de banda) ya no es un problema.

con el método distro, puede distribuir la carga de entrenamiento a internet y todo el mundo en línea se convierte en un enorme grupo heterogéneo de servidores de ia.

——cualquier dispositivo con potencia informática relevante puede participar en el proceso de formación.

los experimentos han demostrado que el método descrito en este artículo básicamente no causa una disminución en el rendimiento del modelo. al mismo tiempo, distro-adamw es equivalente al adamw + all-reduce estándar en términos de velocidad de convergencia.

capacitación distribuida en internet.

en términos generales, entrenar redes neuronales a gran escala implica una importante sobrecarga de comunicación.

por ejemplo, al realizar el paralelismo de datos, se calculan diferentes datos de entrenamiento hacia adelante y hacia atrás en diferentes hardware (tarjetas gráficas, etc.). después de eso, los gradientes calculados por el mismo lote de datos deben sincronizarse entre las tarjetas gráficas antes de ingresar. siguiente paso.

si el modelo es paralelo, los datos intermedios deben fusionarse o acumularse mediante all-reduce.

si estos gastos generales de comunicación de datos no se pueden superponer, se convertirán en un cuello de botella en el entrenamiento del modelo.

da la casualidad de que la memoria de vídeo y el ancho de banda de laohuang son muy caros, e incluso el hardware necesario para configurar varias tarjetas también es muy caro.

para resolver este problema, los investigadores desarrollaron distro, que reduce los requisitos de comunicación entre gpu de cuatro a cinco órdenes de magnitud sin depender del análisis amortizado, lo que permite el entrenamiento de baja latencia de grandes redes neuronales en redes lentas.

distro es general, escalable y sincronizado con el reloj (similar a sgd, adam, etc., cada paso de entrenamiento utiliza las mismas operaciones aritméticas y lleva el mismo tiempo).

además, en comparación con optimizadores ad hoc de baja comunicación anteriores, distro es insensible a la topología de las redes de telecomunicaciones y la arquitectura de la red neuronal, y puede admitir de forma nativa el entrenamiento paralelo de datos distribuidos (ddp) con una sobrecarga mínima.

formación previa al llm

los investigadores utilizaron nanotron como marco de preentrenamiento y solo ejecutaron bajo la estrategia ddp (cada gpu carga el modelo completo en vram).

llm selecciona llama 2 de tamaño 1.2b. los hiperparámetros utilizados en el modelo y el entrenamiento son los siguientes:

los datos de entrenamiento utilizan el conjunto de datos dolma v1.7 y se seleccionan aleatoriamente un 10% de muestras representativas (los primeros 105 mil millones de tokens).

el optimizador utiliza adamw, β1 = 0,9, β2 = 0,95, la tasa de aprendizaje máxima es 4 × 10e-4, se utiliza el esquema de caída del coseno y la caída de peso se establece en 0,1.

como otro conjunto de experimentos para comparar, adamw fue reemplazado por distro-adamw sin cambiar los hiperparámetros y deshabilitar la operación all-reduce en nanotron.

a diferencia de los métodos de entrenamiento distribuido anteriores, distro no sincroniza el estado del optimizador (incluso puede ser sin estado).

la siguiente figura es la curva de pérdida de entrenamiento de dos conjuntos de experimentos, utilizando datos de 105b para 25.000 pasos. se puede ver que la capacidad de convergencia de distro es la misma que la de all-reduce.

es importante destacar que, sin afectar el efecto del entrenamiento, distro redujo directamente el volumen de comunicación de 74,4 gb a 86,8 mb. esto equivale a una reducción de 857 veces en la presión del ancho de banda.

el autor también afirmó que estas 857 veces es solo una prueba inicial, y no será un problema ajustar los hiperparámetros más adelante y reducirlos de 1000 veces a 3000 veces.

si se realiza después del entrenamiento y se realiza un ajuste fino, incluso se puede lograr una optimización de la comunicación hasta 10,000 veces sin afectar básicamente el efecto del entrenamiento.

finalmente, para verificar el efecto del entrenamiento, el autor realizó la prueba de referencia de disparo cero gpt4all en el modelo entrenado y lo comparó con tinyllama (punto de control) entrenado en la misma cantidad de tokens.

los resultados se muestran en la tabla anterior. la arquitectura y el proceso de capacitación de tinyllama son muy similares a los experimentos de este artículo y pueden usarse como medida para verificar la cordura de los resultados.

aplicaciones futuras

flujo de datos

en el escenario de este experimento, 32 nodos utilizan el all-reduce más simple (conexión completa), y cada nodo transmite un promedio de 86,8 mb (2,8 mb × 31) y recibe la misma cantidad de datos.

si se utiliza un servidor dedicado para la agregación de datos, cada nodo solo necesita cargar 2,8 mb de datos (los datos recibidos permanecen sin cambios) y el volumen de comunicación se reduce aún más.

además, la asimetría es ventajosa porque el ancho de banda de la mayoría de los consumidores de internet está muy sesgado hacia velocidades de descarga más altas.

suponiendo que la velocidad de red estable es de 100 mbps de descarga y 10 mbps de carga, el retraso en el peor de los casos es de solo 6,94 segundos para la descarga y 2,24 segundos para la carga. si se superponen, el retraso para cada paso es de 6,94 segundos.

pd: la transmisión de datos anterior es totalmente vectorial original y puede ser más rápida si se utiliza tecnología de compresión.

ancho de banda

los autores afirmaron que los experimentos y las investigaciones actuales son relativamente limitados y es imposible concluir si la tasa de reducción del ancho de banda aumentará, disminuirá o permanecerá igual a medida que el modelo crezca.

sin embargo, los 1.2b actuales parecen ser el tamaño mínimo en el que distro puede funcionar bien (no importa cuán pequeño sea, no convergerá), por lo que se puede suponer que a medida que aumenta el tamaño del modelo, habrá cada vez menos comunicación. ser requerido.

sin embargo, también es posible que el volumen de comunicación no esté relacionado con el tamaño del modelo. en este caso, el tamaño del modelo se puede aumentar sin aumentar el ancho de banda de comunicación para observar si un modelo más grande mejorará los efectos de entrenamiento y aprendizaje.

si el último escenario es cierto, entonces se cambiará el paradigma del futuro diseño y fabricación de gpu (mayor vram y menor ancho de banda).

da la casualidad de que también preferimos cargas de trabajo con uso intensivo de computación (a diferencia de las de e/s intensivas), ya que el ancho de banda es mucho más caro que la computación en estos días.

aprendizaje federado

además de formar un llm, ¿para qué más se puede utilizar distro?

realizar formación distribuida en internet hace que la gente piense inmediatamente en el aprendizaje federado.

si bien permite la capacitación colaborativa modelo, mantener la privacidad y la descentralización de los datos de cada participante se está volviendo cada vez más importante ahora que llm está controlado por grandes empresas.

hasta ahora, el aprendizaje federado ha carecido de métodos eficaces para entrenar modelos grandes en un ancho de banda de internet limitado.

distro no tiene ningún requisito sobre cómo procesar datos o distribuir datos a nodos de gpu individuales y puede ser sin estado (similar al promedio federado), por lo que es adecuado para el futuro del aprendizaje federado.

clúster de gpu virtual heterogéneo

además, distro puede crear una red totalmente descentralizada y sin permisos para colaborar y compartir recursos.

los experimentos muestran que distro es significativamente resistente a una pequeña cantidad de nodos que se degradan o eliminan durante el entrenamiento, y puede adaptarse fácilmente a la adición de nuevos nodos.

con la bendición de esta capacidad, por un lado, puede garantizar la seguridad de todo el sistema y reducir el riesgo de que nodos que no son de confianza utilicen ataques adversarios para interrumpir las operaciones.

por otro lado, también se puede alentar a las instituciones y a los individuos a que aporten de manera flexible sus propios recursos informáticos y liberen potencia informática potencial.

incluso algunas tarjetas antiguas con memoria o potencia de cálculo insuficientes pueden unirse para ganar algo de dinero extra, utilizando estrategias como fsdp y swarm parallelism para trabajar con distro.

energía

una mayor aplicación a gran escala de distro puede aliviar el consumo de energía, los costos de infraestructura y los problemas relacionados con el uso del suelo causados ​​por la construcción de grandes centros de datos.

el proyecto llama 3.1 requirió la construcción de dos grandes supercúmulos monolíticos, cada uno con 24.000 gpu h100, y solo el proceso de capacitación produjo el equivalente a 11.000 toneladas de emisiones de co2.

en el llm actual, además del aumento en el tamaño de los parámetros del modelo, la cantidad de datos de entrenamiento también está aumentando, lo que hace que los centros de datos relacionados con la ia alcancen los límites de las redes eléctricas modernas.

distro se puede utilizar para equilibrar de forma adaptativa varios centros de datos modulares pequeños utilizando el exceso de capacidad, utilizando la infraestructura existente a través de tecnología de capacitación de equilibrio dinámico para reducir el impacto negativo de la capacitación en el medio ambiente.

en la actualidad, la teoría detrás de distro aún necesita más exploración, y en el futuro se publicarán artículos académicos y códigos completos más rigurosos y detallados.