**
PrivacyEngine参数说明
**
class PrivacyEngine:
def __init__(
self,
module: nn.Module,
*,
# As per PEP 3102, this forces clients to specify kwargs explicitly, not positionally
sample_rate: Optional[float] = None,
batch_size: Optional[int] = None,
sample_size: Optional[int] = None,
max_grad_norm: Union[float, List[float]],
noise_multiplier: Optional[float] = None,
alphas: List[float] = DEFAULT_ALPHAS,
secure_rng: bool = False,
batch_first: bool = True,
target_delta: float = 1e-6,
target_epsilon: Optional[float] = None,
epochs: Optional[float] = None,
loss_reduction: str = "mean",
poisson: bool = False,
**misc_settings,
):
模块:我们要连接隐私引擎的Pytorch模块
alphas:RDP订单列表
noise_mmultiplier:高斯噪声的标准偏差与添加噪声的函数的L2灵敏度
max_grad_norm:每采样渐变的最大范数。任何带范数的梯度高于此值的值将被剪裁为此值。
batch_size:训练批次大小。用于隐私会计。
sample_size:样本(数据集)的大小。用于隐私会计。
sample_rate:用于构建批次的采样率。用于隐私会计。
secure_rng:如果启用,它将使用torchcsprng
生成安全随机数。性能成本很高,因此建议您在进行实验时,请将其关闭。
batch_first:指示输入张量是否为相应模块的标志具有表示批次的第一个维度。如果设置为True,则标注位于输入张量将为[batch_size,…,…]
。
target_delta:目标增量。如果未设置,我们将为您设置。
loss_reduction:指示是否减少损失(用于聚集渐变)是求和或平均运算。可以取值“sum”或“mean”
misc_settings:init的其他参数