banner

Noticias

Jul 19, 2023

Dos

Scientific Reports volumen 13, número de artículo: 11658 (2023) Citar este artículo

173 Accesos

Detalles de métricas

El aprendizaje federado permite que múltiples nodos realicen cálculos locales y colaboren para completar tareas de aprendizaje automático sin centralizar datos privados de los nodos. Sin embargo, las frecuentes operaciones de carga/descarga de gradientes de modelos requeridas por el marco generan altos costos de comunicación, que se han convertido en el principal cuello de botella para el aprendizaje federado a medida que los modelos profundos crecen, lo que dificulta su rendimiento. En este artículo, proponemos un algoritmo de compresión cuantificada acumulada de dos capas (TLAQC) que reduce efectivamente el costo de comunicación del aprendizaje federado. TLAQC logra esto reduciendo tanto el costo de la comunicación individual como el número de rondas de comunicación global. TLAQC introduce un método de cuantificación revisado llamado RQSGD, que emplea corrección de valor cero para mitigar fenómenos de cuantificación ineficaces y minimizar los errores de cuantificación promedio. Además, TLAQC reduce la frecuencia de cargas de información de gradiente a través de un umbral adaptativo y un mecanismo de autoinspección de parámetros, lo que reduce aún más los costos de comunicación. También acumula errores de cuantificación y deltas de peso retenidos para compensar la pérdida de conocimiento del gradiente. Mediante la corrección de cuantificación y la acumulación de dos capas, TLAQC reduce significativamente la pérdida de precisión causada por la compresión de la comunicación. Los resultados experimentales demuestran que RQSGD logra una incidencia de cuantificación ineficaz tan baja como 0,003% y reduce el error de cuantificación promedio a 1,6 × \({10}^{-5}\). En comparación con FedAVG de precisión total, TLAQC comprime el tráfico cargado a solo un 6,73 % y aumenta la precisión en un 1,25 %.

Con los rápidos avances en tecnologías emergentes como Internet de las cosas (IoT) y la computación de borde, el volumen de datos generados en el borde de la red ha crecido exponencialmente. Una cantidad significativa de datos valiosos se distribuye entre diferentes dispositivos terminales. Los métodos tradicionales de aprendizaje profundo suelen requerir un almacenamiento central de datos de entrenamiento, lo que plantea desafíos para lograr la integración centralizada de datos en entornos naturales. Esta situación conduce a la formación de "islas de datos" y crea barreras entre las fuentes de datos. En 2016, Google introdujo el concepto de aprendizaje federado diseñado específicamente para dispositivos móviles. El aprendizaje federado1,2 surgió como una solución para abordar hasta cierto punto el problema de las islas de datos. McMahan et al.3 describieron el marco de aprendizaje federado para tareas de aprendizaje profundo y propusieron el conocido algoritmo FedAVG (Federated Averaging Algorithm). El aspecto clave del aprendizaje federado es que elimina la necesidad de compartir datos privados entre nodos, otorgando a los nodos un control total sobre sus datos almacenados localmente. En una arquitectura típica de servidor-trabajador4,5,6,7,8, los nodos trabajadores cargan la información de entrenamiento de su modelo local (como gradientes o actualizaciones de parámetros) a un servidor central. El servidor utiliza la información cargada desde los nodos trabajadores para actualizar el modelo global mediante un algoritmo de agregación.

Sin embargo, por un lado, el aprendizaje federado requiere una gran cantidad de comunicaciones entre nodos para lograr una buena precisión del modelo; Por otro lado, con el aumento continuo en la escala del aprendizaje profundo, la cantidad de parámetros del modelo se ha disparado, lo que aumenta considerablemente el costo por comunicación del aprendizaje federado. Limitada por las condiciones de la red y el ancho de banda, la limitación del costo de comunicación impide que muchos nodos periféricos participen en el aprendizaje federado. El alto costo de la comunicación se ha convertido en el principal cuello de botella del aprendizaje federado. Para abordar el desafío de los altos costos de comunicación en el aprendizaje federado, los investigadores han propuesto varios métodos de compresión de la comunicación destinados a reducir la sobrecarga de comunicación tanto en el aprendizaje federado como en el aprendizaje automático distribuido. Estos métodos tienen como objetivo aliviar la carga de la comunicación mientras se mantiene o mejora el rendimiento general del proceso de aprendizaje federado.

La poda de redes neuronales ha sido un método propuesto anteriormente para la compresión y aceleración de modelos. Srinivas et al.9 utilizaron métodos de poda para eliminar neuronas redundantes, y Han et al.10,11 redujeron el número total de parámetros y operaciones para toda la red, eliminaron conexiones redundantes y cuantificaron parámetros. Vanhoucke et al.12 demostraron que la cuantificación de parámetros de 8 bits podría acelerar significativamente los modelos con una pérdida mínima de precisión. El objetivo principal de la compresión de modelos es aliviar las cargas computacionales y de almacenamiento en los nodos, pero también reduce indirectamente los costos de comunicación al reducir la complejidad de la red y el tamaño de los parámetros. Posteriormente, los métodos de cuantificación se aplicaron directamente para estudiar el aprendizaje automático distribuido eficiente en la comunicación. A diferencia de la compresión de modelos, la compresión de la comunicación se centra únicamente en mejorar la eficiencia de la comunicación. Los predecesores han propuesto varios métodos de cuantificación de gradientes13,14,15,16,17,18,19 para acelerar el aprendizaje distribuido en paralelo de datos mediante la cuantificación del contenido de la comunicación. Inspirándose en el concepto de actualización retardada del modelo21,22, Storm et al.23 introdujeron el método de dispersión de gradientes enviando únicamente gradientes que superan un cierto umbral. Posteriormente, Aji, Yin, et al.24,28 propusieron diferentes estrategias para la selección de gradientes. En contraste con el enfoque de dispersión de gradientes antes mencionado, Chen et al.27 tratan los gradientes de todo el nodo como la unidad mínima para la selección de gradientes, lo que significa que un nodo envía todos los subgradientes o no envía ninguno en absoluto. Este método disperso reduce el número de rondas de comunicación y se conoce como método de dispersión de comunicaciones. Tanto los esquemas de cuantificación como de dispersión reducen significativamente el costo de comunicación del aprendizaje automático distribuido. En el contexto del aprendizaje federado con comunicación eficiente, el enfoque de la investigación radica en reducir el impacto de la pérdida de gradiente en la convergencia del modelo bajo alta compresión. El objetivo es lograr una compresión efectiva manteniendo al mismo tiempo una convergencia satisfactoria del modelo durante el proceso de aprendizaje federado.

