Il federated learning è una tecnica di addestramento distribuito dove il modello viene addestrato sui dispositivi degli utenti (telefoni, laptop, server locali) senza che i dati grezzi lascino mai il dispositivo. Solo gli aggiornamenti del modello tornano al server centrale.
Inventato da Google nel 2016 per Gboard (la tastiera Android). Quando scrivi, Gboard impara dalle tue parole per migliorare l'autocorrezione. Senza federated learning dovrebbero mandare tutto quello che scrivi a Google. Con federated learning, l'apprendimento avviene sul telefono, e solo aggiornamenti aggregati e cifrati vanno al server.
Come funziona in tre passi:
- Server centrale manda il modello attuale ai dispositivi.
- Ogni dispositivo addestra il modello sui dati locali, calcola gli aggiornamenti.
- Server raccoglie aggiornamenti (spesso aggregati con crittografia o differential privacy), aggiorna il modello globale, ricomincia.
Casi d'uso reali:
- Google Gboard: predizione testo.
- Apple Siri: miglioramento riconoscimento vocale.
- Sanità: ospedali addestrano modelli su dati pazienti senza condividere cartelle (es. consorzi di ricerca oncologica).
- Banche: rilevamento frodi senza condividere transazioni.
Limiti seri:
- Dispositivi devono avere risorse computazionali (training su iPhone non è gratis come batteria).
- Non risolve da solo tutti i problemi privacy: gli aggiornamenti possono leakare informazioni (attacchi di "model inversion"). Per questo si combina con differential privacy.
- Più lento del training centralizzato.
Per chi fa IA con dati sensibili e vuole compliance GDPR seria, è uno degli approcci più solidi. Non per tutti i casi, ma quando funziona è oro.