Aprendizaje federado: una guía sobre qué es y cómo funciona

El aprendizaje federado puede transformar la forma en que creamos modelos de IA. En vez de recopilar grandes cantidades de datos sensibles en una única ubicación central, el aprendizaje federado lleva el proceso de entrenamiento directamente a los datos. Este enfoque descentralizado no solo puede ofrecer una sólida protección de la privacidad, sino que también ayuda a desbloquear nuevas posibilidades de colaboración y mejora de modelos en una amplia gama de industrias.

¿Qué es el aprendizaje federado?

El aprendizaje federado (FL) es un enfoque de aprendizaje automático que permite entrenar un modelo de IA compartido con datos de numerosos dispositivos o servidores perimetrales descentralizados. Este proceso se realiza sin necesidad de intercambiar las muestras de datos locales. Piensa en ello como un proceso de aprendizaje colaborativo en el que los participantes individuales contribuyen a un objetivo común sin revelar su información privada.

Esto contrasta de manera marcada con el aprendizaje automático tradicional, que suele requerir la agregación de todos los datos en un repositorio central para el entrenamiento del modelo. Si bien los enfoques centralizados han impulsado avances significativos en la IA, pueden generar preocupaciones sobre la privacidad de los datos, la seguridad y el cumplimiento de reglamentos como el RGPD. El aprendizaje federado ofrece una alternativa que preserva la privacidad, ya que mantiene los datos sensibles localizados en el dispositivo del usuario o en el entorno seguro de una organización.

Aprendizaje federado frente al aprendizaje automático

Como se mencionó anteriormente, la principal diferencia entre el aprendizaje federado y el aprendizaje automático tradicional y centralizado radica en dónde residen los datos durante el proceso de entrenamiento.

  • Aprendizaje automático tradicional (centralizado): Los datos se recopilan de diversas fuentes y se reúnen en un solo lugar, como un servidor en la nube o un centro de datos. Luego, el modelo de aprendizaje automático se entrena directamente con este conjunto de datos consolidado. Este método puede ofrecer ventajas como un acceso directo a los datos y un desarrollo más simple, pero también puede implicar riesgos de privacidad significativos y vulnerabilidades potenciales si el repositorio central de datos se ve comprometido.
  • Aprendizaje federado (descentralizado): En vez de mover los datos, el modelo de aprendizaje automático se envía a los datos, y los participantes (clientes) entrenan el modelo con sus datos locales. Solo las actualizaciones del modelo, como los pesos o gradientes aprendidos, se devuelven a un servidor central para su agregación. Este proceso permite que el modelo global aprenda de diversos conjuntos de datos sin acceder nunca a la información sin procesar y sensible de ningún participante.

Si bien el aprendizaje automático centralizado está bien establecido y suele ser más fácil de implementar, el aprendizaje federado está ganando terreno porque puede abordar de forma inherente las inquietudes sobre la privacidad de los datos, reducir los requisitos de ancho de banda y permitir el entrenamiento de modelos con datos que, de otro modo, podrían ser inaccesibles debido a reglamentaciones o acuerdos de confidencialidad. 

Los diferentes tipos de aprendizaje federado

El aprendizaje federado se adapta a diversas necesidades. Las principales diferencias suelen surgir de cómo se distribuyen los datos o cómo participan los usuarios en la colaboración. A continuación, se presenta un desglose de los tipos comunes:

Tipo de aprendizaje federado

Superposición de datos

Diferencia clave

Aplicaciones de ejemplo

Aprendizaje federado horizontal

Mismo espacio de atributos, diferentes instancias de datos.

Los participantes comparten el mismo esquema de datos, pero tienen conjuntos de muestras distintos. El entrenamiento se distribuye entre estas muestras.

Predicción del teclado móvil, personalización de dispositivos inteligentes, detección colaborativa de spam.

Aprendizaje federado vertical

Mismas instancias de datos, diferentes funciones.

Los participantes comparten las mismas muestras (por ejemplo, usuarios, clientes), pero tienen diferentes atributos para esas muestras.

Detección conjunta de fraude (combinación de datos financieros y de comercio electrónico), calificación crediticia, recomendaciones personalizadas con fuentes de datos complementarias.

Aprendizaje por transferencia federado

Diferentes funciones y muestras.