En nuestra investigación, observamos que el algoritmo QSGD14 (Descenso de gradiente estocástico cuantificado)14, cuando se aplica al aprendizaje profundo, exhibe un fenómeno de cuantificación ineficaz, lo que conduce a una comunicación ineficiente. Para abordar este problema, proponemos el algoritmo TLAQC (compresión cuantificada acumulada de dos capas), que mejora el algoritmo de cuantificación del predecesor. Además, incorporamos el método de dispersión de comunicaciones para reducir aún más los costos de comunicación. Además, introducimos un enfoque de acumulación de dos capas para compensar la pérdida sufrida por la compresión de la comunicación. TLAQC demuestra una gran practicidad y se puede aplicar de manera flexible a escenarios de aprendizaje automático distribuido y aprendizaje federado. Las principales contribuciones de este artículo se resumen a continuación:

(1) cuando el algoritmo de cuantificación QSGD14 se aplica al aprendizaje profundo, una gran cantidad de valores se cuantifican a 0. En este artículo, nos referimos al fenómeno de poner a cero los valores de gradiente distintos de cero durante el entrenamiento profundo del modelo como cuantificación ineficaz. Los graves problemas de cuantificación ineficaces provocan un desperdicio innecesario de comunicaciones y los valores de gradiente cero no contribuyen al entrenamiento del modelo. En este sentido, este artículo presenta el algoritmo RQSGD (QSGD revisado), que se basa en QSGD e incorpora corrección de valor cero en el proceso de cuantificación. Este costo adicional introduce solo un factor mínimo de precisión total. Los experimentos de simulación demuestran que RQSGD reduce significativamente la proporción de error de cuantificación y cuantificación ineficaz en comparación con QSGD, mejorando así la eficiencia de la cuantificación.

(2) Para reducir aún más el costo de comunicación, TLAQC combina el método de dispersión con la cuantificación. Deducimos el umbral adaptativo global y la fórmula de autoinspección de los parámetros del modelo. Los nodos trabajadores utilizan el umbral adaptativo y la fórmula de autoinspección para realizar la autoinspección de parámetros en los parámetros del modelo cuantificado. Los nodos que no cumplen con los criterios de umbral se saltan la ronda de comunicación actual, logrando así el objetivo de una comunicación escasa.

(3) Para los nodos trabajadores que pasan con éxito la verificación del umbral, el error de cuantificación de la ronda actual se registra localmente. Por otro lado, para los nodos que no pasan la verificación, los deltas de peso del entrenamiento correspondiente se almacenan localmente. En la siguiente ronda de entrenamiento, el error de cuantificación y los deltas de peso del modelo retenidos se acumulan para minimizar la pérdida causada por la compresión de la comunicación.

El aprendizaje federado es un tipo específico de aprendizaje automático distribuido, donde los datos o modelos de entrenamiento se dividen entre múltiples nodos de entrenamiento para formar un grupo computacional. Este enfoque utiliza múltiples dispositivos informáticos para realizar tareas de aprendizaje automático de forma colaborativa. La arquitectura del servidor de parámetros4,5,6,7,8 es una arquitectura ampliamente adoptada en el aprendizaje automático distribuido. Consta de nodos trabajadores y servidores de parámetros centrales, donde los nodos trabajadores realizan cálculos paralelos sobre diferentes datos para calcular deltas de peso, y el servidor actualiza los parámetros globales en función de la información cargada por los trabajadores. Esta arquitectura sigue una configuración típica maestro-esclavo, como se ilustra en la Fig. 1. El algoritmo FedSGD está diseñado en base a la arquitectura del servidor de parámetros, donde todos los nodos trabajadores necesitan cargar y descargar parámetros con el servidor de parámetros central en cada ronda de entrenamiento. Para mejorar la eficiencia del aprendizaje federado, FedAVG, una extensión de FedSGD, propone realizar múltiples iteraciones locales de SGD en los nodos antes de cargar los resultados del cálculo local en el nodo central. En consecuencia, FedAvg se considera un algoritmo de aprendizaje federado eficiente en la comunicación.

Aprendizaje federado bajo arquitectura servidor-trabajador.

Suponiendo que el conjunto de todos los nodos trabajadores que participan en la tarea de capacitación es M, el objetivo del problema de optimización es:

donde, \(W\) es el espacio de parámetros, \(f\) es la función objetivo. \({D}_{p}\) es el conjunto de datos local del trabajador p, y el servidor actualiza el modelo global de acuerdo con:

\({w}_{p}^{k-1}\) son los parámetros actualizados localmente por el trabajador p en función de los parámetros del modelo global \({\theta }_{global}^{k-1}\) de la ronda k − 1, y \({\omega }_{p}\) es el valor de peso del parámetro del trabajador p (el tamaño del conjunto de datos del trabajador p representa el tamaño total del conjunto de datos). Cuando N trabajadores tienen el mismo tamaño de datos y la información cargada por los nodos trabajadores son los deltas de peso ∆w, la función mencionada anteriormente se puede transformar en la siguiente función:

