Class FedNovaHeterogeneityCorrection<T>
- Namespace
- AiDotNet.FederatedLearning.Heterogeneity
- Assembly
- AiDotNet.dll
FedNova-style normalization of client updates by local steps.
public sealed class FedNovaHeterogeneityCorrection<T> : FederatedHeterogeneityCorrectionBase<T>, IFederatedHeterogeneityCorrection<T>
Type Parameters
TNumeric type.
- Inheritance
-
FedNovaHeterogeneityCorrection<T>
- Implements
- Inherited Members
Remarks
For Beginners: FedNova reduces bias from clients doing different amounts of local work by normalizing their updates before aggregation.
Methods
Correct(int, int, Vector<T>, Vector<T>, int)
Returns corrected client parameters to be used for aggregation.
public override Vector<T> Correct(int clientId, int roundNumber, Vector<T> globalParameters, Vector<T> localParameters, int localEpochs)
Parameters
clientIdintClient identifier.
roundNumberintRound number (0-indexed).
globalParametersVector<T>Global parameter vector at the start of the round.
localParametersVector<T>Client-trained parameter vector.
localEpochsintLocal epochs used for training (proxy for local steps in simulation).
Returns
- Vector<T>
Corrected parameters.
GetCorrectionName()
Gets the name of the correction method.
public override string GetCorrectionName()