Table of Contents

Class BasicCompositionPrivacyAccountant

Namespace
AiDotNet.FederatedLearning.Privacy.Accounting
Assembly
AiDotNet.dll

Privacy accountant using basic (naive) composition.

public sealed class BasicCompositionPrivacyAccountant : PrivacyAccountantBase, IPrivacyAccountant
Inheritance
BasicCompositionPrivacyAccountant
Implements
Inherited Members

Remarks

For Beginners: Basic composition simply adds up privacy spend across rounds:

  • epsilon_total = sum(epsilon_round)
  • delta_total = sum(delta_round) This is simple but can be pessimistic compared to tighter accountants.

Methods

AddRound(double, double, double)

Records a single privacy event (typically one federated learning round).

public override void AddRound(double epsilon, double delta, double samplingRate)

Parameters

epsilon double

The epsilon value used for this event.

delta double

The delta value used for this event.

samplingRate double

The client participation rate for this event (0.0 to 1.0).

GetAccountantName()

Gets the name of this privacy accountant implementation.

public override string GetAccountantName()

Returns

string

GetEpsilonAtDelta(double)

Gets a reported epsilon value at a given target delta (if supported by the accountant).

public override double GetEpsilonAtDelta(double targetDelta)

Parameters

targetDelta double

The delta to report epsilon for.

Returns

double

GetTotalDeltaConsumed()

Gets the total delta consumed so far according to this accountant.

public override double GetTotalDeltaConsumed()

Returns

double

GetTotalEpsilonConsumed()

Gets the total epsilon consumed so far according to this accountant.

public override double GetTotalEpsilonConsumed()

Returns

double