La cuantificación del gradiente se refiere a reducir el tráfico de comunicación reduciendo la precisión del gradiente. La mayoría de las computadoras modernas usan 32 o 64 bits para representar un número de punto flotante, y la cuantificación reduce la cantidad de dígitos representados por cada valor, comprimiendo así el tráfico varias veces, lo cual es extremadamente obvio en el aprendizaje profundo. Representar el valor original con una cantidad baja de bits conducirá inevitablemente a errores de cuantificación, y el enfoque de los métodos de cuantificación es cómo reducir los errores de cuantificación y el daño de los errores de cuantificación a la convergencia del modelo. Seide et al.13 propusieron una cuantificación de 1 bit, que solo retiene el signo del gradiente y reduce el impacto en la velocidad de convergencia agregando error de cuantificación nuevamente al gradiente residencial. Alistarh et al.14 propusieron el algoritmo QSGD y demostraron la convergencia del algoritmo. Intercambia entre niveles de convergencia y cuantificación y reduce el costo de comunicación ajustando la cantidad de bits enviados. Wen et al.15 cuantificaron el número de coma flotante en {− 1, 0, + 1}, propusieron el algoritmo TernGrad y dieron pruebas de convergencia bajo el supuesto de que el gradiente está acotado. He et al.20 creían que los gradientes con magnitudes mayores son más críticos y propusieron un algoritmo de cuantificación no lineal CosSGD basado en la función coseno para que el valor con gradientes más significativos tenga un espacio de cuantificación más fino.

La dispersión de gradientes se refiere al envío selectivo de gradientes parciales y la reducción de los costos de comunicación al descartar algunos gradientes con pequeñas contribuciones. El estudio encontró que los gradientes calculados por los nodos en SGD distribuido a menudo son escasos y la mayoría de los valores de gradiente son cercanos a 0. Dicho intercambio de gradientes no solo es redundante sino que también aumenta el costo de comunicación. La redundancia del intercambio de gradientes proporciona viabilidad teórica para dispersar gradientes, y cómo seleccionar gradientes es el foco de los esquemas de dispersión. Storm et al.23 propusieron un método para seleccionar gradientes de acuerdo con un umbral preestablecido, y los trabajadores envían los gradientes al servidor de parámetros central solo cuando los gradientes son mayores que el umbral especificado. Sin embargo, los modelos de aprendizaje automático y aprendizaje profundo son ricos y diversos, y los conjuntos de datos también son muy diferentes, por lo que es difícil fijar un umbral adecuado de antemano. En este sentido, Aji et al.24 propusieron utilizar una tasa de compresión fija (tamaño comprimido/tamaño precomprimido) para seleccionar los gradientes enviados; Dryden et al.25 proponen dispersar los gradientes utilizando proporciones fijas de gradientes positivos y negativos; Hardy et al.26 propusieron un algoritmo de compresión adaptativa (AdaComp), que ordena los valores del gradiente, selecciona los k elementos más grandes para la transmisión y considera la influencia del efecto de caída del gradiente en el entrenamiento del modelo. Chen27 et al. propusieron un algoritmo de comunicación dispersa LAG, que calcula de forma adaptativa un umbral en cada ronda de entrenamiento, con el objetivo de omitir parte de la comunicación que transmite gradientes. A diferencia de los métodos anteriores, el algoritmo LAG reduce el costo de comunicación en el mecanismo de aprendizaje federado al reducir la frecuencia de comunicación entre los nodos trabajadores y el servidor de parámetros central.

Esta sección proporciona una explicación detallada del algoritmo TLAQC (compresión cuantificada acumulada de dos capas) propuesto en este documento. El algoritmo TLAQC consiste principalmente en métodos de cuantificación y dispersión de comunicación. En la sección "RQSGD", presentamos un método de cuantificación revisado llamado RQSGD (QSGD revisado) para abordar el problema de la cuantificación ineficaz. Basándose en la compresión RQSGD, la sección "Esparsificación de la comunicación" reduce la frecuencia con la que los trabajadores cargan información local a través de la escasez de comunicación, mejorando así aún más el nivel de compresión de la comunicación. La acumulación de dos capas se refiere a la acumulación de errores de cuantificación y deltas de peso omitidos en los trabajadores para compensar la pérdida de precisión causada por la compresión de la comunicación. Vale la pena señalar que en el contexto de este artículo, si M representa un conjunto, |M| denota la cardinalidad del conjunto M. De manera similar, si x representa un valor, |x| representa el valor absoluto de x, y sgn(x) representa el signo de x. Además, si v representa un vector, \(\Vert v\Vert\) representa la norma \({l}_{2}\) o \({l}_{\infty }\) del vector v.

Al cuantificar números de punto flotante de total precisión, el costo de comunicación del aprendizaje distribuido y federado se puede reducir significativamente. El proceso de cuantificación de RQSGD consta de dos pasos. En el primer paso, para un vector dado \(v\in {R}^{n}\), realizando una cuantificación de b bits en la \(i\)-ésima entrada de v, la operación de cuantificación \({\widetilde {Q}}_{b}\left({v}_{i}\right)\) en RQSGD es similar a QSGD14 y se define de la siguiente manera (Fig. 2):

donde \({\Vert v\Vert }_{\infty }\) representa el factor de escala. Definimos \(\tau :=1/({2}^{b-1}-1)\), y \({\xi }_{b}({\Vert v\Vert }_{\infty } ;\left|{v}_{i}\right|)\) asigna \(\left|{v}_{i}\right|\) al espacio cuantificado { 0,τ,2τ,⋯,1} :

