DPFedAvgFixed¶
- class DPFedAvgFixed(strategy: Strategy, num_sampled_clients: int, clip_norm: float, noise_multiplier: float = 1, server_side_noising: bool = True)[source]¶
Bases:
Strategy
封装器,用于为具有固定剪切功能的 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)使用非加权汇总法汇总训练结果。
configure_evaluate
(server_round, parameters, ...)使用指定策略配置下一轮评估。
configure_fit
(server_round, parameters, ...)配置包含差分隐私 (DP) 的下一轮训练。
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]] [source]¶
使用给定的策略汇总评估损失。
- 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]¶
使用非加权汇总法汇总训练结果。
- configure_evaluate(server_round: int, parameters: Parameters, client_manager: ClientManager) list[tuple[ClientProxy, EvaluateIns]] [source]¶
使用指定策略配置下一轮评估。
- 参数:
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]¶
配置包含差分隐私 (DP) 的下一轮训练。
下一轮训练的配置包括与 DP 相关的信息,如片段规范和噪声 stddev。
- 参数:
server_round (int) -- 本轮联邦学习。
parameters (Parameters) -- 当前(全局)模型参数。
client_manager (ClientManager) -- 客户端管理器,用于管理当前连接的所有客户端。
- 返回:
fit_configuration -- 一个元组列表。列表中的每个元组都标识了一个`ClientProxy`和该特定`ClientProxy`的`FitIns'。如果某个特定的`ClientProxy`不在此列表中,则表示该`ClientProxy`将不参加下一轮联合学习。
- 返回类型:
List[Tuple[ClientProxy, FitIns]]
- evaluate(server_round: int, parameters: Parameters) tuple[float, dict[str, bool | bytes | float | int | str]] | None [source]¶
使用策略中的评估函数评估模型参数。
- initialize_parameters(client_manager: ClientManager) Parameters | None [source]¶
使用给定的策略初始化全局模型参数。