← Back
Home › Systems › AI and ML infrastructure

federated-learning

federated learning

Gboard

SystemTechniques · 7Primitives · 20 federated-learning Dp sgdml-training · medium: Differentially private SGD: per-example gradient clipping plus Gaussian noise, with privacy accountingFederated averagingml-training · medium: FedAvg: clients train locally, server averages weighted updates; handling non-IID data and stragglersDifferential privacysecurity · medium: Calibrated noise (Laplace/Gaussian) and privacy budgets for aggregate releasesPrivacy budget accountingsecurity · medium: Tracking cumulative epsilon/delta under composition (basic, advanced, Renyi/moments accountant)Remote attestationsecurity · medium: Hardware-signed evidence (TPM quotes, SGX/TDX quotes, SEV-SNP reports, key attestation) proving device, key or enclave state to a verifierSecure aggregationsecurity · medium: Summing client vectors so the server sees only the total: pairwise masks, secret-shared seeds, dropout recoveryMeasured bootsecurity · medium: Each boot stage hashes the next into TPM PCRs (extend) and logs events for later attestationSGD with momentumml-training · low: Gradient descent plus a decaying velocity buffer that averages minibatch noise and speeds up progress along shallow, consistent directions.›Gradient compressionml-training · low: Reducing communicated updates by quantization, top-k sparsification and error feedbackECDH key exchange (X25519, P-256)security · low: Each side multiplies the other's public curve point by its own scalar and both get the same point; always validate the peer key and run the result through a KDF.›Shamir secret sharing (k-of-n)security · low: Split a secret into n shares so any k reconstruct it and any k-1 reveal nothing at all, using a random polynomial over a finite field.›AdamWml-training · low: Adam's per-parameter adaptive steps with weight decay applied directly to the weights; the default optimizer for transformers and LLM pretraining.›AEAD (AES-GCM, ChaCha20-Poly1305)security · low: Authenticated encryption that encrypts and detects tampering in one call; the only kind of symmetric encryption you should use.›Exponential backoff with jittersystems · low: Retry after delays that grow geometrically and are randomized, so failed clients spread out instead of hammering a recovering service in synchronized waves.›Gradient clippingml-training · low: Clipping gradients by global norm (or value) to prevent loss spikes; interaction with mixed precisionCsprngsecurity · low: OS-backed cryptographically secure random numbers (getrandom), and when a fast PRNG is not enoughWeight synchronizationml-training · low: Pushing updated policy weights from trainers to inference/actor workers (NCCL broadcast, sharded resharding)Floating-point errornumerics · low: How IEEE 754 rounding error accumulates and how to contain it: compensated (Kahan/Neumaier) and pairwise summation, error-free transformations with FMA, ULP comparisons.›Conditional writesdistributed · low: Put-if-absent / if-match compare-and-swap on objects or keys as a commit primitiveTrusted execution environmentssecurity · low: Enclaves/confidential VMs with remote attestation for computing on sealed dataX509 certificatessecurity · low: Certificate chains, path validation, SANs, revocation and short-lived issuanceFinite field arithmeticnumerics · low: Prime-field and extension-field arithmetic (Montgomery form, Goldilocks, BabyBear), vectorizedPRNGs (PCG, xoshiro)numerics · low: Small, fast, statistically strong non-cryptographic generators: PCG32 and xoshiro256**, with seeding, parallel streams and unbiased ranges.›+ 4 more primitives

Similar systems

Share the most building blocks with this one.