\(\left|{v}_{i}\right|/{\Vert v\Vert }_{\infty }\) cae en el intervalo \(\left[l\tau ,\left(l+1\ right)\tau \right]\), \(l\) es un número entero entre \(\left[0,\right.\left.{2}^{b-1}-1\right)\). Denota el error de cuantificación de \({v}_{i}\) por \({\varepsilon }_{i}\), \(\left|{\varepsilon }_{i}\right|\le \Vert v\Vert \cdot \tau /2\). A diferencia de QSGD, el factor de escala de \({\widetilde{Q}}_{b}\left({v}_{i}\right)\) usa \({l}_{\infty }-norm\) en lugar de \({l}_{2}-norma\). \(\left|{v}_{i}\right|/{\Vert v\Vert }_{\infty }\) puede distribuir más uniformemente los valores en \(\left[0,\right.\left .1\right]\) intervalo, es decir, distribuido más uniformemente en el espacio de cuantificación. La ecuación (4) es fácil de cuantificar los valores más pequeños en el vector a 0, mientras que la gran mayoría de los gradientes del modelo o deltas de peso en Deep Learning están cerca de 0, lo que hace que el lado derecho del espacio de cuantificación esté subutilizado. Supongamos que δ representa un cierto vector de deltas de peso, \(\delta \in {R}^{n}\), si b = 2, factor de escala ‖δ‖ = x, y 99% del valor \({\delta } _{i}\) en δ satisface \(\left|{\delta }_{i}\right|/x<1/2\), entonces δ 99% de los valores en se cuantificarán a 0. En profundidad En el aprendizaje, los gradientes de valor cero no son beneficiosos para el entrenamiento de modelos. Para abordar el fenómeno de cuantificar valores de gradiente distintos de cero a cero en el aprendizaje profundo, proponemos el concepto de cuantificación ineficaz. La transmisión de una gran cantidad de valores cero no solo obstaculiza la velocidad de convergencia del modelo sino que también genera un importante desperdicio de comunicación. En este contexto, RQSGD aborda este problema corrigiendo los valores cero cuantificados. La fórmula (6) demuestra este proceso de corrección, que implica el uso de un valor de precisión total para registrar el valor absoluto mínimo en el vector de cuantificación actual.

Espacio de cuantificación (b = 3).

Nos referimos a \(\mathrm{min}\left(abs(v)\right)\) como el factor mínimo. La fórmula (6) utiliza \(\mathrm{min}\left(abs(v)\right)\) para transformar los valores de gradiente cuantificados de valor cero en el vector, mitigando así el fenómeno de cuantificación ineficaz. La cuantificación ineficaz da como resultado una gran cantidad de valores que se cuantifican a cero en el vector. Al aplicar la transformación de factor mínimo a los valores cero cuantificados, se ayuda a reducir el error de cuantificación de los parámetros del modelo y el número de valores de gradiente cuantificados a cero (Fig. 3).

(a): La proporción de cuantificación ineficaz; (b): error de cuantificación promedio para deltas de peso.

Para un vector v n-dim, si el número de bits de precisión total es 32 bits, RQSGD cuantifica el tamaño de 32n bits a 64 + nb bits, lo que incluye un factor de escala de precisión total y un factor mínimo, b < 32. 2 ilustra una implementación de RQSGD usando un nivel de cuantificación de b = 3.

El algoritmo QSGD cuantifica todos los parámetros del modelo dividiéndolos en vectores de la misma dimensión. También adoptamos este enfoque en algunos de nuestros experimentos. Sin embargo, cuando se trata de modelos de aprendizaje profundo más grandes, este enfoque introduce costos de comunicación y gastos generales computacionales excesivos. Para abordar la cuantificación de modelos de aprendizaje profundo, hemos observado que los parámetros del modelo dentro de la misma capa tienden a tener una distribución más similar. Por lo tanto, para entrenar modelos más grandes, hemos optado por la cuantificación por capas ya que es más adecuada. Usamos ∆w para representar los deltas de peso y definimos \(\Delta {w}_{p}^{k}:={ w}_{p}^{k}-{\theta }^{k}\), \({\theta }^{k}\) representa los parámetros del modelo global de la k-ésima ronda, \({w }_{p}^{k}\) representa los parámetros del modelo del trabajador p después de la k-ésima ronda de capacitación. El error de cuantificación generado por RQSGD se acumula localmente en el nodo:

M representa el conjunto de trabajadores, \({e}_{p}^{0}\)=0, k ≥ 1, entonces la iteración del modelo global es la siguiente:

donde \(\left|{D}_{p}\right|/\left|D\right|\) representa el peso de agregación del modelo del trabajador p, \(\left|{D}_{p}\right| \) representa la cantidad de datos aportados por el trabajador p, |D| representa la suma de la cantidad de datos aportados por todos los trabajadores, y α es el peso de la caída del tiempo del error de cuantificación (0 ≤ α ≤ 1).

En el contexto del alto costo de comunicación en el aprendizaje federado, se han propuesto varios métodos de dispersión de gradientes. Los enfoques anteriores utilizaban umbrales fijos28 o ratios fijos24 como criterios de comunicación para reducir el tráfico de comunicación entre los trabajadores y el servidor central. Sin embargo, estas condiciones fijas tienen una escalabilidad limitada y tienen dificultades para adaptarse a los cambios en los valores de gradiente durante el entrenamiento. Para abordar este problema, este artículo presenta un módulo de autoinspección de parámetros de umbral adaptativo que extiende la dispersión de gradientes a la dispersión de comunicaciones a través de la autoinspección de parámetros de los trabajadores. La dispersión de gradientes significa que todos los nodos cargan una parte de su información de gradiente local, mientras que la dispersión de comunicaciones selecciona ciertos nodos para cargar toda su información de gradiente. En TLAQC, el umbral adaptativo se ajusta dinámicamente con cada ronda de entrenamiento, adaptándose automáticamente a los gradientes cambiantes y demostrando una excelente escalabilidad. La fórmula de autoinspección de parámetros se describe a continuación.

Suponiendo que el conjunto de todos los trabajadores que participan en la tarea de capacitación es M, el conjunto de trabajadores que envían parámetros en la k-ésima ronda es \({M}_{s}^{k}\), y el conjunto de trabajadores que no los parámetros de envío son \({M}_{r}^{k}\), entonces se cumple la siguiente fórmula:

Si cada nodo \(i\) en el conjunto \({M}_{r}^{k}\) satisface la fórmula (10), entonces se debe cumplir la fórmula anterior (9):

Para medir la contribución realizada por el nodo \(p\) en la k-ésima ronda de entrenamiento, se da la siguiente definición:

Entonces, la contribución promedio realizada por la k-ésima ronda de trabajadores es:

