Module: tff.learning

Libraries for building federated learning algorithms.

Currently, tff.learning provides a few types of functionality.

The library also contains classes of models that are used for the purposes of model training. See tff.learning.models.VariableModel for the overall base class, and tff.learning.models for related model classes.

Modules

algorithms module: Libraries providing implementations of federated learning algorithms.

framework module: Libraries for developing federated learning algorithms.

metrics module: Libraries for working with metrics in federated learning algorithms.

models module: Libraries for working with models in federated learning algorithms.

optimizers module: Libraries for optimization algorithms.

programs module: Package of methods for compositional federated program logic.

templates module: Libraries of specialized processes used for building learning algorithms.

Classes

class ClientWeighting: Enum for built-in methods for weighing clients.

Functions

add_debug_measurements(...): Adds measurements suitable for debugging learning processes.

add_debug_measurements_with_mixed_dtype(...): Adds measurements suitable for debugging learning processes.

build_federated_evaluation(...): Builds the TFF computation for federated evaluation of the given model.

compression_aggregator(...): Creates aggregator with compression and adaptive zeroing and clipping.

ddp_secure_aggregator(...): Creates aggregator with adaptive zeroing and distributed DP.

dp_aggregator(...): Creates aggregator with adaptive zeroing and differential privacy.

entropy_compression_aggregator(...): Creates an aggregation factory for quantization and entropy coding.

robust_aggregator(...): Creates aggregator for mean with adaptive zeroing and clipping.

secure_aggregator(...): Creates secure aggregator with adaptive zeroing and clipping.