Ces didacticiels basés sur Colab vous guident à travers les principaux concepts et API TFF à l'aide d'exemples pratiques. La documentation de référence se trouve dans les guides TFF .
Débuter avec l'apprentissage fédéré
- L'apprentissage fédéré pour la classification d'images présente les éléments clés de l'API d'apprentissage fédéré (FL) et montre comment utiliser TFF pour simuler l'apprentissage fédéré sur des données de type MNIST fédérées.
- L'apprentissage fédéré pour la génération de texte montre en outre comment utiliser l'API FL de TFF pour affiner un modèle pré-entraîné sérialisé pour une tâche de modélisation de langage.
- Le réglage des agrégations recommandées pour l'apprentissage montre comment les calculs FL de base dans
tff.learning
peuvent être combinés avec des routines d'agrégation spécialisées offrant robustesse, confidentialité différentielle, compression, etc. - La reconstruction fédérée pour la factorisation matricielle introduit un apprentissage fédéré partiellement local, où certains paramètres client ne sont jamais agrégés sur le serveur. Le didacticiel montre comment utiliser l'API d'apprentissage fédéré pour former un modèle de factorisation matricielle partiellement local.
Premiers pas avec l'analyse fédérée
- Private Heavy Hitters montre comment utiliser
tff.analytics.heavy_hitters
pour créer un calcul analytique fédéré afin de découvrir les gros frappeurs privés.
Écriture de calculs fédérés personnalisés
- Construire votre propre algorithme d'apprentissage fédéré montre comment utiliser les API TFF Core pour implémenter des algorithmes d'apprentissage fédéré, en utilisant la moyenne fédérée comme exemple.
- Composer des algorithmes d'apprentissage montre comment utiliser l'API d'apprentissage TFF pour implémenter facilement de nouveaux algorithmes d'apprentissage fédérés, en particulier des variantes de moyenne fédérée.
- Algorithme fédéré personnalisé avec optimiseurs TFF montre comment utiliser
tff.learning.optimizers
pour créer un processus itératif personnalisé pour la moyenne fédérée. - Custom Federated Algorithms, Part 1: Introduction to the Federated Core et Part 2: Implémentation de la moyenne fédérée présentent les concepts et interfaces clés offerts par l'API Federated Core (API FC).
- Implémentation d'agrégations personnalisées explique les principes de conception du module
tff.aggregators
et les meilleures pratiques pour implémenter une agrégation personnalisée de valeurs des clients au serveur.
Bonnes pratiques de simulation
La simulation TFF avec accélérateurs (GPU) montre comment le temps d'exécution hautes performances de TFF peut être utilisé avec des GPU.
Travailler avec ClientData donne les meilleures pratiques pour intégrer les ensembles de données de simulation basés sur ClientData de TFF dans les calculs TFF.
Tutoriels intermédiaires et avancés
La génération de bruit aléatoire souligne certaines subtilités de l'utilisation du caractère aléatoire dans les calculs décentralisés, et propose les meilleures pratiques et recommande des modèles.
Envoi de données différentes à des clients particuliers avec tff.federated_select présente l'opérateur
tff.federated_select
et donne un exemple simple d'un algorithme fédéré personnalisé qui envoie différentes données à différents clients.L'apprentissage fédéré de grands modèles efficace pour le client via federated_select et l'agrégation sparse montre comment TFF peut être utilisé pour former un très grand modèle où chaque appareil client ne télécharge et ne met à jour qu'une petite partie du modèle, à l'aide de
tff.federated_select
et de l'agrégation sparse.TFF for Federated Learning Research : Model and Update Compression montre comment les agrégations personnalisées basées sur l' API tensor_encoding peuvent être utilisées dans TFF.
L'apprentissage fédéré avec confidentialité différentielle dans TFF montre comment utiliser TFF pour former des modèles avec une confidentialité différentielle au niveau de l'utilisateur.
La prise en charge de JAX dans TFF montre comment les calculs JAX peuvent être utilisés dans TFF, démontrant comment TFF est conçu pour pouvoir interagir avec d'autres frameworks ML frontend et backend.