En la k-ésima ronda de capacitación, es difícil para el trabajador conocer el valor \({norm}_{p }^{k}\) de otros n-1 trabajadores, por lo que es imposible obtener el valor de \({norm\_avg}^{k}\), por lo que el norm_avg de las d rondas anteriores se usa para aproximarlo, entonces el umbral adaptativo global de la k-ésima ronda de entrenamiento es:

La expresión de autoinspección del parámetro es: \({norm}_{i}^{k}\le {threshold}^{k}\), es decir:

donde d es un hiperparámetro que determina el número de rondas anteriores utilizadas para aproximar el umbral de la ronda actual. El lado derecho de la ecuación. (14) representa la expresión del umbral adaptativo. Cuando el valor de \({norm}_{i}^{k}\) calculado por el trabajador i excede el umbral, que el servidor central calcula y envía a los nodos trabajadores, el trabajador i inicia la comunicación con el servidor central. Por otro lado, si el valor \({norm}_{i}^{k}\) está por debajo del umbral, la comunicación está reservada y no se produce ninguna transmisión.

Al integrar RQSGD y el método de dispersión de la comunicación, TLAQC logra mejoras sustanciales en la eficiencia de la comunicación del aprendizaje federado. Para abordar la pérdida de precisión resultante de la compresión de la comunicación, TLAQC incorpora un enfoque de acumulación de dos capas, donde los errores de cuantificación y la información de comunicación dispersa se acumulan localmente en los nodos trabajadores. La sección "RQSGD" ha proporcionado una explicación inicial del error de cuantificación, y la sección siguiente profundizará en el mecanismo de acumulación de dos capas de TLAQC.

Después de que el nodo trabajador p actualiza el modelo utilizando su conjunto de datos local, verifica el valor registrado del error de cuantificación \({e}_{p}^{k}\). Si el error de cuantificación es distinto de cero, el error de cuantificación ponderado se acumula en los parámetros del modelo actualizado. De manera similar, el trabajador verifica el valor registrado de los deltas de peso acumulados \({h}_{p}^{k}\). Si el trabajador no se comunicó con el servidor central en la ronda anterior, los deltas de peso acumulados ponderados se acumulan en el modelo actualizado. Una vez que se completa la acumulación de dos capas, el trabajador utiliza los parámetros acumulados del modelo para realizar cálculos de cuantificación. Los parámetros cuantificados se utilizan luego para calcular el valor \({norm}_{p}^{k}\) utilizando el siguiente método de cálculo:

Si el trabajador p ∈ \({M}_{s}^{k}\),

Si el trabajador p ∈ \({M}_{r}^{k}\),

donde t representa el número de rondas desde la última vez que el trabajador p se comunicó con el servidor central. El método de actualización del modelo global en TLAQC es el siguiente:

Después de incorporar la acumulación de dos capas, las fórmulas (11) y (14) se reescribieron de la siguiente manera:

Con base en la descripción antes mencionada del algoritmo TLAQC, evaluaremos su desempeño utilizando un modelo de red neuronal convolucional en aprendizaje profundo y dos conjuntos de datos públicos. En los algoritmos de compresión de comunicaciones distribuidas, el grado de compresión de las comunicaciones es una métrica crítica para medir el rendimiento. Por lo tanto, empleamos la tasa de compresión de la comunicación (cr) como medida del rendimiento de la compresión de la comunicación:

En los experimentos que evaluaron los algoritmos antes mencionados, se utilizaron dos conjuntos de datos: MNIST para el reconocimiento de dígitos escritos a mano y CIFAR10 para el reconocimiento de objetos. MNIST consta de diez categorías que van del 0 al 9, con un conjunto de entrenamiento de 60.000 imágenes en escala de grises de tamaño 28 × 28 y un conjunto de prueba de 10.000 imágenes. Para este experimento, el conjunto de entrenamiento se dividió aleatoriamente en 100 partes, cada una con 600 imágenes, con 10 partes asignadas como conjunto de datos local para 10 trabajadores. Al recibir los parámetros globales distribuidos por el servidor central, cada trabajador utiliza un descenso de gradiente estocástico para actualizar el modelo global. Las configuraciones del modelo local son las siguientes: épocas locales = 5, tamaño de lote = 64, lr = 0,01. El modelo de entrenamiento local emplea una arquitectura de red neuronal convolucional con tres capas convolucionales y dos capas completamente conectadas. El entrenamiento global consta de 100 épocas, con un peso de caída de tiempo α = 0,8, β = 0,8 y d = 1. Los parámetros del modelo se dividen en vectores de la misma dimensión para la cuantificación, con una longitud de 512.

El conjunto de datos CIFAR10 consta de 32 × 32 imágenes en color, incluidas 50.000 muestras de imágenes de entrenamiento y 10.000 de prueba, con un total de 10 categorías. Para este experimento, el conjunto de capacitación se divide aleatoriamente en 10 partes y cada conjunto de datos tiene 5000 imágenes como datos de capacitación local de diez trabajadores. La configuración del modelo local es la siguiente: épocas locales = 5, tamaño de lote = 64, lr = 0,0005, peso_decay = 0,005. El modelo de entrenamiento local consta de 3 bloques tipo VGG y dos capas completamente conectadas. Cada bloque consta de dos capas convolucionales de 3 × 3, seguidas de una capa de agrupación máxima, una capa de regularización y una capa de abandono. El entrenamiento global consta de 150 épocas, con un peso de caída de tiempo α = 0,8, β = 0,8 y d = 10. Esta parte adopta un enfoque de cuantificación por capas.

Todos los experimentos de este artículo emplean el optimizador SGD con un impulso de 0,9 y utilizan la función de pérdida de entropía cruzada. Para fines de comparación justa, en la ronda final de capacitación global, se suman las contribuciones de todos los miembros. Esto significa que en la última ronda de capacitación, cada trabajador no realiza una autoinspección de parámetros. Además, para actualizar los parámetros del modelo global en cada ronda de capacitación, se selecciona aleatoriamente un trabajador para la agregación directa sin autoinspección de parámetros.

