Qu’est-ce que l’apprentissage fédéré ?

2 avril 2025

Auteurs

Cole Stryker

Editorial Lead, AI Models

Qu’est-ce que l’apprentissage fédéré ?

L’apprentissage fédéré est une approche décentralisée de l’entraînement des modèles de machine learning (ML). Chaque nœud d’un réseau distribué entraîne un modèle global à l’aide de ses données locales, tandis qu’un serveur central agrège les mises à jour des nœuds pour améliorer le modèle.

Les modèles d’intelligence artificielle (IA) nécessitent d’énormes volumes de données. Ces jeux de données sont généralement centralisés dans un emplacement unique pour entraîner les modèles, ce qui fait que les données personnelles (PII) contenues dans les jeux de données peuvent être exposées lors de la transmission ou du stockage.

L’apprentissage fédéré permet de répondre à ces préoccupations puisque les informations sensibles restent sur le nœud, ce qui permet de protéger les données. Cela permet également un apprentissage collaboratif, lors duquel différents appareils ou serveurs contribuent à affiner les modèles d’IA.

Comment fonctionne l’apprentissage fédéré

L’apprentissage fédéré comporte 4 étapes principales :

    ● Initialisation

    ● Entraînement local

    ● Agrégation globale

    ● Itération

Initialisation

L’apprentissage fédéré commence par l’initialisation d’un modèle de machine learning global sur un serveur central. Ce modèle est la base de lancement du processus d’apprentissage fédéré.

