El aprendizaje federado (también conocido como aprendizaje colaborativo ) es un subcampo del aprendizaje automático que se centra en entornos en los que múltiples entidades (a menudo denominadas clientes) entrenan de forma colaborativa un modelo mientras garantizan que sus datos permanezcan descentralizados. [1] Esto contrasta con las configuraciones de aprendizaje automático en las que los datos se almacenan de forma centralizada. Una de las principales características definitorias del aprendizaje federado es la heterogeneidad de los datos. Debido a la naturaleza descentralizada de los datos de los clientes, no hay garantía de que las muestras de datos en poder de cada cliente se distribuyan de forma independiente e idéntica .
El aprendizaje federado generalmente se preocupa y está motivado por cuestiones como la privacidad de los datos , la minimización de los datos y los derechos de acceso a los datos. Sus aplicaciones involucran una variedad de áreas de investigación que incluyen defensa, telecomunicaciones, Internet de las cosas y productos farmacéuticos.
El aprendizaje federado tiene como objetivo entrenar un algoritmo de aprendizaje automático, por ejemplo, redes neuronales profundas , en múltiples conjuntos de datos locales contenidos en nodos locales sin intercambiar explícitamente muestras de datos. El principio general consiste en entrenar modelos locales a partir de muestras de datos locales e intercambiar parámetros (por ejemplo, los pesos y sesgos de una red neuronal profunda) entre estos nodos locales con cierta frecuencia para generar un modelo global compartido por todos los nodos.
La principal diferencia entre el aprendizaje federado y el aprendizaje distribuido radica en los supuestos que se hacen sobre las propiedades de los conjuntos de datos locales, [2] ya que el aprendizaje distribuido originalmente apunta a paralelizar la potencia informática , mientras que el aprendizaje federado originalmente apunta al entrenamiento en conjuntos de datos heterogéneos . Si bien el aprendizaje distribuido también tiene como objetivo entrenar un modelo único en múltiples servidores, una suposición subyacente común es que los conjuntos de datos locales son independientes y están distribuidos de manera idéntica (iid) y tienen aproximadamente el mismo tamaño. Ninguna de estas hipótesis está formulada para el aprendizaje federado; en cambio, los conjuntos de datos suelen ser heterogéneos y sus tamaños pueden abarcar varios órdenes de magnitud. Además, los clientes involucrados en el aprendizaje federado pueden no ser confiables, ya que están sujetos a más fallas o abandonos, ya que comúnmente dependen de medios de comunicación menos potentes (es decir, Wi-Fi ) y sistemas alimentados por baterías (es decir, teléfonos inteligentes y dispositivos IoT) en comparación con Aprendizaje distribuido donde los nodos suelen ser centros de datos que tienen poderosas capacidades computacionales y están conectados entre sí con redes rápidas. [3]
La función objetivo del aprendizaje federado es la siguiente:
donde es el número de nodos, son los pesos del modelo vistos por el nodo y es la función objetivo local del nodo, que describe cómo los pesos del modelo se ajustan al conjunto de datos local del nodo.
El objetivo del aprendizaje federado es entrenar un modelo común en todos los conjuntos de datos locales de los nodos, en otras palabras:
En el entorno de aprendizaje federado centralizado, se utiliza un servidor central para orquestar los diferentes pasos de los algoritmos y coordinar todos los nodos participantes durante el proceso de aprendizaje. El servidor es responsable de la selección de nodos al comienzo del proceso de entrenamiento y de la agregación de las actualizaciones del modelo recibidas. Dado que todos los nodos seleccionados tienen que enviar actualizaciones a una única entidad, el servidor puede convertirse en un cuello de botella del sistema. [3]
En el entorno de aprendizaje federado descentralizado, los nodos pueden coordinarse para obtener el modelo global. Esta configuración evita fallas de un solo punto, ya que las actualizaciones del modelo se intercambian solo entre nodos interconectados sin la orquestación del servidor central. Sin embargo, la topología de red específica puede afectar el desempeño del proceso de aprendizaje. [3] Consulte el aprendizaje federado basado en blockchain [4] y las referencias allí contenidas.
Un número cada vez mayor de dominios de aplicaciones implican un gran conjunto de clientes heterogéneos, por ejemplo, teléfonos móviles y dispositivos IoT. [5] La mayoría de las estrategias de aprendizaje federado existentes asumen que los modelos locales comparten la misma arquitectura del modelo global. Recientemente, se desarrolló un nuevo marco de aprendizaje federado llamado HeteroFL para abordar clientes heterogéneos equipados con capacidades de computación y comunicación muy diferentes. [6] La técnica HeteroFL puede permitir el entrenamiento de modelos locales heterogéneos con cálculos que varían dinámicamente y complejidades de datos no IID y, al mismo tiempo, producir un único modelo de inferencia global preciso. [6] [7]
Para garantizar un buen desempeño de las tareas de un modelo de aprendizaje automático central y final, el aprendizaje federado se basa en un proceso iterativo dividido en un conjunto atómico de interacciones cliente-servidor conocido como ronda de aprendizaje federado. Cada ronda de este proceso consiste en transmitir el estado actual del modelo global a los nodos participantes, entrenar modelos locales en estos nodos locales para producir un conjunto de actualizaciones potenciales del modelo en cada nodo y luego agregar y procesar estas actualizaciones locales en una única actualización global y aplicándolo al modelo global. [3]
En la metodología siguiente, se utiliza un servidor central para la agregación, mientras que los nodos locales realizan entrenamiento local dependiendo de las órdenes del servidor central. Sin embargo, otras estrategias conducen a los mismos resultados sin servidores centrales, en un enfoque peer-to-peer , utilizando metodologías de chismes [8] o de consenso . [9]
Suponiendo una ronda federada compuesta por una iteración del proceso de aprendizaje, el procedimiento de aprendizaje se puede resumir de la siguiente manera: [10]
El procedimiento considerado anteriormente supone actualizaciones sincronizadas del modelo. Los recientes desarrollos del aprendizaje federado introdujeron técnicas novedosas para abordar la asincronicidad durante el proceso de capacitación, o capacitación con modelos que varían dinámicamente. [6] En comparación con los enfoques sincrónicos donde los modelos locales se intercambian una vez que se han realizado los cálculos para todas las capas de la red neuronal, los asincrónicos aprovechan las propiedades de las redes neuronales para intercambiar actualizaciones del modelo tan pronto como los cálculos de una determinada capa estén disponibles. Estas técnicas también se conocen comúnmente como aprendizaje dividido [11] [12] y se pueden aplicar tanto en el momento del entrenamiento como en el de inferencia, independientemente de las configuraciones de aprendizaje federado centralizado o descentralizado. [3] [6]
En la mayoría de los casos, el supuesto de muestras independientes e idénticamente distribuidas entre nodos locales no se cumple para las configuraciones de aprendizaje federado. Bajo esta configuración, el rendimiento del proceso de entrenamiento puede variar significativamente según las muestras de datos locales desequilibradas, así como la distribución de probabilidad particular de los ejemplos de entrenamiento (es decir, características y etiquetas ) almacenados en los nodos locales. Para investigar más a fondo los efectos de los datos no IID, la siguiente descripción considera las principales categorías presentadas en la preimpresión de Peter Kairouz et al. desde 2019. [3]
La descripción de datos no IID se basa en el análisis de la probabilidad conjunta entre características y etiquetas para cada nodo. Esto permite desacoplar cada contribución según la distribución específica disponible en los nodos locales. Las principales categorías de datos no relacionados con iid se pueden resumir de la siguiente manera: [3]
La pérdida de precisión debido a datos que no son iid se puede limitar mediante el uso de medios más sofisticados para realizar la normalización de datos, en lugar de la normalización por lotes. [13]
La forma en que se agrupan los resultados estadísticos locales y la forma en que los nodos se comunican entre sí pueden cambiar con respecto al modelo centralizado explicado en la sección anterior. Esto conduce a una variedad de enfoques de aprendizaje federado: por ejemplo, sin servidor de orquestación central o comunicación estocástica. [14]
En particular, las redes distribuidas sin orquestadores son una variación importante. En este caso, no hay un servidor central que envíe consultas a los nodos locales y agregue modelos locales. Cada nodo local envía sus resultados a varios otros seleccionados al azar, que agregan sus resultados localmente. Esto restringe el número de transacciones, lo que a veces reduce el tiempo de capacitación y el costo de computación. [15]
Una vez elegida la topología de la red de nodos, se pueden controlar diferentes parámetros del proceso de aprendizaje federado (además de los hiperparámetros propios del modelo de aprendizaje automático) para optimizar el aprendizaje:
También se pueden modificar otros parámetros dependientes del modelo, como:
Esos parámetros deben optimizarse según las limitaciones de la aplicación de aprendizaje automático (por ejemplo, potencia informática disponible, memoria disponible, ancho de banda ). Por ejemplo, elegir estocásticamente una fracción limitada de nodos para cada iteración disminuye el costo de computación y puede evitar el sobreajuste [ cita necesaria ] , de la misma manera que el descenso de gradiente estocástico puede reducir el sobreajuste.
El aprendizaje federado requiere comunicación frecuente entre nodos durante el proceso de aprendizaje. Por lo tanto, no sólo requiere suficiente potencia informática y memoria local, sino también conexiones de gran ancho de banda para poder intercambiar parámetros del modelo de aprendizaje automático. Sin embargo, la tecnología también evita la comunicación de datos, lo que puede requerir importantes recursos antes de iniciar el aprendizaje automático centralizado. Sin embargo, los dispositivos típicamente empleados en el aprendizaje federado tienen restricciones de comunicación; por ejemplo, los dispositivos IoT o los teléfonos inteligentes generalmente están conectados a redes Wi-Fi, por lo que, incluso si los modelos suelen ser menos costosos de transmitir en comparación con los datos sin procesar, los mecanismos de aprendizaje federado Puede que no sean adecuados en su forma general. [3]
El aprendizaje federado plantea varios desafíos estadísticos:
Se han propuesto varios algoritmos diferentes para la optimización federada.
El entrenamiento de aprendizaje profundo se basa principalmente en variantes del descenso de gradiente estocástico , donde los gradientes se calculan en un subconjunto aleatorio del conjunto de datos total y luego se utilizan para realizar un paso del descenso de gradiente.
El descenso de gradiente estocástico federado [19] es la transposición directa de este algoritmo a la configuración federada, pero utilizando una fracción aleatoria de los nodos y utilizando todos los datos de este nodo. El servidor promedia los gradientes proporcionalmente al número de muestras de entrenamiento en cada nodo y se utilizan para realizar un paso de descenso de gradiente.
El promedio federado (FedAvg) es una generalización de FedSGD, que permite a los nodos locales realizar más de una actualización por lotes de datos locales e intercambia los pesos actualizados en lugar de los gradientes. La razón detrás de esta generalización es que en FedSGD, si todos los nodos locales comienzan desde la misma inicialización, promediar los gradientes es estrictamente equivalente a promediar los pesos mismos. Además, promediar los pesos sintonizados provenientes de la misma inicialización no necesariamente perjudica el rendimiento del modelo promediado resultante. [20] Se han propuesto variaciones de FedAvg basadas en optimizadores adaptativos como ADAM y AdaGrad , que en general superan a FedAvg. [21]
Los métodos de aprendizaje federados se ven afectados cuando los conjuntos de datos de los dispositivos están distribuidos de forma heterogénea. El dilema fundamental en la configuración de dispositivos distribuidos heterogéneamente es que minimizar las funciones de pérdida del dispositivo no es lo mismo que minimizar el objetivo de pérdida global. En 2021, Acar et al. [22] introdujeron el método FedDyn como una solución para la configuración de conjuntos de datos heterogéneos. FedDyn regulariza dinámicamente la función de pérdida de cada dispositivo para que las pérdidas del dispositivo modificado converjan a la pérdida global real. Dado que las pérdidas locales están alineadas, FedDyn es robusto a los diferentes niveles de heterogeneidad y puede realizar de forma segura una minimización total en cada dispositivo. En teoría, FedDyn converge al óptimo (un punto estacionario para pérdidas no convexas) al ser independiente de los niveles de heterogeneidad. Estas afirmaciones se verifican con extensas experimentaciones en varios conjuntos de datos. [22]
Minimizar el número de comunicaciones es el estándar de oro para la comparación en el aprendizaje federado. Es posible que también queramos disminuir los niveles de cálculo local por dispositivo en cada ronda. FedDynOneGD [22] es una extensión de FedDyn con menos requisitos informáticos locales. FedDynOneGD calcula solo un gradiente por dispositivo en cada ronda y actualiza el modelo con una versión regularizada del gradiente. Por lo tanto, la complejidad del cálculo es lineal en el tamaño del conjunto de datos local. Además, el cálculo del gradiente se puede paralelizar dentro de cada dispositivo, lo que es diferente de los pasos sucesivos de SGD. En teoría, FedDynOneGD logra las mismas garantías de convergencia que FedDyn con menos cálculo local. [22]
Los métodos de aprendizaje federado no pueden lograr un buen rendimiento global en entornos que no sean IID, lo que motiva a los clientes participantes a generar modelos personalizados en federación. Recientemente, Vahidian et al. [23] introdujeron Sub-FedAvg abriendo un nuevo paradigma de algoritmo FL personalizado al proponer poda híbrida (poda estructurada + no estructurada) con promedio en la intersección de las subredes dibujadas de los clientes que maneja simultáneamente la eficiencia de la comunicación, las limitaciones de recursos y la precisión de los modelos personalizados. [23]
Sub-FedAvg es el primer trabajo que muestra la existencia de boletos ganadores personalizados para clientes en aprendizaje federado a través de experimentos. [23] Además, también propone dos algoritmos sobre cómo dibujar eficazmente las subredes personalizadas. [23] Sub-FedAvg intenta extender la "hipótesis del billete de lotería", que es para redes neuronales entrenadas centralmente, a redes neuronales entrenadas con aprendizaje federado, lo que lleva a este problema de investigación abierto: "¿Existen boletos ganadores para las redes neuronales de los clientes que se entrenan en aprendizaje federado?" ? En caso afirmativo, ¿cómo dibujar eficazmente las subredes personalizadas para cada cliente?
IDA (Agregación de distancia inversa) es un novedoso enfoque de ponderación adaptativa para clientes basado en metainformación que maneja datos desequilibrados y no iid. Utiliza la distancia de los parámetros del modelo como estrategia para minimizar el efecto de los valores atípicos y mejorar la tasa de convergencia del modelo. [24]
Existen muy pocos métodos para el aprendizaje federado híbrido, donde los clientes solo tienen subconjuntos de características y muestras. Sin embargo, este escenario es muy importante en entornos prácticos. El ascenso híbrido federado de coordenadas duales (HyFDCA) [25] es un algoritmo novedoso propuesto en 2024 que resuelve problemas convexos en el entorno híbrido FL. Este algoritmo extiende CoCoA, un algoritmo de optimización distribuido dual primario introducido por Jaggi et al. (2014) [26] y Smith et al. (2017), [27] al caso en el que tanto las muestras como las características se dividen entre clientes.
HyFDCA afirma varias mejoras con respecto a los algoritmos existentes:
Sólo hay otro algoritmo que se centra en FL híbrido, HyFEM propuesto por Zhang et al. (2020). [30] Este algoritmo utiliza una formulación de coincidencia de características que equilibra a los clientes que crean modelos locales precisos y al servidor que aprende un modelo global preciso. Esto requiere una constante de regularización coincidente que debe ajustarse en función de los objetivos del usuario y da como resultado modelos locales y globales dispares. Además, los resultados de convergencia proporcionados para HyFEM solo prueban la convergencia de la formulación coincidente, no del problema global original. Este trabajo es sustancialmente diferente al enfoque de HyFDCA, que utiliza datos sobre clientes locales para construir un modelo global que converge a la misma solución como si el modelo hubiera sido entrenado de manera centralizada. Además, los modelos local y global están sincronizados y no requieren el ajuste de un parámetro coincidente entre los modelos local y global. Sin embargo, HyFEM es adecuado para una amplia gama de arquitecturas, incluidas arquitecturas de aprendizaje profundo, mientras que HyFDCA está diseñado para problemas convexos como la regresión logística y las máquinas de vectores de soporte.
HyFDCA se compara empíricamente con el HyFEM antes mencionado, así como con el popular FedAvg, para resolver problemas convexos (específicamente problemas de clasificación) para varios conjuntos de datos populares (MNIST, Covtype y News20). Los autores encontraron que HyFDCA converge a un valor de pérdida más bajo y una mayor precisión de validación en menos tiempo total en 33 de 36 comparaciones examinadas y 36 de 36 comparaciones examinadas con respecto al número de iteraciones externas. [25] Por último, HyFDCA solo requiere el ajuste de un hiperparámetro, el número de iteraciones internas, a diferencia de FedAvg (que requiere un ajuste tres) o HyFEM (que requiere un ajuste cuatro). Además de que FedAvg y HyFEM son bastante difíciles de optimizar los hiperparámetros, lo que a su vez afecta en gran medida la convergencia, el hiperparámetro único de HyFDCA permite implementaciones prácticas y metodologías de selección de hiperparámetros más simples.
Federated Learning (FL) proporciona capacitación de un modelo compartido global utilizando fuentes de datos descentralizadas en nodos perimetrales y al mismo tiempo preserva la privacidad de los datos. Sin embargo, su rendimiento en las aplicaciones de visión por computadora que utilizan la red neuronal convolucional (CNN) está considerablemente por detrás del de la capacitación centralizada debido a los recursos de comunicación limitados y la baja capacidad de procesamiento en los nodos de borde. Alternativamente, los modelos de transformadores Pure Vision (VIT) superan a las CNN casi cuatro veces en términos de eficiencia y precisión computacional. Por lo tanto, proponemos un nuevo modelo FL con estrategia reconstructiva llamado FED-REV, que ilustra cómo las estructuras basadas en la atención (transformadores de visión puros) mejoran la precisión de FL en datos grandes y diversos distribuidos en nodos de borde, además de la estrategia de reconstrucción propuesta que determina la La influencia de las dimensiones de cada etapa del transformador de visión y luego reduce su complejidad dimensional, lo que reduce el costo de cálculo de los dispositivos de borde, además de preservar la precisión lograda gracias al uso del transformador de visión puro. [31]
El aprendizaje federado comenzó a emerger como un tema de investigación importante en 2015 [2] y 2016, [32] con las primeras publicaciones sobre promedios federados en entornos de telecomunicaciones. Antes de eso, en un trabajo de tesis titulado "Un marco para la captación previa de múltiples fuentes a través del peso adaptativo", [33] se propuso un enfoque para agregar predicciones de múltiples modelos entrenados en tres ubicaciones de un ciclo de respuesta de solicitud. Otro aspecto importante de la investigación activa es la reducción de la carga de comunicación durante el proceso de aprendizaje federado. En 2017 y 2018, las publicaciones han enfatizado el desarrollo de estrategias de asignación de recursos, especialmente para reducir los requisitos de comunicación [20] [34] entre nodos con algoritmos de chismes [35] así como en la caracterización de la robustez ante ataques diferenciales a la privacidad. [36] Otras actividades de investigación se centran en la reducción del ancho de banda durante el entrenamiento a través de métodos de dispersión y cuantificación, [34] donde los modelos de aprendizaje automático se dispersan y/o comprimen antes de compartirlos con otros nodos. El desarrollo de arquitecturas DNN ultraligeras es esencial para el aprendizaje de dispositivos/edge y trabajos recientes reconocen tanto los requisitos de eficiencia energética [37] para el futuro aprendizaje federado como la necesidad de comprimir el aprendizaje profundo, especialmente durante el aprendizaje. [38]
Los avances de investigación recientes están comenzando a considerar canales de propagación del mundo real [39], ya que en implementaciones anteriores se asumieron canales ideales. Otra dirección activa de investigación es desarrollar el aprendizaje federado para entrenar modelos locales heterogéneos con diferentes complejidades computacionales y producir un modelo de inferencia global único y poderoso. [6]
Recientemente se desarrolló un marco de aprendizaje denominado aprendizaje asistido para mejorar las capacidades de aprendizaje de cada agente sin transmitir datos privados, modelos e incluso objetivos de aprendizaje. [40] En comparación con el aprendizaje federado que a menudo requiere un controlador central para orquestar el aprendizaje y la optimización, el aprendizaje asistido tiene como objetivo proporcionar protocolos para que los agentes optimicen y aprendan entre ellos sin un modelo global.
El aprendizaje federado generalmente se aplica cuando los actores individuales necesitan entrenar modelos en conjuntos de datos más grandes que los suyos, pero no pueden darse el lujo de compartir los datos con otros (por ejemplo, por razones legales, estratégicas o económicas). La tecnología aún requiere buenas conexiones entre los servidores locales y una potencia computacional mínima para cada nodo. [3]
Los automóviles autónomos encapsulan muchas tecnologías de aprendizaje automático para funcionar: visión por computadora para analizar obstáculos, aprendizaje automático para adaptar su ritmo al entorno (por ejemplo, los baches de la carretera). Debido al elevado número potencial de vehículos autónomos y a la necesidad de que respondan rápidamente a situaciones del mundo real, el enfoque tradicional de la nube puede generar riesgos para la seguridad. El aprendizaje federado puede representar una solución para limitar el volumen de transferencia de datos y acelerar los procesos de aprendizaje. [41] [42]
En la Industria 4.0 , existe una adopción generalizada de técnicas de aprendizaje automático [43] para mejorar la eficiencia y eficacia del proceso industrial garantizando al mismo tiempo un alto nivel de seguridad. Sin embargo, la privacidad de los datos confidenciales para las industrias y empresas manufactureras es de suma importancia. Se pueden aplicar algoritmos de aprendizaje federado a estos problemas, ya que no revelan ningún dato confidencial. [32] Además, FL también implementó la predicción de PM2.5 para respaldar las aplicaciones de detección de ciudades inteligentes. [44]
El aprendizaje federado busca abordar el problema de la gobernanza y la privacidad de los datos entrenando algoritmos de forma colaborativa sin intercambiar los datos en sí. El enfoque estándar actual de centralizar datos de múltiples centros tiene el costo de preocupaciones críticas con respecto a la privacidad del paciente y la protección de datos. Para resolver este problema, la capacidad de entrenar modelos de aprendizaje automático a escala en múltiples instituciones médicas sin mover los datos es una tecnología fundamental. Nature Digital Medicine publicó el artículo "El futuro de la salud digital con el aprendizaje federado" [45] en septiembre de 2020, en el que los autores exploran cómo el aprendizaje federado puede proporcionar una solución para el futuro de la salud digital y destacan los desafíos y consideraciones que necesitan. ser dirigido. Recientemente, una colaboración de 20 instituciones diferentes de todo el mundo validó la utilidad de entrenar modelos de IA mediante el aprendizaje federado. En un artículo publicado en Nature Medicine "Aprendizaje federado para predecir resultados clínicos en pacientes con COVID-19", [46] mostraron la precisión y generalización de un modelo de IA federado para la predicción de las necesidades de oxígeno en pacientes con infecciones por COVID-19. Además, en un artículo publicado "Una revisión sistemática del aprendizaje federado en el área de la atención médica: desde la perspectiva de las propiedades y aplicaciones de los datos", los autores intentan proporcionar un conjunto de desafíos sobre los desafíos de FL desde una perspectiva centrada en los datos médicos. [47]
Una coalición de la industria y el mundo académico ha desarrollado MedPerf, [48] una plataforma de código abierto que permite la validación de modelos médicos de IA en datos del mundo real. La plataforma se basa técnicamente en una evaluación federada de modelos de IA con el objetivo de aliviar las preocupaciones sobre la privacidad del paciente y conceptualmente en diversos comités de referencia para construir las especificaciones de puntos de referencia neutrales y clínicamente impactantes. [49]
La robótica incluye una amplia gama de aplicaciones de métodos de aprendizaje automático: desde la percepción y la toma de decisiones hasta el control. A medida que las tecnologías robóticas se han ido implementando desde tareas simples y repetitivas (por ejemplo, manipulación repetitiva) hasta tareas complejas e impredecibles (por ejemplo, navegación autónoma), crece la necesidad de aprendizaje automático. Federated Learning proporciona una solución para mejorar los métodos de formación de aprendizaje automático convencionales. En el artículo, [50] los robots móviles aprendieron a navegar en diversos entornos utilizando el método basado en FL, lo que ayudó a la generalización. En el artículo, [51] se aplica el aprendizaje federado para mejorar la navegación de múltiples robots en escenarios de ancho de banda de comunicación limitado, lo cual es un desafío actual en las tareas robóticas basadas en el aprendizaje del mundo real. En el artículo, [52] se utiliza el aprendizaje federado para aprender la navegación basada en Vision, lo que ayuda a una mejor transferencia de simulación a real.
{{cite journal}}
: Citar diario requiere |journal=
( ayuda )