Para los hiperparámetros α y β en RQSGD y TLAQC, realizamos experimentos de simulación en el conjunto de datos MNIST para obtener configuraciones de parámetros relativamente óptimas. La Tabla 1 presenta los resultados del entrenamiento de RQSGD con un mecanismo de compensación de errores bajo diferentes valores de α.

Con base en los resultados de la Tabla 1, establecemos α = 0,8 para TLAQC. La Tabla 2 presenta los resultados del ajuste de parámetros para β.

Según los resultados de la simulación, se encontró que cuando α = 0,8 y β = 0,8, el modelo lograba una precisión relativamente mayor. Cuando α se establece demasiado pequeño, el efecto de la retroalimentación de error no es significativo, y cuando β se establece demasiado pequeño, la pérdida de información causada por la escasez de comunicación afecta notablemente la precisión del algoritmo. Por otro lado, si α y β se establecen demasiado grandes, el efecto de gradiente obsoleto puede afectar la convergencia del algoritmo.

En esta sección, evaluamos el rendimiento de nuestro algoritmo propuesto en comparación con varios algoritmos destacados en los conjuntos de datos MNIST y CIFAR10. Consideramos FedAVG de precisión total como el algoritmo de referencia y comparamos nuestro algoritmo con QSGD14 y CosSGD20, ambos utilizando cuantificación de 8 bits. Además, evaluamos nuestro algoritmo frente al algoritmo de dispersión de comunicaciones LAG.

La Fig. 3 ilustra una comparación entre el algoritmo de cuantificación revisado RQSGD y QSGD durante el proceso de entrenamiento de aprendizaje profundo, con el objetivo de mitigar el problema de la cuantificación ineficaz y reducir los errores de cuantificación. La "proporción de cuantificación ineficaz" se refiere a la relación entre el número de gradientes cuantificados a cero durante todo el proceso de entrenamiento del modelo. La "proporción de cuantificación ineficaz" representa el error de cuantificación promedio de cada parámetro durante todo el proceso de entrenamiento del modelo. El método de cálculo para la "proporción de cuantificación ineficaz" es el siguiente: la suma del número de cuantificación ineficaz generada por todos los trabajadores/(número de parámetros del modelo × \({\sum }_{k=1}^{época global }\left|{M}_{s}^{k}\right|\)). El método de cálculo para la "proporción de cuantificación ineficaz" es el siguiente: la suma de los errores de cuantificación generados por todos los trabajadores/(número de parámetros del modelo × \({\sum }_{k=1}^{época global}\left |{M}_{s}^{k}\right|\)). Los resultados muestran que RQSGD muestra una mejora significativa con respecto a QSGD al abordar la cuantificación ineficaz, lo que resulta en una reducción de los errores de cuantificación durante el proceso de entrenamiento.

La Fig. 4 presenta el comportamiento de convergencia de TLAQC. Al considerar la misma transmisión de bits, TLAQC demuestra un rendimiento de convergencia superior, y TLAQC-4 exhibe la velocidad de convergencia más rápida. Con el mismo número de rondas de comunicación, los algoritmos de dispersión de comunicaciones TLAQC y LAG convergen más rápidamente, y TLAQC supera a LAG. En términos del mismo número de rondas de entrenamiento, TLAQC-8 demuestra un mejor rendimiento de convergencia, mientras que TLAQC-4 sigue de cerca a TLAQC-8 en el proceso de entrenamiento.

Comparación de MNIST ((a) precisión versus bits; (b) precisión versus comunicación; (c) precisión versus época global).

Se puede observar que debido al número variable de trabajadores agregados en cada ronda, la curva de convergencia de los algoritmos de dispersión de la comunicación muestra oscilaciones notables antes de la convergencia. Por ejemplo, en la k-ésima ronda de entrenamiento global, si hay muy pocos nodos de agregación, la precisión de esa ronda puede disminuir significativamente. En la ronda k + 1, los nodos que no participaron en la agregación de la ronda anterior tienden a generar un valor \({norm}^{k+1}\) más alto, aumentando la probabilidad de pasar la autoinspección del parámetro y posteriormente participar en la agregación global para esa ronda. Esto conduce a una mejora sustancial en la precisión.

La Tabla 3 presenta el rendimiento del algoritmo de TLAQC y varios algoritmos de comparación con el mismo número de rondas de entrenamiento global. TLAQC logra una precisión significativamente mayor en comparación con FedAVG de precisión total. Entre las variantes de TLAQC, TLAQC-8 exhibe la mejor precisión de convergencia, mientras que TLAQC-4 logra la tasa de compresión más baja. Además, el rendimiento de convergencia de TLAQC supera al de QSGD con un nivel de cuantificación de 8 bits.

El conjunto de datos CIFAR10 tiene una mayor cantidad de parámetros de modelo en comparación con MNIST. En la Fig. 5, demostramos la efectividad de nuestro algoritmo propuesto (TLAQC) en CIFAR10. Evaluamos TLAQC en condiciones de igual costo de comunicación, iguales rondas de comunicación y rondas de entrenamiento iguales y observamos una convergencia superior en comparación con otros algoritmos. En particular, las ventajas de la corrección de cuantificación y acumulación de dos capas de TLAQC se vuelven más pronunciadas en conjuntos de datos más complejos. La Tabla 4 demuestra además que TLAQC logra una precisión mejorada con el mismo número de rondas de capacitación global.

Comparación en CIFAR10 ((a) precisión versus bits; (b) precisión versus comunicación; (c) precisión versus época global).

Las ventajas del aprendizaje federado para proteger la privacidad de los datos y abordar el problema de las “islas de datos” lo han convertido en un enfoque crucial en varios ámbitos. Para mejorar la eficiencia del aprendizaje federado y reducir los costos de comunicación, este documento presenta el algoritmo TLAQC de comunicación eficiente. TLAQC permite a los trabajadores entrenar modelos utilizando datos locales sin compartir sus datos privados con otros nodos. Al tiempo que se preserva la privacidad del nodo, el entrenamiento del modelo se logra cargando colectivamente información de parámetros de entrenamiento local.