Utiliza el conocimiento de una tarea o dominio de origen para mejorar el rendimiento en una tarea o dominio de destino relacionado pero diferente. Esto a menudo implica que los participantes adapten o ajusten un modelo entrenado previamente con sus datos locales en un entorno federado.

Adaptar un modelo médico general a los datos de pacientes de un hospital específico o aplicar modelos entrenados en grandes conjuntos de datos a aplicaciones industriales de nicho.


Tipo de aprendizaje federado

Superposición de datos

Diferencia clave

Aplicaciones de ejemplo

Aprendizaje federado horizontal

Mismo espacio de atributos, diferentes instancias de datos.

Los participantes comparten el mismo esquema de datos, pero tienen conjuntos de muestras distintos. El entrenamiento se distribuye entre estas muestras.

Predicción del teclado móvil, personalización de dispositivos inteligentes, detección colaborativa de spam.

Aprendizaje federado vertical

Mismas instancias de datos, diferentes funciones.

Los participantes comparten las mismas muestras (por ejemplo, usuarios, clientes), pero tienen diferentes atributos para esas muestras.

Detección conjunta de fraude (combinación de datos financieros y de comercio electrónico), calificación crediticia, recomendaciones personalizadas con fuentes de datos complementarias.

Aprendizaje por transferencia federado

Diferentes funciones y muestras.

Utiliza el conocimiento de una tarea o dominio de origen para mejorar el rendimiento en una tarea o dominio de destino relacionado pero diferente. Esto a menudo implica que los participantes adapten o ajusten un modelo entrenado previamente con sus datos locales en un entorno federado.

Adaptar un modelo médico general a los datos de pacientes de un hospital específico o aplicar modelos entrenados en grandes conjuntos de datos a aplicaciones industriales de nicho.


¿Cómo funciona el aprendizaje federado?

El aprendizaje federado funciona a través de un proceso iterativo que involucra a un coordinador central (generalmente un servidor) y a múltiples clientes participantes (organizaciones o dispositivos). El flujo de trabajo general se puede dividir en estos pasos clave:

1. Distribución inicial del modelo

El proceso comienza con un servidor central que inicializa un modelo global de aprendizaje automático. Este modelo sirve como punto de partida para el entrenamiento colaborativo. Luego, el servidor distribuye este modelo global a un subconjunto seleccionado de dispositivos cliente participantes.

2. Entrenamiento de modelos local

Cada dispositivo cliente seleccionado recibe el modelo global. Con sus propios datos locales, el cliente entrena el modelo y actualiza sus parámetros en función de los patrones y la información presentes en ese conjunto de datos local. Es fundamental que los datos sin procesar permanezcan en el dispositivo cliente durante este paso y que nunca se envíen al servidor.

3. Agregación de actualizaciones de modelos

Después del entrenamiento local, cada cliente envía sus parámetros de modelo actualizados (por ejemplo, gradientes o pesos) de vuelta al servidor central. Estas actualizaciones representan lo que el modelo aprendió de los datos locales, pero no exponen los datos en sí.

4. Actualización global del modelo

El servidor central recibe las actualizaciones de los modelos de varios clientes. Luego, agrega estas actualizaciones, a menudo promediándolas (un método común es el promedio federado o FedAvg), para crear una nueva versión mejorada del modelo global. Este modelo agregado se beneficia del aprendizaje colectivo de todos los clientes participantes. 

5. Perfeccionamiento iterativo

Luego, el servidor distribuye de nuevo este modelo global recién actualizado a un nuevo conjunto de clientes (o al mismo) para otra ronda de entrenamiento local. Este ciclo se repite varias veces, lo que define mejor progresivamente el modelo global con cada iteración hasta que alcanza un nivel deseado de exactitud o convergencia.

Componentes clave de un sistema de aprendizaje federado

Un sistema típico de aprendizaje federado comprende varios elementos interconectados:

Clientes (propietarios de datos)

Estos son los dispositivos o las organizaciones individuales que tienen los datos y realizan el entrenamiento de modelos local. Los clientes pueden ser desde teléfonos celulares y dispositivos de IoT hasta hospitales o instituciones financieras. Son responsables de ejecutar el modelo de forma local y generar actualizaciones de parámetros.

Servidor central (agregador)

