Dans ses travaux de R&D, Datastorm explore les méthodes d’apprentissage fédéré (federated learning). Cette nouvelle approche du machine learning vise à minimiser la collecte de données personnelles et protéger la confidentialité au service d’une IA plus responsable. Un vrai changement de paradigme.
Cet article est tiré des travaux de Papa Charles Thiam
master 2 Data Science et Génie statistique – ENSAI – stagiaire chez Datastorm d’avril à septembre 2023
https://www.linkedin.com/in/papa-charles-thiam/
Ces dernières années ont été marquées par l’expansion et l’intégration de l’intelligence artificielle dans de nombreux secteurs. Une (r)évolution liée en partie à l’internet des objets et à son abondance de données, précieuse ressource pour les entreprises qui peuvent ainsi améliorer la qualité et la gestion de leurs services.
Toutefois, ces données sont souvent de nature personnelle et hautement sensibles. Le Règlement général sur la protection des données (RGPD) en encadre l’accès et l’utilisation posant alors des limites à la centralisation des données et à leur exploitation par des méthodes classiques d’apprentissage automatique (machine learning). Cette situation a motivé certains chercheurs et praticiens à explorer de nouvelles alternatives qui permettent d’analyser les données tout en respectant la vie privée des propriétaires. Parmi ces solutions, l’apprentissage fédéré (federated learning) se démarque en tant qu’approche décentralisée du machine learning.
Apprentissage fédéré : de quoi parle-t-on ?
L’apprentissage fédéré est un environnement dans lequel plusieurs entités (communément appelées « clients ») collaborent pour résoudre un problème d’apprentissage automatique sous la coordination d’un serveur central ou d’un fournisseur de service. Plutôt qu’exiger la centralisation des données pour la formation des modèles, les données brutes sont stockées chez leurs propriétaires et ne sont ni échangées, ni transférées. Le serveur central initialise un modèle et l’envoie à toutes les entités. Ainsi, chaque entité ajuste le modèle à partir de ses propres données. Les paramètres résultants sont ensuite envoyés vers le serveur central. Lorsque tous ces modèles locaux sont agrégés, le résultat est un modèle global qui fonctionne comme s’il avait été entraîné sur l’ensemble des données à la fois.
Dès lors, l’apprentissage fédéré joue un rôle important dans le développement de toute application d’intelligence artificielle impliquant les données à caractère personnel : des services financiers aux véhicules autonomes, des cas d’utilisation gouvernementale aux produits de consommation de toutes sortes. Il peut être également utilisé dans les domaines où les volumes de données sont trop larges pour être centralisés. Associé à d’autres techniques de préservation de la vie privée telle que la confidentialité différentielle, l’apprentissage fédéré peut fournir la clé pour libérer le vaste potentiel de l’IA.
L’apprentissage fédéré est un nouveau paradigme pour une IA responsable
L’apprentissage fédéré émerge comme un environnement d’apprentissage automatique dans lequel il est possible d’ajuster un modèle à partir des données distribuées tout en préservant la confidentialité. Il s’agit de former un modèle global sur un ensemble de données réparties dans des entités dotées de ressources informatiques telles que la puissance de calcul et la mémoire leur permettent de participer activement à l’apprentissage statistique. L’idée fondamentale est de partager les poids du modèle plutôt que les données. Dans ce contexte, le serveur central définit un modèle statistique qu’il partage avec l’ensemble des clients présents dans le réseau. Chaque client ajuste ensuite le modèle en fonction de ses propres données et envoie les poids du modèle local au serveur central. Ainsi, les seules informations échangées sont les poids locaux, qui sont intrinsèquement peu sensibles par nature.
Reposant sur une architecture client/serveur, la tâche d’apprentissage de ce modèle est réalisée par un ensemble d’entités. Un serveur central coordonne l’apprentissage. Le serveur sélectionne aléatoirement des clients, auxquels il transmet les poids/paramètres actuels du modèle global. Chacun de ces clients, en prenant comme paramètres initiaux ces poids, entraîne indépendamment le modèle à partir de ses propres données. Le serveur agrège les résultats en effectuant la moyenne (pondérée par la taille des jeux de données locaux) des poids résultants de chaque entraînement indépendant. Il actualise ainsi les poids du modèle global. Ces étapes constituent un tour de communication. Elles sont répétées de manière itérative afin de réaliser l’apprentissage du modèle.
Application dans les données de santé
L’utilisation la plus célèbre de l’apprentissage fédéré est le clavier Gboard développé par Google. Il s’agit d’un algorithme de recommandation pour la recherche sur Google, où il permet la priorisation des résultats, mais aussi dans les applications de messagerie le supportant, où il permet une saisie prédictive. Les données utilisées pour l’apprentissage sont particulièrement personnelles : il s’agit des données de navigation et des entrées de texte dans les applications de messagerie. Celles-ci ne sont pas remontées dans une base centralisée mais conservées sur le téléphone de l’usager, ce qui présente un réel avantage en termes de confidentialité.
Dans le domaine de la santé, où le partage des données est particulièrement encadré, l’entreprise Owkin développe des solutions d’apprentissage fédéré destinées au milieu médical. Un projet théorique d’histopathologique, l’étude des tissus dans le but d’établir un diagnostic, permet d’observer la démarche employée. Les données sont théoriquement collectées par différents centres hospitaliers où un modèle est entraîné afin de prédire la présence de métastase dans des images de tissus. La publication de cette étude se conclue par un résultat positif soulignant que le protocole permettrait une prédiction aussi fiable qu’un entraînement non fédéré. Notons que la diversité des données, obtenue par l’apprentissage fédéré en l’absence d’une base centralisée, permettrait ainsi d’atteindre une plus grande précision.
D’autres applications ont été faites dans plusieurs domaines. On peut ainsi citer l’algorithme de recommandation d’articles d’information Brave News du navigateur open source Brave. L’algorithme utilise l’historique de navigation de l’utilisateur afin de lui proposer des informations ciblées, sans collecter l’historique dans une base centralisée. L’assistance vocale de certains téléphones portables Apple utilisent également l’architecture fédérée.
Performance de l’apprentissage fédéré : les questions à se poser
Pour évaluer l’efficience et la performance d’une architecture fédérée, il est important de prendre en compte les questions suivantes :
- il est essentiel de garantir la confidentialité des données des clients tout au long du processus d’apprentissage fédéré.
- Le coût de communication est un facteur important dans les réseaux fédérés car il peut avoir un impact significatif sur l’efficacité du système.
- La distribution des données locales peut être très variée, et il est important d’évaluer dans quelle mesure l’hypothèse IID est respectée. En effet, l’hétérogénéité influe sur la convergence de certaines méthodes fédérées, et ces dernières doivent être capables de gérer l’hétérogénéité des données de manière efficace.
- Les clients peuvent avoir des ressources matérielles et réseaux très différentes, ce qui peut entraîner des problèmes de synchronisation, de performances et de convergence. Il est essentiel de concevoir des approches qui tiennent compte cette hétérogénéité des systèmes.