Suivez nous sur
Classe de maître IA :

AI 101

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

mm
Le kit de préparation mis à jour on

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

La méthode traditionnelle de formation des modèles d'IA consiste à configurer des serveurs sur lesquels les modèles sont formés sur les données, souvent via l'utilisation d'une plate-forme informatique basée sur le cloud. Cependant, au cours des dernières années, une forme alternative de création de modèles est apparue, appelée apprentissage fédéré. Apprentissage fédéré apporte des modèles d'apprentissage automatique à la source de données, plutôt que d'apporter les données au modèle. L'apprentissage fédéré relie plusieurs appareils informatiques dans un système décentralisé qui permet aux appareils individuels qui collectent des données d'aider à la formation du modèle.

Dans un système d'apprentissage fédéré, les différents appareils qui font partie du réseau d'apprentissage ont chacun une copie du modèle sur l'appareil. Les différents appareils/clients former leur propre copie du modèle en utilisant les données locales du client, puis les paramètres/pondérations des modèles individuels sont envoyés à un appareil maître, ou serveur, qui agrège les paramètres et met à jour le modèle global. Ce processus de formation peut ensuite être répété jusqu'à ce qu'un niveau de précision souhaité soit atteint. En bref, l'idée derrière l'apprentissage fédéré est qu'aucune des données d'entraînement n'est jamais transmise entre les appareils ou entre les parties, seules les mises à jour liées au modèle le sont.

L'apprentissage fédéré peut être décomposé en trois étapes ou phases différentes. L'apprentissage fédéré commence généralement par un modèle générique qui agit comme une ligne de base et est formé sur un serveur central. Dans un premier temps, ce modèle générique est envoyé aux clients de l'application. Ces copies locales sont ensuite formées sur les données générées par les systèmes clients, apprenant et améliorant leurs performances.

Dans la deuxième étape, les clients envoient tous leurs paramètres de modèle appris au serveur central. Cela se produit périodiquement, selon un horaire défini.

Dans la troisième étape, le serveur agrège les paramètres appris lorsqu'il les reçoit. Une fois les paramètres agrégés, le modèle central est mis à jour et partagé à nouveau avec les clients. L'ensemble du processus se répète ensuite.

Le l'avantage d'avoir une copie du modèle sur les différents appareils est que les latences du réseau sont réduites ou éliminées. Les coûts associés au partage de données avec le serveur sont également éliminés. Les autres avantages des méthodes d'apprentissage fédéré incluent le fait que les modèles d'apprentissage fédéré sont protégés par la confidentialité et que les réponses des modèles sont personnalisées pour l'utilisateur de l'appareil.

Des exemples de modèles d'apprentissage fédéré comprennent des moteurs de recommandation, des modèles de détection de fraude et des modèles médicaux. Les moteurs de recommandation de médias, du type utilisé par Netflix ou Amazon, pourraient être entraînés sur des données recueillies auprès de milliers d'utilisateurs. Les appareils clients formeraient leurs propres modèles séparés et le modèle central apprendrait à faire de meilleures prédictions, même si les points de données individuels seraient uniques aux différents utilisateurs. De même, les modèles de détection de fraude utilisés par les banques peuvent être formés sur des modèles d'activité provenant de nombreux appareils différents, et une poignée de banques différentes pourraient collaborer pour former un modèle commun. En termes de modèle d'apprentissage fédéré médical, plusieurs hôpitaux pourraient s'associer pour former un modèle commun qui pourrait reconnaître les tumeurs potentielles grâce à des analyses médicales.

Types d'apprentissage fédéré

Schémas d'apprentissage fédéré tombent généralement dans l'une des deux classes différentes: systèmes multipartites et systèmes à parti unique. Les systèmes d'apprentissage fédérés à partie unique sont appelés «partie unique» car une seule entité est responsable de la supervision de la capture et du flux de données sur tous les appareils clients du réseau d'apprentissage. Les modèles qui existent sur les appareils clients sont formés sur des données avec la même structure, bien que les points de données soient généralement uniques aux différents utilisateurs et appareils.

