Module: tf_privacy.tree_aggregation

Tree aggregation algorithm.

TreeAggregator and EfficientTreeAggregator compute cumulative sums of noise based on tree aggregation. When using an appropriate noise function (e.g., Gaussian noise), it allows for efficient differentially private algorithms under continual observation, without prior subsampling or shuffling assumptions. This module implements the core logic of tree aggregation in Tensorflow, which serves as helper functions for tree_aggregation_query. This module and helper functions are publicly accessible.


class EfficientTreeAggregator: Efficient tree aggregator to compute accumulated noise.

class GaussianNoiseGenerator: Gaussian noise generator with counter as pseudo state.

class StatelessValueGenerator: A wrapper for stateless value generator that calls a no-arg function.

class TreeAggregator: Tree aggregator to compute accumulated noise in private algorithms.

class TreeState: Class defining state of the tree.

class ValueGenerator: Base class establishing interface for stateful value generation.


get_step_idx(...): Returns the current leaf node index based on TreeState.level_buffer_idx.