Table of Contents

Class FedYogiServerOptimizer<T>

Namespace
AiDotNet.FederatedLearning.ServerOptimizers
Assembly
AiDotNet.dll

FedYogi server optimizer.

public sealed class FedYogiServerOptimizer<T> : FederatedServerOptimizerBase<T>, IFederatedServerOptimizer<T>

Type Parameters

T
Inheritance
FedYogiServerOptimizer<T>
Implements
Inherited Members

Remarks

For Beginners: Yogi is similar to Adam, but it can be more stable when updates are noisy or sparse.

Constructors

FedYogiServerOptimizer(double, double, double, double)

public FedYogiServerOptimizer(double learningRate = 1, double beta1 = 0.9, double beta2 = 0.999, double epsilon = 1E-08)

Parameters

learningRate double
beta1 double
beta2 double
epsilon double

Methods

GetOptimizerName()

Gets the name of the server optimizer.

public override string GetOptimizerName()

Returns

string

Step(Vector<T>, Vector<T>)

Updates global parameters given the current parameters and an aggregated target.

public override Vector<T> Step(Vector<T> currentGlobalParameters, Vector<T> aggregatedTargetParameters)

Parameters

currentGlobalParameters Vector<T>

The current global parameter vector.

aggregatedTargetParameters Vector<T>

The aggregated target parameter vector (e.g., FedAvg output).

Returns

Vector<T>

The updated global parameter vector.