Para lograr la compresión de la comunicación, TLAQC aborda dos aspectos. En primer lugar, se propone un método de cuantificación modificado llamado RQSGD, y los resultados experimentales demuestran su importante efecto de corrección. Aprovechando la cuantificación, TLAQC incorpora mecanismos de dispersión de la comunicación al integrar un mecanismo de autoinspección local para los trabajadores, reduciendo la frecuencia de carga de información. Para mitigar el impacto de la compresión en la precisión del modelo, TLAQC compensa la información del modelo comprimido mediante la doble acumulación de errores de cuantificación y deltas de peso retenidos, todo ello sin incurrir en costos de comunicación adicionales. Al combinar métodos de cuantificación y técnicas de dispersión de la comunicación al tiempo que incorpora la acumulación de errores de cuantificación y deltas de peso retenidos, TLAQC mejora en gran medida la eficiencia de la comunicación y exhibe un rendimiento de algoritmo excepcional.

Todavía hay muchas imperfecciones en nuestro trabajo. Este artículo solo explora cómo comprimir la comunicación de enlace ascendente en el aprendizaje federado. Más adelante, exploraremos el método de compresión de enlace descendente para mejorar aún más la eficiencia de la comunicación del aprendizaje federado.

Los conjuntos de datos analizados durante el estudio actual están disponibles en el repositorio MNIST, http://yann.lecun.com/exdb/mnist/, y en el repositorio CIFAR10, http://www.cs.toronto.edu/~kriz/cifar. HTML.

Konečný, J., McMahan, HB, Ramage, D. y Richtárik, P. (2016). Optimización federada: aprendizaje automático distribuido para inteligencia en el dispositivo. preimpresión de arXiv arXiv:1610.02527.

Konečný, J., McMahan, HB, Yu, FX, Richtárik, P., Suresh, AT y Bacon, D. (2016). Aprendizaje federado: estrategias para mejorar la eficiencia de la comunicación. Preimpresión de arXiv arXiv:1610.05492.

McMahan, B., Moore, E., Ramage, D., Hampson, S. y Arcas, BA (abril de 2017). Aprendizaje eficiente en comunicación de redes profundas a partir de datos descentralizados. En Inteligencia artificial y estadística (págs. 1273-1282). PMLR.

Smola, A. & Narayanamurthy, S. Una arquitectura para modelos de temas paralelos. Proc. Dotación VLDB. 3(1–2), 703–710 (2010).

Artículo de Google Scholar

Li, M., Andersen, DG, Smola, AJ y Yu, K. Comunicación eficiente del aprendizaje automático distribuido con el servidor de parámetros. Adv. Inf. neuronal. Proceso. Sistema. 27, 48562 (2014).

Google Académico

Abadi, M., Agarwal, A., Barham, P., Brevdo, E., Chen, Z., Citro, C. y Zheng, X. (2016). Tensorflow: aprendizaje automático a gran escala en sistemas distribuidos heterogéneos. preimpresión de arXiv arXiv:1603.04467.

Xing, EP, Ho, Q., Dai, W., Kim, JK, Wei, J., Lee, S., ... y Yu, Y. (agosto de 2015). Petuum: una nueva plataforma para aprendizaje automático distribuido sobre big data. En Actas de la 21ª Conferencia Internacional ACM SIGKDD sobre Descubrimiento de Conocimiento y Minería de Datos (págs. 1335-1344).

Lee, K., Lam, M., Pedarsani, R., Papailiopoulos, D. y Ramchandran, K. Acelerar el aprendizaje automático distribuido mediante códigos. Traducción IEEE. inf. Teoría 64 (3), 1514-1529 (2017).

Artículo MathSciNet MATEMÁTICAS Google Scholar

Srinivas, S. y Babu, RV (2015). Poda de parámetros sin datos para redes neuronales profundas. preimpresión de arXiv arXiv:1507.06149.

Han, S., Pool, J., Tran, J. y Dally, W. Aprendizaje de pesos y conexiones para una red neuronal eficiente. Adv. Inf. neuronal. Proceso. Sistema. 28, 259874 (2015).

Google Académico

Han, S., Mao, H. y Dally, WJ (2015). Compresión profunda: compresión de redes neuronales profundas con poda, cuantificación entrenada y codificación Huffman. arXiv preimpresión arXiv:1510.00149.

Vanhoucke, V., Senior, A. y Mao, MZ (2011). Mejora de la velocidad de las redes neuronales en las CPU.

Seide, F., Fu, H., Droppo, J., Li, G. y Yu, D. (2014). Descenso de gradiente estocástico de 1 bit y su aplicación al entrenamiento distribuido en paralelo de datos de dnns de voz. En la Decimoquinta Conferencia Anual de la Asociación Internacional de Comunicación del Habla.

Alistarh, D., Grubic, D., Li, J., Tomioka, R. y Vojnovic, M. QSGD: SGD con comunicación eficiente mediante cuantificación y codificación de gradientes. Adv. Inf. neuronal. Proceso. Sistema. 30, 695874 (2017).

Google Académico

Wen, W. y col. Terngrad: gradientes ternarios para reducir la comunicación en el aprendizaje profundo distribuido. Adv. Inf. neuronal. Proceso. Sistema. 30, 2598741 (2017).

Google Académico

Bernstein, J., Wang, YX, Azizzadenesheli, K. y Anandkumar, A. (julio de 2018). signSGD: optimización comprimida para problemas no convexos. En Conferencia internacional sobre aprendizaje automático (págs. 560–569). PMLR.

Zhou, S., Wu, Y., Ni, Z., Zhou, X., Wen, H. y Zou, Y. (2016). Dorefa-net: Entrenamiento de redes neuronales convolucionales de bajo ancho de bits con gradientes de bajo ancho de bits. arXiv preimpresión arXiv:1606.06160.