Contrairement aux systèmes à parti unique, les systèmes multipartites sont gérés par deux ou plusieurs entités. Ces entités coopèrent pour former un modèle partagé en utilisant les divers appareils et ensembles de données auxquels elles ont accès. Les paramètres et les structures de données sont généralement similaires sur les appareils appartenant aux multiples entités, mais ils ne doivent pas nécessairement être exactement les mêmes. Au lieu de cela, un prétraitement est effectué pour standardiser les entrées du modèle. Une entité neutre pourrait être employée pour agréger les pondérations établies par les appareils propres aux différentes entités.

Cadres pour l'apprentissage fédéré

Les cadres populaires utilisés pour l'apprentissage fédéré comprennent Tensorflow fédéré, Facilitateur de technologie d'IA fédérée (FATE)et SyftPy. PySyft est une bibliothèque d'apprentissage fédéré open source basée sur la bibliothèque d'apprentissage en profondeur PyTorch. PySyft est destiné à garantir un apprentissage en profondeur privé et sécurisé sur les serveurs et les agents à l'aide de calculs cryptés. Pendant ce temps, Tensorflow Federated est un autre framework open source construit sur la plate-forme Tensorflow de Google. En plus de permettre aux utilisateurs de créer leurs propres algorithmes, Tensorflow Federated permet aux utilisateurs de simuler un certain nombre d'algorithmes d'apprentissage fédéré inclus sur leurs propres modèles et données. Enfin, FATE est également un framework open source conçu par Webank AI, et il est destiné à fournir à l'écosystème Federated AI un cadre informatique sécurisé.

Défis d'apprentissage fédéré

Comme l'apprentissage fédéré est encore assez naissant, un certain nombre de défis doivent encore être négociés pour qu'il atteigne son plein potentiel. Les capacités de formation des dispositifs de pointe, l'étiquetage et la normalisation des données, ainsi que la convergence des modèles sont des obstacles potentiels aux approches d'apprentissage fédéré.

Les capacités de calcul des dispositifs périphériques, lorsqu'il s'agit de formation locale, doivent être prises en compte lors de la conception d'approches d'apprentissage fédéré. Alors que la plupart des smartphones, tablettes et autres appareils compatibles IoT sont capables de former des modèles d'apprentissage automatique, cela entrave généralement les performances de l'appareil. Des compromis devront être faits entre la précision du modèle et les performances de l'appareil.

La labellisation et la standardisation des données est un autre défi que les systèmes d'apprentissage fédéré doivent surmonter. Les modèles d'apprentissage supervisé nécessitent des données de formation clairement et systématiquement étiquetées, ce qui peut être difficile à faire sur les nombreux appareils clients qui font partie du système. Pour cette raison, il est important de développer des pipelines de données de modèle qui appliquent automatiquement des étiquettes de manière standardisée en fonction des événements et des actions des utilisateurs.

Le temps de convergence des modèles est un autre défi pour l'apprentissage fédéré, car les modèles d'apprentissage fédéré mettent généralement plus de temps à converger que les modèles formés localement. Le nombre d'appareils impliqués dans la formation ajoute un élément d'imprévisibilité à la formation du modèle, car des problèmes de connexion, des mises à jour irrégulières et même des durées d'utilisation différentes des applications peuvent contribuer à augmenter le temps de convergence et à réduire la fiabilité. Pour cette raison, les solutions d'apprentissage fédéré sont généralement plus utiles lorsqu'elles offrent des avantages significatifs par rapport à la formation centralisée d'un modèle, comme les cas où les ensembles de données sont extrêmement volumineux et distribués.

Photo : Jeromemetronome via Wikimedia Commons, CC By SA 4.0 (https://en.wikipedia.org/wiki/File:Federated_learning_process_central_case.png)