Interface IFederatedServerOptimizer<T>
- Namespace
- AiDotNet.Interfaces
- Assembly
- AiDotNet.dll
Applies a server-side optimization step in federated learning (FedOpt family).
public interface IFederatedServerOptimizer<T>
Type Parameters
TNumeric type.
Remarks
For Beginners: In classic FedAvg, the server simply replaces the global model with the averaged client model. In FedOpt, the server treats the aggregated update like a "gradient" and applies an optimizer step (like Adam), which can improve stability and convergence, especially with non-IID data.
Methods
GetOptimizerName()
Gets the name of the server optimizer.
string GetOptimizerName()
Returns
Step(Vector<T>, Vector<T>)
Updates global parameters given the current parameters and an aggregated target.
Vector<T> Step(Vector<T> currentGlobalParameters, Vector<T> aggregatedTargetParameters)
Parameters
currentGlobalParametersVector<T>The current global parameter vector.
aggregatedTargetParametersVector<T>The aggregated target parameter vector (e.g., FedAvg output).
Returns
- Vector<T>
The updated global parameter vector.