Builds the function for sampling from the input iterator at each round.
tff.simulation.build_uniform_sampling_fn(
sample_range: Sequence[T],
replace: bool = False,
random_seed: Optional[int] = None
) -> Callable[[int, int], List[T]]
Args |
sample_range
|
A 1-D array-like sequence, to be used as input to
np.random.choice . Samples are generated randomly from the elements of the
sequence.
|
replace
|
A boolean indicating whether the sampling is done with replacement
(True) or without replacement (False).
|
random_seed
|
If random_seed is set as an integer, then we use it as a random
seed for which clients are sampled at each round. In this case, we set a
random seed before sampling clients according to a multiplicative linear
congruential generator (aka Lehmer generator, see 'The Art of Computer
Programming, Vol. 3' by Donald Knuth for reference). This does not affect
model initialization, shuffling, or other such aspects of the federated
training process.
|
Returns |
A function that takes as input an integer round_num and integer size and
returns a list of size elements sampled (pseudo-)randomly from the input
sample_range .
|