Federated learning : définition et principales techniques

Federated learning : définition et principales techniques Le federated learning ou apprentissage fédéré est une méthode d'apprentissage automatique utilisée en IA. Moins intrusif que d'autres méthodes, le federated learning fait des d'émules.

Qu'est-ce que le federated learning ?

Le federated learning (ou apprentissage fédéré), également appelé apprentissage collaboratif, consiste à entraîner ou réentrainer un modèle de machine learning directement sur l'appareil de l'utilisateur. Seuls les paramètres du modèle sont fédérés sur un cluster centralisé, et pas les données (textes, son, photo...) utilisées dans le processus d'apprentissage. Résultat, chaque appareil bénéficie en retour des connaissances accumulées par ses camarades. 

Les données restant localisées sur le terminal, le federated learning répond au problème grandissant de la  confidentialité des données des utilisateurs. Elle vise à remplacer, au moins partiellement, la méthode d’apprentissage centralisé appliquée sur les serveurs du fournisseur de service. Google a été le pionnier de cette méthode moins intrusive pour les utilisateurs : les apprentissages sont transmis aux serveurs, mais les données propres des utilisateurs ne quittent pas le périphérique.

Le federated learning vertical, c'est quoi ?

Le federal learning vertical, ou l’apprentissage fédéré vertical, consiste à entrainer un modèle prédictif portant sur les mêmes cibles ID (par exemple des consommateurs), mais à partir de deux bases d'apprentissage métier qui auront été fusionnées. La première pourra par exemple être celle d'une banque, et enregistrer des niveaux de revenu, des taux de crédit... Et la seconde correspondre à celle d'un site d'e-commerce, avec à la clé des historiques d'achat notamment. En bénéficiant de ces deux sources, l'idée est au final d'affiner le modèle prédictif d'achat de chacun des deux partis. 

Pour garantir la confidentialité des données des utilisateurs, un serveur de federal learning va procéder à la fusion des deux data sets en un seul, qu’il va ensuite anonymiser puis envoyer aux deux sociétés. Elles pourront ainsi mettre chacune leur modèle d’apprentissage à jour, sans pour autant connaître les données de l’autre société.

Le federated learning horizontal, qu'est-ce que c'est ?

Le federated learning horizontal, ou apprentissage fédéré horizontal, est une technique qui vise à fusionner des data sets d'apprentissage ayant le même type de caractéristiques métier, mais issus d’utilisateurs distincts.

Le federated learning horizontal permettra par exemple de créer un data set d'apprentissage sur l'épargne bancaire au niveau européen. Pour ce faire, il s’agira de fusionner les data sets d'épargne bancaire issus de plusieurs pays d’Europe. L’apprentissage s’effectue ici par le biais d'échanges entre groupes d’utilisateurs via un serveur centralisé. Ce serveur réalise une agrégation des données d'entrainement en provenance des différents groupes géographiques.

Autres techniques de federated learning

Il existe d’autres techniques de federated learning. L’apprentissage fédéré centré sur les données, par exemple : des propriétaires de données privées peuvent permettre à des organisations externes de créer leurs modèles à partir de leurs data sets propriétaires, sans pour autant partager les données brutes.

L’apprentissage fédéré cross-silo consiste quant à lui à agréger des data sets issus d’organisations très différentes (comme les banques et hôpitaux par exemple) afin de créer de manière collaborative un modèle d’apprentissage automatique original tout en préservant les données confidentielles de chaque usager.