El servidor central actúa como el organizador del proceso de aprendizaje federado. Inicializa y distribuye el modelo global, recopila las actualizaciones de los modelos de los clientes, agrega estas actualizaciones para definir mejor el modelo global y, luego, redistribuye el modelo actualizado. No accede directamente a los datos sin procesar de los clientes.

Protocolo de comunicación

Esto define cómo los clientes y el servidor intercambian información, principalmente los parámetros y las actualizaciones del modelo. Los protocolos de comunicación eficientes y seguros son fundamentales, especialmente dado el potencial de una gran cantidad de clientes y las variadas condiciones de red. 

Algoritmo de agregación de modelos

Este es el método que usa el servidor central para combinar las actualizaciones de los modelos recibidas de varios clientes. Los algoritmos como el promedio federado se usan comúnmente para promediar los pesos o gradientes, lo que crea un modelo global único y mejorado.

Beneficios del aprendizaje federado

El aprendizaje federado puede ofrecer algunas ventajas convincentes, en particular en situaciones en las que la privacidad de los datos, la seguridad y los datos distribuidos son consideraciones clave.

Privacidad y seguridad de los datos mejoradas

Este podría ser el beneficio más significativo. Como los datos se mantienen localizados en los dispositivos cliente, el aprendizaje federado puede reducir drásticamente el riesgo de exposición de información sensible durante la transmisión o el almacenamiento. Esto mejora inherentemente la privacidad del usuario y ayuda a las organizaciones a cumplir con las estrictas reglamentaciones de protección de datos.

Acceso a datos diversos

El aprendizaje federado permite que los modelos aprendan de una amplia variedad de fuentes de datos del mundo real que, de otro modo, podrían estar aisladas o ser inaccesibles. Esta diversidad puede llevar a modelos más robustos, generalizables y precisos, ya que se entrenan en un espectro más amplio de comportamientos, condiciones o entornos de usuarios en comparación con los modelos entrenados en un único conjunto de datos centralizado. 

Reducción de costos de comunicación

La transmisión de actualizaciones de modelos (que suelen ser más pequeñas que los conjuntos de datos sin procesar), a menudo, es más eficiente en cuanto al ancho de banda y menos costosa que la transferencia de grandes cantidades de datos sin procesar a un servidor central, especialmente en situaciones que involucran muchos dispositivos perimetrales o ubicaciones geográficamente dispersas. 

Mejora colaborativa de modelos

El aprendizaje federado permite que las organizaciones o las personas colaboren en la creación y mejora de modelos de IA sin necesidad de compartir datos sensibles o de propiedad exclusiva. Esto ayuda a fomentar un ecosistema de desarrollo de IA más inclusivo y permite la inteligencia agrupada de fuentes dispares. 

Cumplimiento normativo optimizado

El diseño inherente del aprendizaje federado mantiene los datos locales, lo que puede ayudar significativamente a cumplir con reglamentaciones complejas de privacidad de los datos, como el RGPD, la CCPA y la HIPAA. Cuando minimizan el movimiento y la centralización de datos, las organizaciones pueden garantizar mejor que se cumplan los requisitos de residencia de los datos y reducir la carga de cumplimiento asociada con el manejo de información personal o de salud sensible.

Respeto de la soberanía de los datos

Este enfoque respeta la propiedad y el control de los datos. Las organizaciones o personas participantes conservan la autoridad total sobre sus recursos de datos. Incluso cuando contribuyen a un modelo colectivo, los datos sin procesar permanecen de forma segura en su entorno original, lo que permite la administración de datos y mantiene la confianza entre los colaboradores.

Desafíos y consideraciones en el aprendizaje federado

