DPFedAvgAdaptive

class DPFedAvgAdaptive(strategy: Strategy, num_sampled_clients: int, init_clip_norm: float = 0.1, noise_multiplier: float = 1.0, server_side_noising: bool = True, clip_norm_lr: float = 0.2, clip_norm_target_quantile: float = 0.5, clip_count_stddev: float | None = None)[source]

Bases: DPFedAvgFixed

用于配置具有自适应剪切功能的 DP 策略的包装器。

Warning

This class is deprecated and will be removed in a future release.

Methods

aggregate_evaluate(server_round, results, ...)

使用给定的策略汇总评估损失。

aggregate_fit(server_round, results, failures)

汇总 DPFedAvgFixed 中的训练结果并更新片段标准。

configure_evaluate(server_round, parameters, ...)

使用指定策略配置下一轮评估。

configure_fit(server_round, parameters, ...)

配置下一轮训练。

evaluate(server_round, parameters)

使用策略中的评估函数评估模型参数。

initialize_parameters(client_manager)

使用给定的策略初始化全局模型参数。

aggregate_evaluate(server_round: int, results: list[tuple[ClientProxy, EvaluateRes]], failures: list[tuple[ClientProxy, EvaluateRes] | BaseException]) tuple[float | None, dict[str, bool | bytes | float | int | str]]

使用给定的策略汇总评估损失。

aggregate_fit(server_round: int, results: list[tuple[ClientProxy, FitRes]], failures: list[tuple[ClientProxy, FitRes] | BaseException]) tuple[Parameters | None, dict[str, bool | bytes | float | int | str]][source]

汇总 DPFedAvgFixed 中的训练结果并更新片段标准。

configure_evaluate(server_round: int, parameters: Parameters, client_manager: ClientManager) list[tuple[ClientProxy, EvaluateIns]]

使用指定策略配置下一轮评估。

参数:
  • server_round (int) -- 本轮联邦学习。

  • parameters (Parameters) -- 当前(全局)模型参数。

  • client_manager (ClientManager) -- 客户端管理器,用于管理当前连接的所有客户端。

返回:

evaluate_configuration -- 一个元组列表。列表中的每个元组都标识了一个`ClientProxy`和该特定`ClientProxy`的`EvaluateIns`。如果某个特定的 ClientProxy 未包含在此列表中,则表示该 ClientProxy 将不参与下一轮联合评估。

返回类型:

List[Tuple[ClientProxy, EvaluateIns]]

configure_fit(server_round: int, parameters: Parameters, client_manager: ClientManager) list[tuple[ClientProxy, FitIns]][source]

配置下一轮训练。

evaluate(server_round: int, parameters: Parameters) tuple[float, dict[str, bool | bytes | float | int | str]] | None

使用策略中的评估函数评估模型参数。

initialize_parameters(client_manager: ClientManager) Parameters | None

使用给定的策略初始化全局模型参数。