Questi tutorial basati su colab ti guidano attraverso i concetti e le API principali di TFF usando esempi pratici. La documentazione di riferimento è reperibile nelle guide TFF .
Iniziare con l'apprendimento federato
- L'apprendimento federato per la classificazione delle immagini introduce le parti chiave dell'API di apprendimento federato (FL) e mostra come utilizzare TFF per simulare l'apprendimento federato su dati simili a MNIST federati.
- L' apprendimento federato per la generazione di testo dimostra ulteriormente come utilizzare l'API FL di TFF per perfezionare un modello pre-addestrato serializzato per un'attività di modellazione del linguaggio.
- L'ottimizzazione delle aggregazioni consigliate per l'apprendimento mostra come i calcoli FL di base in
tff.learning
possono essere combinati con routine di aggregazione specializzate che offrono robustezza, privacy differenziale, compressione e altro ancora. - La ricostruzione federata per la fattorizzazione della matrice introduce l'apprendimento federato parzialmente locale, in cui alcuni parametri client non vengono mai aggregati sul server. L'esercitazione mostra come usare l'API di apprendimento federato per addestrare un modello di fattorizzazione a matrice parzialmente locale.
Iniziare con l'analisi federata
- Private Heavy Hitters mostra come utilizzare
tff.analytics.heavy_hitters
per creare un calcolo analitico federato per scoprire private heavy hitters.
Scrittura di calcoli federati personalizzati
- Costruire il tuo algoritmo di apprendimento federato mostra come utilizzare le API di base di TFF per implementare algoritmi di apprendimento federati, utilizzando la media federata come esempio.
- La composizione di algoritmi di apprendimento mostra come utilizzare l'API di apprendimento TFF per implementare facilmente nuovi algoritmi di apprendimento federati, in particolare le varianti di media federata.
- L'algoritmo federato personalizzato con ottimizzatori TFF mostra come utilizzare
tff.learning.optimizers
per creare un processo iterativo personalizzato per la media federata. - Algoritmi federati personalizzati, Parte 1: Introduzione al Federated Core e Parte 2: Implementazione della media federata introducono i concetti chiave e le interfacce offerte dall'API Federated Core (API FC).
- L'implementazione di aggregazioni personalizzate spiega i principi di progettazione alla base del modulo
tff.aggregators
e le migliori pratiche per implementare l'aggregazione personalizzata di valori dai client al server.
Migliori pratiche di simulazione
Le simulazioni ad alte prestazioni con Kubernetes descrivono come impostare e configurare un runtime TFF ad alte prestazioni in esecuzione su Kubernetes.
La simulazione TFF con acceleratori (GPU) mostra come il runtime ad alte prestazioni di TFF può essere utilizzato con le GPU.
L'utilizzo di ClientData offre le migliori pratiche per l'integrazione dei set di dati di simulazione basati su ClientData di TFF nei calcoli TFF.
Tutorial intermedi e avanzati
La generazione di rumore casuale evidenzia alcune sottigliezze nell'uso della casualità nei calcoli decentralizzati e propone le migliori pratiche e consiglia modelli.
Invio di dati diversi a clienti particolari Con tff.federated_select viene introdotto l'operatore
tff.federated_select
e viene fornito un semplice esempio di algoritmo federato personalizzato che invia dati diversi a client diversi.L'apprendimento federato per modelli di grandi dimensioni efficiente per il client tramite federated_select e aggregazione sparsa mostra come TFF può essere utilizzato per addestrare un modello molto grande in cui ogni dispositivo client scarica e aggiorna solo una piccola parte del modello, utilizzando
tff.federated_select
e l'aggregazione sparsa.TFF per la ricerca sull'apprendimento federato: la compressione di modelli e aggiornamenti dimostra come le aggregazioni personalizzate basate sull'API tensor_encoding possono essere utilizzate in TFF.
L'apprendimento federato con privacy differenziale in TFF mostra come usare TFF per addestrare modelli con privacy differenziale a livello di utente.
Caricamento di dati remoti con TFF descrive come incorporare la logica personalizzata nel runtime TFF per caricare i dati su macchine remote.
Il supporto per JAX in TFF mostra come i calcoli JAX possono essere utilizzati in TFF, dimostrando come TFF è progettato per essere in grado di interagire con altri framework ML front-end e back-end.