A pesar de sus ventajas, el aprendizaje federado también presenta algunos desafíos únicos que se deben considerar con atención:

  • Heterogeneidad de los datos y los dispositivos: Los clientes en una red de aprendizaje federado pueden variar significativamente en términos de su distribución de datos (datos no independientes y distribuidos de forma idéntica, o datos no IID) y sus capacidades computacionales (hardware del dispositivo, conectividad de red). Esta diversidad puede afectar la convergencia del modelo y el rendimiento general.
  • Sobrecarga de comunicación: Si bien se reduce en comparación con la transferencia de datos centralizada, el aprendizaje federado aún requiere una comunicación frecuente entre los clientes y el servidor. Administrar esta comunicación de manera eficiente, especialmente con una gran cantidad de clientes o redes poco confiables, aún puede ser un desafío técnico. 
  • Vulnerabilidades de seguridad y privacidad: Aunque está diseñado para la privacidad, el aprendizaje federado no es inmune a todas las amenazas de seguridad. Las actualizaciones de modelos en sí mismas pueden filtrar información sobre los datos locales a través de técnicas avanzadas como ataques de inferencia o envenenamiento de datos. A menudo, se emplean medidas de seguridad robustas, como la privacidad diferencial y la agregación segura, para mitigar estos riesgos, aunque pueden generar compensaciones con la exactitud o el costo computacional.
  • Desviación del modelo: Con el tiempo, la distribución de datos en los dispositivos de clientes individuales puede cambiar, lo que lleva a una "desviación del modelo" en la que los modelos locales divergen del modelo global. Para abordar este problema, se requieren mecanismos de adaptación continua o enfoques de aprendizaje federado personalizado. 

Aplicaciones de aprendizaje federado

El aprendizaje federado permite a los usuarios crear aplicaciones sofisticadas que preservan la privacidad en una variedad de dominios. Estos son algunos casos de uso potenciales del aprendizaje federado:

Desarrolla aplicaciones centradas en priorizar la privacidad

Los usuarios pueden aprovechar el aprendizaje federado para crear aplicaciones para dispositivos móviles que aprendan de los datos de los usuarios sin comprometer la privacidad. Esto es fundamental para funciones como el texto predictivo en teclados (por ejemplo, Gboard), las sugerencias de palabras siguientes, las recomendaciones personalizadas y el reconocimiento de voz integrado en el dispositivo. Cuando los desarrolladores entrenan modelos directamente en los dispositivos de los usuarios, pueden mejorar las funciones de la app y la experiencia del usuario adaptándose a los patrones de interacción individuales, a la vez que garantizan que los datos personales sensibles permanezcan locales y protegidos, lo que se alinea con reglamentaciones como el RGPD y la HIPAA. 

Creación de soluciones de IA interorganizacionales

El aprendizaje federado permite a los usuarios crear sistemas de IA colaborativos para empresas en las que los datos se encuentran en silos en diferentes organizaciones. Esto es invaluable en sectores como la atención médica y las finanzas, en los que el uso compartido de datos está restringido debido a las reglamentaciones de privacidad o a las preocupaciones de propiedad. Los usuarios pueden crear plataformas que permitan a varias instituciones (por ejemplo, hospitales para investigación médica, bancos para detección de fraude) entrenar modelos compartidos con sus datos combinados sin exponer información sin procesar. Esto ayuda a fomentar la colaboración, mejora la exactitud del modelo a través de conjuntos de datos diversos y ayuda a cumplir con los estrictos requisitos de cumplimiento.

Habilitación de dispositivos perimetrales inteligentes en IoT y en IoT industrial (IIoT)

Para quienes trabajan con dispositivos de Internet de las cosas (IoT) y de IoT industrial (IIoT), el aprendizaje federado ofrece una forma eficaz de incorporar inteligencia en el perímetro. Esto permite la creación de aplicaciones como el mantenimiento predictivo para equipos industriales, la detección de anomalías en redes de sensores o la optimización del uso de recursos en ciudades inteligentes. Los modelos se pueden entrenar con datos generados por sensores y maquinaria distribuidos directamente en los dispositivos perimetrales. Este enfoque reduce la sobrecarga de comunicación, permite obtener estadísticas en tiempo real y mantiene los datos operativos sensibles dentro de los límites seguros de la fábrica o el dispositivo, lo que es esencial para mantener la información de propiedad.

Creación de plataformas de análisis de datos seguras y que cumplen con las normativas

Los usuarios pueden usar el aprendizaje federado para ayudar a crear plataformas de análisis de datos sólidas para empresas que necesitan obtener estadísticas de conjuntos de datos distribuidos y sensibles. Ayuda a garantizar que los modelos analíticos se puedan entrenar y ejecutar sin centralizar los datos, lo que ayuda significativamente a cumplir con reglamentaciones como el RGPD, la CCPA y la HIPAA. Esto permite que las organizaciones obtengan inteligencia empresarial valiosa, identifiquen tendencias o creen modelos predictivos en sus distintos departamentos o entidades, a la vez que mantienen protocolos estrictos de administración y seguridad de datos.

