fedlib.aggregators.GeoMed
- class fedlib.aggregators.GeoMed(maxiter=100, eps=1e-06, ftol=1e-10)[source]
Bases:
objectA robust aggregator from paper “Distributed Statistical Machine Learning in Adversarial Settings: Byzantine Gradient Descent”.
GeoMedaims to find a vector that minimizes the sum of its Euclidean distances to all the update vectors:\[GeoMed := \arg\min_{\boldsymbol{z}} \sum_{k \in [K]} \lVert \boldsymbol{z} - {\Delta}_i \rVert.\]There is no closed-form solution to the
GeoMedproblem. It is approximately solved using Weiszfeld’s algorithm in this implementation to.- Parameters:
Equivalently, this is a smoothing parameter. Default 1e-6. :type ftol:
Optional[float] :param ftol: If objective value does not improve by at least this ftol fraction,terminate the algorithm, default 1e-10.