Le serveur central distribue le modèle global aux nœuds clients connectés, qui peuvent être d’autres serveurs ou des appareils périphériques tels que les smartphones et les appareils IdO (Internet des objets. Il transmet également les informations pertinentes, notamment les variables de configuration telles que les hyperparamètres et le nombre d’époques ou passages complets à travers les données d’entraînement.

Entraînement local

Après avoir reçu le modèle global et toutes les informations nécessaires, chaque nœud client procède à l’entraînement. Le processus d’entraînement est similaire à celui de tout réseau de neurones : les nœuds clients entraînent le modèle à l’aide des seules données locales ou présentes sur l’appareil.

Une fois le nombre d’époques atteint, les nœuds clients transmettent les paramètres ou gradients du modèle mis à jour au serveur central, les modèles locaux entièrement entraînés et les données brutes n’étant pas renvoyés.

Agrégation globale

Le serveur central agrège toutes les mises à jour des nœuds clients. Parmi les différentes formes d’agrégation, l’une des plus courantes consiste à calculer la moyenne fédérée, à savoir la moyenne pondérée des mises à jour. Ces mises à jour combinées sont ensuite intégrées dans le modèle global.

Itération

Le serveur central distribue à nouveau le nouveau modèle global aux nœuds clients connectés, et le processus d’apprentissage fédéré se répète jusqu’à ce que le modèle atteigne une convergence totale ou qu’il soit entièrement entraîné.

Types d’apprentissage fédéré

L’apprentissage fédéré varie selon la structure des jeux de données et la nature des nœuds clients. Il comporte généralement les catégories suivantes :

● Inter-appareils

● Inter-silos

● Horizontal

● Vertical

Inter-appareils

L’apprentissage fédéré inter-appareils utilise des appareils dotés d’une connectivité volatile et de ressources informatiques limitées, tels que les téléphones mobiles et les appareils IdO. Ce type d’apprentissage fédéré doit prendre en compte les connexions réseau peu fiables. Comme les nœuds clients ne peuvent traiter que de petits jeux de données, un nombre important d’appareils est généralement nécessaire pour assurer l’entraînement local.1

Les entreprises e-commerce, par exemple, peuvent entraîner un moteur de recommandation sur les données utilisateurs provenant de divers appareils, afin de proposer des recommandations de produits plus personnalisées.1

Inter-silos

Contrairement à l’apprentissage fédéré inter-appareils, l’inter-silos implique un nombre limité de serveurs ou de centres de données, avec une connectivité stable et des ressources de calcul suffisamment puissantes pour stocker et traiter d’énormes volumes de données. Les nœuds clients sont traités comme des silos contenant des données personnelles, et ces dernières ne doivent ni quitter le système, ni être partagées en externe pour des raisons de confidentialité.1

L’apprentissage fédéré inter-silos peut s’avérer utile dans des secteurs tels que la finance et la santé. Par exemple, un groupement hospitalier peut entraîner un modèle partagé sur ses données patients pour améliorer le diagnostic ou la prédiction de certaines maladies. De la même manière, un groupe bancaire peut entraîner un algorithme de machine learning commun sur leurs données de transaction pour améliorer la détection des fraudes.1

Horizontal

Avec l’apprentissage fédéré horizontal, les jeux de données des nœuds clients partagent les mêmes fonctionnalités ou la même structure, mais ont des échantillons différents. Par exemple, les cliniques peuvent entraîner un modèle analytique partagé parce que chacune a les mêmes variables pour ses données d’essais cliniques, mais des valeurs distinctes pour les patients participant aux essais.

Vertical

Inversement, l’apprentissage fédéré vertical implique des jeux de données de nœuds clients qui partagent les mêmes échantillons, mais qui ont une structure ou des fonctionnalités différentes. Par exemple, un détaillant et une banque peuvent établir un partenariat pour personnaliser leur offre et entraîner un moteur de recommandation commun, car ils peuvent avoir les mêmes données client, mais des informations financières et d’achat différentes.

Avantages de l’apprentissage fédéré

La nature décentralisée de l’apprentissage fédéré offre les avantages suivants :

● Efficacité

● Protection des données renforcée

● Conformité renforcée

Efficacité

Avec l’apprentissage fédéré, nul besoin d’accéder à de grands jeux de données, ni de les transférer. Cela permet de réduire la latence et la bande passante nécessaire à l’entraînement des modèles de machine learning.

Protection des données renforcée

Pensée pour préserver la confidentialité, l’architecture des systèmes d’apprentissage fédéré garantit que les données sensibles ne quitteront jamais l’appareil. Cela permet de réduire les risques de cyberattaque et de violation de données.

La plupart des systèmes d’apprentissage fédéré mettent également en œuvre des techniques cryptographiques, comme la confidentialité différentielle et le calcul multipartite sécurisé (SMPC), pour renforcer la protection des données.

La confidentialité différentielle ajoute du bruit aux mises à jour des modèles avant de les transmettre au serveur central, tandis que le SMPC permet au serveur central d’effectuer des calculs d’agrégation sécurisés sur les mises à jour chiffrées des modèles. Ces méthodes rendent difficiles la rétro-ingénierie et l’identification des nœuds clients ayant contribué à une mise à jour, ce qui renforce la sécurité des données.

Conformité renforcée

Étant donné que les données sont conservées et traitées localement, l’apprentissage fédéré aide les entreprises à respecter leurs obligations en matière de protection des données. Cette conformité est essentielle dans des secteurs tels que la finance et la santé, qui traitent des données privées.

Design 3D de balles roulant sur une piste

Les dernières actualités et informations en matière d’IA 


La newsletter hebdomadaire Think vous apporte toute l’actualité sur l’IA, le cloud et bien d’autres sujets. 

Les défis de l’apprentissage fédéré

L’apprentissage fédéré représente un changement radical dans l’entraînement des modèles d’IA, mais il comporte également des limites. Voici quelques défis associés à l’apprentissage fédéré :

● Attaques adverses

● Surcoût lié à la communication

● Hétérogénéité

Attaques adverses

L’apprentissage fédéré est vulnérable aux attaques par empoisonnement des données, lors desquelles les acteurs de la menace injectent des données malveillantes pendant l’entraînement local ou modifient les mises à jour des modèles à des fins de transmission pour compromettre ou corrompre le modèle central.

La détection des anomalies, l’entraînement contradictoire, les contrôles d’accès stricts et d’autres mesures de sécurité permettent de se prémunir contre ces attaques.

Surcoût lié à la communication

Les échanges réguliers entre les nœuds clients et le serveur central peuvent entraîner des goulets d’étranglement importants. Afin d’améliorer la communication, il convient de mettre en œuvre des stratégies telles que la compression des mises à jour des modèles avant la transmission, la quantification et la sparsification pour relayer un sous-ensemble de mises à jour ou seulement les mises à jour essentielles. Ces stratégies doivent être conciliées avec la baisse de précision qui en découle.

Hétérogénéité

La conception décentralisée de l’apprentissage fédéré peut renforcer la diversité des données et atténuer les biais. Cependant, cela signifie également que les données ne sont pas distribuées de manière identique et qu’elles peuvent être déséquilibrées. Certains appareils peuvent avoir plus de données que d’autres, ce qui oriente le modèle global vers ces nœuds à forte densité de données.

Pour remédier à cette hétérogénéité statistique, on emploie des méthodes ou des techniques d’échantillonnage qui prennent en compte la variation de la distribution en regroupant les nœuds avec des distributions de données similaires pendant l’entraînement du modèle, ainsi que des algorithmes d’optimisation tels que FedProx, destiné aux réseaux hétérogènes.

L’hétérogénéité des systèmes est également un problème, les appareils ayant des capacités de calcul différentes. Un entraînement local adaptatif peut être appliqué pour personnaliser l’entraînement du modèle en fonction de ce qu’un nœud peut gérer.

Cas d’utilisation de l’apprentissage fédéré

L’apprentissage fédéré promet de contribuer à résoudre des problèmes concrets, en permettant aux entreprises de s’associer au-delà des frontières et des zones géographiques. Voici quelques secteurs qui peuvent bénéficier de l’apprentissage fédéré :

● Finance

● Santé

● Vente au détail et fabrication

● Gestion urbaine

Finances

Les institutions financières peuvent collaborer pour diversifier les données utilisées dans les modèles d’analyse du risque de crédit et faciliter l’accès des groupes défavorisés. Elles peuvent également utiliser l’apprentissage fédéré pour fournir des conseils bancaires et d’investissement plus personnalisés, améliorant ainsi l’expérience utilisateur.

Soins de santé

Les hôpitaux et les instituts de recherche peuvent entraîner des modèles d’apprentissage profond partagés afin de faciliter la découverte de médicaments pour traiter les maladies rares. Les systèmes d’apprentissage fédéré permettent également de trouver de meilleurs protocoles de soin et d’améliorer la qualité de vie des communautés sous-représentées.

Vente au détail et fabrication

Les détaillants peuvent utiliser l’apprentissage fédéré pour suivre les ventes et les stocks sur plusieurs sites sans divulguer les données de leurs clients, ce qui leur permet d’optimiser leur stock et de réduire le gaspillage. Les fabricants, quant à eux, peuvent agréger les données provenant de différentes parties de la chaîne d’approvisionnement pour optimiser la logistique.

Gestion urbaine

Les villes connectées peuvent tirer parti de l’apprentissage fédéré pour recueillir des informations à partir des innombrables appareils et capteurs disséminés dans les zones urbaines, tout en protégeant les données des habitants. Ces informations peuvent être utilisées pour mieux gérer le trafic ou pour surveiller l’état de l’environnement (par exemple, la qualité de l’air et de l’eau). 

Cadres d’apprentissage fédéré

Appliquer l’apprentissage fédéré peut s’avérer complexe, mais plusieurs cadres permettent d’entraîner les modèles sur des données décentralisées et de rationaliser les workflows serveurs et clients. Voici quelques exemples de cadres d’apprentissage fédéré parmi les plus utilisés :

● Flower

● IBM Federated Learning

● NVIDIA FLARE

● OpenFL

● TensorFlow Federated

Flower

Flow est un cadre open source pour l’IA collaborative et la science des données. Il permet de créer des systèmes d’IA fédérés, avec de nombreux clients connectés. Il est compatible avec la plupart des cadres de machine learning et interopérable avec un large éventail de plateformes matérielles et de systèmes d’exploitation.

IBM Federated Learning

IBM Federated Learning est un cadre pour l’apprentissage fédéré en entreprise. Il fonctionne avec divers algorithmes de machine learning, notamment les arbres de décision, les classifieurs bayésiens naïfs, les réseaux de neurones et l’apprentissage par renforcement.

IBM Federated Learning dispose également d’une riche bibliothèque de méthodes de fusion pour combiner les mises à jour des modèles, et prend en charge diverses approches d’équité pour lutter contre les biais de l’IA.

NVIDIA FLARE

NVIDIA FLARE (Federated Learning Application Runtime Environment) est un kit de développement logiciel open source et agnostique, conçu pour l’apprentissage fédéré.

Il intègre des workflows d’entraînement et d’évaluation, des algorithmes préservant la confidentialité, ainsi que des algorithmes d’apprentissage pour le calcul de la moyenne pondérée et FedProx. NVIDIA FLARE propose également des outils de gestion pour l’orchestration et la surveillance.

OpenFL

OpenFL est un cadre d’apprentissage fédéré open source basé sur Python, créé par Intel et désormais intégré à la Linux Foundation. OpenFL fonctionne avec des cadres d’apprentissage profond tels que PyTorch et des bibliothèques de machine learning, dont TensorFlow. Parmi ses fonctionnalités de sécurité, citons la confidentialité différentielle et la prise en charge des environnements d’exécution de confiance matériels.

TensorFlow Federated

TensorFlow Federated (TFF) est un cadre open source développé par Google à des fins de machine learning sur des données décentralisées. Les interfaces de programmation d’applications (API) TFF sont divisées en deux couches :

● L’API d’apprentissage fédéré est la couche de haut niveau qui facilite la mise en œuvre de tâches d’apprentissage fédéré telles que la formation ou l’évaluation à l’aide de modèles de machine learning existants.

● L’API Federated Core est la couche de bas niveau, qui permet de créer de nouveaux algorithmes d’apprentissage fédéré.

 

Mixture of Experts | 25 avril, épisode 52

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l’actualité et des dernières tendances dans le domaine de l’IA.

Notes de bas de page

Tous les liens sont externes au site ibm.com

1 Apprentissage fédéré intersilo et inter-appareil sur Google Cloud, Google Cloud, 3 juin 2024.

Solutions connexes
IBM watsonx.ai

Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Bénéficiez d’un accès centralisé aux fonctionnalités couvrant le cycle de développement de l’IA. Produisez des solutions IA puissantes offrant des interfaces conviviales, des workflows et un accès à des API et SDK conformes aux normes du secteur.

Découvrir watsonx.ai Réserver une démo en direct