Mejora de la ciberseguridad con el aprendizaje distribuido

El aprendizaje federado se puede aplicar para crear soluciones de ciberseguridad más resilientes y eficaces. Los modelos se pueden entrenar en varios extremos (por ejemplo, computadoras, servidores, dispositivos móviles) para detectar software malicioso, identificar intrusiones en la red o marcar actividades sospechosas sin filtrar datos sensibles de sistemas individuales. Este enfoque de entrenamiento descentralizado puede llevar a capacidades de detección de amenazas más completas, ya que aprende de una variedad más amplia de comportamientos de red y eventos de seguridad locales, todo mientras respeta la privacidad de los usuarios o sistemas individuales. 

Frameworks de aprendizaje federado

Para facilitar el uso del aprendizaje federado, surgieron varios frameworks comerciales y de código abierto. Estas herramientas les dan a los desarrolladores lo que necesitan para manejar el entrenamiento en diferentes dispositivos, cómo se comunican y cómo mantener la privacidad de los datos.

  • TensorFlow Federated (TFF): Desarrollado por Google, TFF es un framework de código abierto para el aprendizaje automático y otros cálculos sobre datos descentralizados. Se integra perfectamente con TensorFlow y es excelente para simular el entrenamiento federado y crear nuevos algoritmos de aprendizaje federado. 
  • PySyft: Como parte del ecosistema de OpenMined, PySyft es una biblioteca de Python enfocada en la IA que preserva la privacidad. Permite el aprendizaje federado y funciona con frameworks de aprendizaje profundo populares como PyTorch y TensorFlow, y admite técnicas como la privacidad diferencial y la computación multipartita segura (SMPC).
  • Flower: Flower es un framework independiente y altamente personalizable para el aprendizaje federado. Funciona con cualquier biblioteca de aprendizaje automático, incluidas PyTorch, TensorFlow y scikit-learn, lo que la hace versátil para equipos con diversas pilas de AA. 
  • NVIDIA FLARE: Este framework está diseñado para imágenes médicas y genómica, lo que permite el desarrollo colaborativo de IA en el sector de la atención médica. También se usa en aplicaciones como vehículos autónomos.
  • FATE (Federated AI Technology Enabler): Desarrollada por WeBank, FATE es una plataforma enfocada en empresas que admite el aprendizaje federado con técnicas avanzadas de privacidad, como la encriptación homomórfica. Ofrece una interfaz basada en la Web para administrar flujos de trabajo. 
  • Substra: Inicialmente desarrollado para un proyecto de investigación médica de varios socios, Substra ahora está alojado en Linux Foundation. Es particularmente sólido en el campo médico, ya que enfatiza la propiedad de los datos, la privacidad y la trazabilidad. 

El futuro del aprendizaje federado

El campo del aprendizaje federado está evolucionando rápidamente. La investigación actual se enfoca en abordar sus desafíos, como mejorar la solidez de los datos y la heterogeneidad del sistema, desarrollar técnicas que preservan la privacidad más sofisticadas, crear protocolos de comunicación más eficientes y permitir experiencias de aprendizaje federado verdaderamente personalizadas. A medida que la IA se integra más en dominios sensibles, el aprendizaje federado está preparado para desempeñar un papel aún más fundamental en la habilitación de inteligencia segura, privada y colaborativa. Si bien un servidor central actualmente organiza muchos sistemas de aprendizaje federado, es probable que los desarrollos futuros exploren enfoques de aprendizaje federado más verdaderamente descentralizados o entre iguales, lo que mejorará la solidez y la escalabilidad, y eliminará los puntos únicos de fallo.

Crea y aprovecha sistemas de aprendizaje federado con Google Cloud

Google Cloud ofrece un entorno sólido y herramientas específicas que respaldan las iniciativas de aprendizaje federado, tanto para crear sistemas de aprendizaje federado como para aprovecharlo en sus propios productos.

Da el siguiente paso

Comienza a desarrollar en Google Cloud con el crédito gratis de $300 y los más de 20 productos del nivel Siempre gratuito.

Google Cloud