View source on GitHub |
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.
Classes
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.
Functions
get_step_idx(...)
: Returns the current leaf node index based on TreeState.level_buffer_idx
.