Faghri, F. y col. Cuantización de gradiente adaptativo para SGD de datos paralelos. Adv. Neural. inf. Proceso. Sistema. 33, 3174–3185 (2020).

Google Académico

Magnússon, S., Shokri-Ghadikolaei, H. & Li, N. Sobre el mantenimiento de la convergencia lineal del aprendizaje distribuido y la optimización en condiciones de comunicación limitada. Traducción IEEE. Proceso de señal. 68, 6101–6116 (2020).

Artículo ADS MathSciNet MATH Google Scholar

Él, Y., Zenk, M. y Fritz, M. (2020). CosSGD: Cuantización no lineal para un aprendizaje federado con comunicación eficiente. Preimpresión de arXiv arXiv:2012.08241.

Seide, F., Fu, H., Droppo, J., Li, G. y Yu, D. (2014). Sobre la paralelización del descenso de gradiente estocástico para DNN de voz. En 2014, Conferencia Internacional IEEE sobre Acústica, Habla y Procesamiento de Señales (ICASSP) (págs. 235-239). IEEE.

Agarwal, A. & Duchi, JC Optimización estocástica retrasada distribuida. Adv. Inf. neuronal. Proceso. Sistema. 24, 6598252 (2011).

Google Académico

Strom, N. (2015). Entrenamiento DNN distribuido escalable utilizando computación en la nube GPU básica. En la Decimosexta Conferencia Anual de la Asociación Internacional de Comunicación del Habla.

Aji, AF y Heafield, K. (2017). Comunicación escasa para descenso de gradiente distribuido. arXiv preimpresión arXiv:1704.05021.

Dryden, N., Moon, T., Jacobs, SA y Van Essen, B. (2016) Cuantización de la comunicación para el entrenamiento de redes neuronales profundas en paralelo con datos. En 2016, segundo taller sobre aprendizaje automático en entornos HPC (MLHPC) (págs. 1 a 8). IEEE.

Hardy, C., Le Merrer, E. y Sericola, B. Aprendizaje profundo distribuido en dispositivos de borde: viabilidad mediante compresión adaptativa. 2017 IEEE 16º Simposio Internacional sobre Aplicaciones y Computación en Red (NCA). 2017, págs. 1 a 8, DOI: https://doi.org/10.1109/NCA.2017.8171350.

Chen, T., Giannakis, G., Sun, T. y Yin, W. LAG: gradiente agregado perezosamente para un aprendizaje distribuido eficiente en la comunicación. Adv. Inf. neuronal. Proceso. Sistema. 31, 45896323 (2018).

Google Académico

Yin, L., Feng, J., Xun, H., Sun, Z. y Cheng, X. Un aprendizaje federado que preserva la privacidad para el intercambio de datos entre varias partes en IoT sociales. Traducción IEEE. Neto. Ciencia. Ing. 8(3), 2706–2718 (2021).

Artículo de Google Scholar

Descargar referencias

La financiación fue proporcionada por el sistema de gobierno inteligente basado en la tecnología blockchain del consorcio, 2021JH1/10400010, Programa de investigación básica aplicada de la provincia de Liaoning, 2022JH2/101300272.

Escuela de Ingeniería de Información y Control, Universidad Petroquímica de Liaoning, Fushun, Liaoning, República Popular China

Yaoyao Ren, Yu Cao y Chengyin Ye

Facultad de Economía y Gestión, Universidad Agrícola de Shenyang, Shengyang, Liaoning, República Popular China

Xu Cheng

También puedes buscar este autor en PubMed Google Scholar.

También puedes buscar este autor en PubMed Google Scholar.

También puedes buscar este autor en PubMed Google Scholar.

También puedes buscar este autor en PubMed Google Scholar.

YR (Primer Autor): Conceptualización, metodología, validación, visualización, investigación, análisis formal, redacción—borrador original, redacción—revisión y edición; YC (Autor correspondiente): Supervisión, adquisición de financiamiento, redacción – revisión y ediciónC.Y.: Supervisión, redacción: revisión y edición; XC: Supervisión, redacción: revisión y edición; Todos los autores revisaron el manuscrito.

Correspondencia a Yu Cao.

Los autores declaran no tener conflictos de intereses.

Springer Nature se mantiene neutral con respecto a reclamos jurisdiccionales en mapas publicados y afiliaciones institucionales.

Acceso Abierto Este artículo está bajo una Licencia Internacional Creative Commons Attribution 4.0, que permite el uso, compartir, adaptación, distribución y reproducción en cualquier medio o formato, siempre y cuando se dé el crédito apropiado a los autores originales y a la fuente. proporcione un enlace a la licencia Creative Commons e indique si se realizaron cambios. Las imágenes u otro material de terceros en este artículo están incluidos en la licencia Creative Commons del artículo, a menos que se indique lo contrario en una línea de crédito al material. Si el material no está incluido en la licencia Creative Commons del artículo y su uso previsto no está permitido por la normativa legal o excede el uso permitido, deberá obtener permiso directamente del titular de los derechos de autor. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by/4.0/.

Reimpresiones y permisos

Ren, Y., Cao, Y., Ye, C. et al. Compresión cuantificada acumulada de dos capas para un aprendizaje federado con comunicación eficiente: TLAQC. Informe científico 13, 11658 (2023). https://doi.org/10.1038/s41598-023-38916-x

Descargar cita

Recibido: 21 de febrero de 2023

Aceptado: 17 de julio de 2023

Publicado: 19 de julio de 2023

DOI: https://doi.org/10.1038/s41598-023-38916-x

Cualquier persona con la que compartas el siguiente enlace podrá leer este contenido:

Lo sentimos, actualmente no hay un enlace para compartir disponible para este artículo.

Proporcionado por la iniciativa de intercambio de contenidos Springer Nature SharedIt

Al enviar un comentario, acepta cumplir con nuestros Términos y pautas de la comunidad. Si encuentra algo abusivo o que no cumple con nuestros términos o pautas, márquelo como inapropiado.

COMPARTIR