Cinco recursos interesantes para estudiar el aprendizaje federado en 2023

El aprendizaje federado es un método de aprendizaje automático colaborativo que utiliza los datos originales sin cambiarlos. A diferencia de los sistemas de aprendizaje automático tradicionales que requieren que los datos de entrenamiento estén centralizados en una sola máquina o centro de datos, el aprendizaje federado entrena algoritmos en varios servidores o dispositivos periféricos descentralizados.

Esta técnica de aprendizaje permite que los teléfonos móviles creen un modelo de predicción compartido mientras almacenan datos de entrenamiento en el dispositivo y evitan el almacenamiento de datos en la nube.

Aquí hay algunos recursos interesantes para ayudarlo a aprender sobre el aprendizaje federado.

Sustrato

Substra es un marco de software de aprendizaje federado creado por un esfuerzo de investigación de múltiples socios centrado en Owkin, una empresa francesa fundada en 2016. Substra se enfoca en la industria médica con objetivos de privacidad y propiedad de datos. Hoy se utiliza para el descubrimiento de fármacos en el sector farmacéutico como parte de la iniciativa MELLODY.

Substra admite varias interfaces para diferentes tipos de usuarios. Hay una biblioteca de Python para científicos de datos, interfaces de línea de comandos para administradores e interfaces gráficas de usuario para gerentes de proyectos y otros usuarios avanzados. La implementación de Substra requiere una configuración compleja de Kubernetes para cada nodo.

PySyft + PyGrid

PySyft es un paquete Python 3 de código abierto que utiliza FL, privacidad diferencial y computación criptográfica para proporcionar aprendizaje federado con fines de investigación. Fue creado por la comunidad OpenMined y funciona principalmente con marcos de aprendizaje profundo como PyTorch y TensorFlow.

PySyft puede realizar dos tipos de cálculos:

  • Cálculos dinámicos sobre datos no observables
  • Los cálculos estáticos son gráficos de cálculos que luego podemos realizar en un entorno informático diferente.

PySyft es un lenguaje de programación que define objetos, métodos de aprendizaje automático y abstracciones. No puede trabajar en tareas simples de ciencia de datos que requieren una conexión de red con PySyft. Esto requeriría el uso de otro paquete conocido como PyGrid. Además, PyGrid admite el aprendizaje federado en la web, dispositivos móviles, dispositivos perimetrales y múltiples tipos de terminales. PyGrid es la API utilizada para administrar y medir PySyft. Podemos usar PyGrid Admin para administrarlo.

Open FL

Intel Open Federated Learning es un proyecto Python 3 de código abierto desarrollado por Intel para aplicar FL a datos confidenciales. OpenFL incluye scripts de implementación de bash y utiliza certificados para garantizar la comunicación, pero el usuario debe manejar la mayor parte de esto por sí mismo.

La biblioteca consta de dos partes: un colaborador que entrena modelos globales utilizando un conjunto de datos local y un agregador que recibe actualizaciones de modelos y las agrega para crear un modelo global. OpenFL incluye una API de Python, así como una interfaz de línea de comandos. Dado que la comunicación entre nodos se realiza a través de mTLS, se necesitan certificados. Cada nodo de la federación debe estar certificado. Para reducir los costos de comunicación, OpenFL proporciona compresión de datos con pérdida y sin pérdida. Los desarrolladores pueden personalizar el registro, los mecanismos de división de datos y la lógica de agregación en OpenFL.

El Plan de aprendizaje federado (FL) es la base de la filosofía de diseño de OpenFL. Este es un archivo YAML que define los colaboradores, agregadores, conexiones, modelos, datos y cualquier configuración básica necesarios. OpenFL se ejecuta en contenedores Docker para aislar contextos de federación.

Aprendizaje federado de IBM

IBM Federated Learning proporciona la base para FL sobre la cual podemos construir capacidades avanzadas. No se basa en ningún marco de aprendizaje automático y admite muchas topologías de aprendizaje, como sumadores y protocolos estándar.

Está diseñado para proporcionar una base sólida para el aprendizaje federado, lo que permite múltiples modelos de aprendizaje, topologías y modelos de aprendizaje en escenarios empresariales y de nube híbrida. IBM Federated Learning es compatible con una variedad de modelos de aprendizaje automático, que incluyen:

  • Keras, PyTorch y TensorFlow se utilizan para crear modelos.
  • Regresión logística, SVM lineal, regresión lineal y otros clasificadores/regresiones lineales (con regularizadores)
  • Árbol de decisión ID3
  • DQN, DDPG, PPO y varios algoritmos de Deep Reinforcement Learning
  • Teorema de Bayes

NVIDIA CLARA

NVIDIA CLARA es un marco de software creado para casos de uso de atención médica. Incluye marcos completos acelerados por GPU, SDK y software de referencia para ayudar a los desarrolladores, científicos de datos e investigadores a crear sistemas de aprendizaje federados escalables, seguros y en tiempo real. Por ejemplo, CLARA está siendo utilizada actualmente por Therapixel, una startup francesa que utiliza la tecnología NVIDIA para mejorar la precisión del diagnóstico del cáncer de mama.

  • NVIDIA CLARA es adecuada para los siguientes casos de uso:
  • Clara AGX es un limpiador de dispositivos médicos.
  • Clara Discovery para el desarrollo de fármacos
  • Clara Guardián del Hospital
  • Clara Imaging se especializa en imágenes médicas.
  • Clara Parabricks para investigación genómica

Leave a Reply

Your email address will not be published. Required fields are marked *