El aprendizaje federado puede transformar la forma en que creamos modelos de IA. En lugar 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 abrir nuevas posibilidades de colaboración y mejora de modelos en una amplia gama de sectores.
El aprendizaje federado es un enfoque de aprendizaje automático que permite entrenar un modelo de IA compartido utilizando datos de numerosos dispositivos o servidores perimetrales descentralizados. Este proceso se lleva a cabo sin necesidad de intercambiar las muestras de datos locales. Se trata de 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 enormemente con el aprendizaje automático tradicional, que suele requerir agregar todos los datos en un repositorio central para entrenar el modelo. Aunque 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 normativas 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.
Como hemos mencionado 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.
Aunque 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 los problemas de 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 las normativas o los acuerdos de confidencialidad.
El aprendizaje federado se adapta a diversas necesidades. Las principales diferencias suelen estar relacionadas con la forma en que se distribuyen los datos o con la manera en que los participantes colaboran. Estos son algunos de los tipos más comunes:
Tipo de aprendizaje federado | Superposición de datos | Diferencia principal | Aplicaciones de ejemplo |
Aprendizaje federado horizontal | El mismo espacio de características, pero con 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 de spam colaborativa. |
Aprendizaje federado vertical | Las mismas instancias de datos, pero con distintas funciones. | Los participantes comparten las mismas muestras (por ejemplo, usuarios o clientes), pero tienen diferentes características para esas muestras. | Detección conjunta de fraudes (combinando datos financieros y de comercio electrónico), puntuación crediticia, recomendaciones personalizadas usando fuentes de datos complementarias. |
Aprendizaje federado por transferencia | Diferentes funciones y diferentes muestras. | Utiliza el conocimiento de una tarea o un dominio de origen para mejorar el rendimiento en una tarea o un dominio de destino relacionados pero diferentes. Esto suele implicar que los participantes adaptan o ajustan un modelo preentrenado con sus datos locales en un entorno federado. | Adaptar un modelo médico general a los datos de pacientes de un hospital concreto o aplicar modelos entrenados con grandes conjuntos de datos a aplicaciones industriales de nicho. |
Tipo de aprendizaje federado
Superposición de datos
Diferencia principal
Aplicaciones de ejemplo
Aprendizaje federado horizontal
El mismo espacio de características, pero con 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 de spam colaborativa.
Aprendizaje federado vertical
Las mismas instancias de datos, pero con distintas funciones.
Los participantes comparten las mismas muestras (por ejemplo, usuarios o clientes), pero tienen diferentes características para esas muestras.
Detección conjunta de fraudes (combinando datos financieros y de comercio electrónico), puntuación crediticia, recomendaciones personalizadas usando fuentes de datos complementarias.
Aprendizaje federado por transferencia
Diferentes funciones y diferentes muestras.
Utiliza el conocimiento de una tarea o un dominio de origen para mejorar el rendimiento en una tarea o un dominio de destino relacionados pero diferentes. Esto suele implicar que los participantes adaptan o ajustan un modelo preentrenado con sus datos locales en un entorno federado.
Adaptar un modelo médico general a los datos de pacientes de un hospital concreto o aplicar modelos entrenados con grandes conjuntos de datos a aplicaciones industriales de nicho.
El aprendizaje federado funciona mediante un proceso iterativo que implica un coordinador central (normalmente un servidor) y varios clientes participantes (dispositivos u organizaciones). El flujo de trabajo general se puede dividir en estos pasos clave:
El proceso comienza con un servidor central que inicializa un modelo de aprendizaje automático global. Este modelo sirve como punto de partida para el entrenamiento colaborativo. A continuación, el servidor distribuye este modelo global a un subconjunto seleccionado de dispositivos cliente participantes.
Cada dispositivo cliente seleccionado recibe el modelo global. El cliente usa sus propios datos locales para entrenar el modelo y actualizar sus parámetros en función de los patrones y la información presentes en ese conjunto de datos local. Es importante destacar que los datos brutos permanecen en el dispositivo del cliente durante todo este paso y nunca se envían al servidor.
Tras el entrenamiento local, cada cliente envía los parámetros de su modelo actualizado (por ejemplo, gradientes o pesos) al servidor central. Estas actualizaciones representan lo que el modelo ha aprendido de los datos locales, pero no exponen los datos en sí.
El servidor central recibe las actualizaciones de los modelos de varios clientes. Después, agrega estas actualizaciones, a menudo calculando su media (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.
A continuación, el servidor distribuye este modelo global actualizado a un nuevo conjunto de clientes (o al mismo) para otra ronda de entrenamiento local. Este ciclo se repite varias veces, refinando progresivamente el modelo global con cada iteración hasta que alcanza el nivel de precisión o convergencia deseado.
Un sistema típico de aprendizaje federado consta de varios elementos interconectados:
Son los dispositivos individuales o las organizaciones que almacenan los datos y entrenan los modelos localmente. Los clientes pueden ser desde teléfonos móviles y dispositivos de Internet de las cosas hasta hospitales o instituciones financieras. Se encargan de ejecutar el modelo localmente y de generar actualizaciones de parámetros.
El servidor central actúa como orquestador del proceso de aprendizaje federado. Inicializa y distribuye el modelo global, recoge las actualizaciones de los modelos de los clientes, las agrega para refinar el modelo global y, a continuación, redistribuye el modelo actualizado. No accede directamente a los datos en bruto de los clientes.
Define cómo intercambian información los clientes y el servidor, principalmente los parámetros y las actualizaciones del modelo. Los protocolos de comunicación eficientes y seguros son cruciales, especialmente teniendo en cuenta el potencial de un gran número de clientes y las diferentes condiciones de red.
Este es el método que usa el servidor central para combinar las actualizaciones de los modelos que recibe de varios clientes. Se suelen usar algoritmos como el de promediado federado para calcular la media de los pesos o los gradientes, lo que permite crear un modelo global único y mejorado.
El aprendizaje federado puede ofrecer algunas ventajas interesantes, sobre todo en situaciones en las que la privacidad, la seguridad y la distribución de los datos son factores clave.
Mayor privacidad y seguridad de los datos
Este es, sin duda, el beneficio más importante. Al mantener los datos 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 intrínsecamente la privacidad de los usuarios y ayuda a las organizaciones a cumplir las estrictas normativas de protección de datos.
Acceso a datos diversos
El aprendizaje federado permite que los modelos aprendan a partir 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 dar lugar a modelos más sólidos, generalizables y precisos, ya que se entrenan con un espectro más amplio de comportamientos, condiciones o entornos de usuario en comparación con los modelos entrenados con un único conjunto de datos centralizado.
Costes de comunicación reducidos
Transmitir actualizaciones de modelos (que suelen ser más pequeñas que los conjuntos de datos sin procesar) suele ser más eficiente en términos de ancho de banda y menos costoso que transferir grandes cantidades de datos sin procesar a un servidor central, especialmente en situaciones que implican muchos dispositivos perimetrales o ubicaciones geográficamente dispersas.
Mejora colaborativa de modelos
El aprendizaje federado permite a las organizaciones o a los usuarios colaborar 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 combinar la inteligencia de distintas fuentes.
Cumplimiento normativo optimizado
El diseño inherente del aprendizaje federado mantiene los datos a nivel local, lo que puede ayudar significativamente a cumplir normativas complejas de privacidad de los datos como el RGPD, la CCPA y la HIPAA. Al minimizar la transferencia y la centralización de datos, las organizaciones pueden asegurarse mejor de que se cumplen los requisitos de residencia de datos y reducir la carga de cumplimiento asociada al tratamiento de información personal o sanitaria sensible.
Mantener la soberanía de los datos
Este enfoque respeta la propiedad y el control de los datos. Las organizaciones o personas que participan en el programa conservan la plena autoridad sobre sus recursos de datos. Incluso cuando se contribuye a un modelo colectivo, los datos en bruto permanecen de forma segura en su entorno original, lo que permite la gobernanza de datos y mantiene la confianza entre los colaboradores.
A pesar de sus ventajas, el aprendizaje federado también presenta algunos retos únicos que deben tenerse en cuenta:
El aprendizaje federado permite a los usuarios crear aplicaciones sofisticadas que protegen la privacidad en una gran variedad de dominios. Algunos casos prácticos potenciales del aprendizaje federado son los siguientes:
Los usuarios pueden aprovechar el aprendizaje federado para crear aplicaciones móviles que aprendan de los datos de los usuarios sin poner en riesgo su privacidad. Esto es fundamental para funciones como el texto predictivo en teclados (por ejemplo, Gboard), las sugerencias de la siguiente palabra, las recomendaciones personalizadas y el reconocimiento de voz en el dispositivo. Al entrenar los modelos directamente en los dispositivos de los usuarios, los desarrolladores pueden mejorar la funcionalidad de las aplicaciones y la experiencia de usuario adaptándose a los patrones de interacción individuales, al tiempo que se aseguran de que los datos personales sensibles permanezcan locales y protegidos, en consonancia con normativas como el RGPD y la HIPAA.
El aprendizaje federado permite a los usuarios crear sistemas de IA colaborativos para empresas en las que los datos están aislados en diferentes organizaciones. Esto es muy valioso en sectores como el de la sanidad y las finanzas, donde el uso compartido de datos está restringido por las normativas de privacidad o por cuestiones de propiedad. Los usuarios pueden crear plataformas que permitan a varias instituciones (por ejemplo, hospitales para investigación médica o bancos para la detección de fraude) entrenar modelos compartidos con sus datos combinados sin exponer información sin procesar. Esto fomenta la colaboración, mejora la precisión de los modelos mediante conjuntos de datos diversos y ayuda a cumplir los estrictos requisitos de cumplimiento.
Para quienes trabajan con dispositivos del Internet de las cosas (IoT) y del Internet de las cosas industrial (IIoT), el aprendizaje federado ofrece una forma eficaz de integrar la inteligencia en el perímetro. Esto permite crear aplicaciones como el mantenimiento predictivo de 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 información valiosa en tiempo real y mantiene los datos operativos sensibles dentro de los límites seguros de la fábrica o el dispositivo, lo cual es esencial para proteger la información de propiedad exclusiva.
Los usuarios pueden usar el aprendizaje federado para crear plataformas de analíticas de datos sólidas para empresas que necesiten extraer información valiosa 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 contribuye significativamente al cumplimiento de normativas como el RGPD, la CCPA y la HIPAA. Esto permite a las organizaciones obtener información valiosa sobre su negocio, identificar tendencias o crear modelos predictivos en sus distintos departamentos o entidades, al tiempo que mantienen estrictos protocolos de gobernanza y seguridad de los datos.
El aprendizaje federado se puede aplicar para crear soluciones de ciberseguridad más resilientes y eficaces. Los modelos se pueden entrenar en varios endpoints (por ejemplo, ordenadores, servidores o dispositivos móviles) para detectar malware, identificar intrusiones en la red o señalar actividades sospechosas sin exfiltrar datos sensibles de sistemas individuales. Este enfoque de entrenamiento descentralizado puede dar lugar a capacidades de detección de amenazas más exhaustivas, ya que aprende de una mayor variedad de comportamientos de red y eventos de seguridad locales, todo ello respetando la privacidad de los usuarios o sistemas individuales.
Para que el aprendizaje federado sea más fácil de usar, han surgido varios frameworks comerciales y de código abierto. Estas herramientas ofrecen a los desarrolladores lo que necesitan para gestionar el entrenamiento en distintos dispositivos, cómo se comunican y cómo mantener la privacidad de los datos.
El ámbito del aprendizaje federado está evolucionando rápidamente. Las investigaciones actuales se centran en abordar sus retos, como mejorar la solidez de los datos y la heterogeneidad de los sistemas, desarrollar técnicas de preservación de 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 ámbitos sensibles, el aprendizaje federado está llamado a desempeñar un papel aún más crucial a la hora de habilitar una inteligencia segura, privada y colaborativa. Aunque actualmente muchos sistemas de aprendizaje federado se coordinan mediante un servidor central, es probable que en el futuro se exploren enfoques más descentralizados o de aprendizaje federado punto a punto, lo que mejorará la solidez y la escalabilidad, y eliminará los puntos únicos de fallo.
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.
Empieza a crear en Google Cloud con 300 USD en crédito gratis y más de 20 productos Always Free.