secretflow.security.privacy#
Classes:
|
Embedding differential privacy perturbation using gaussian noise |
|
global model differential privacy perturbation using gaussian noise |
|
Label differential privacy perturbation |
|
|
|
- class secretflow.security.privacy.GaussianEmbeddingDP(*args, **kwargs)[源代码]#
基类:
EmbeddingDP
Embedding differential privacy perturbation using gaussian noise
Methods:
__init__
(noise_multiplier, batch_size, ...)- param epnoise_multipliers:
Epsilon for pure DP.
call
(inputs)Add gaussion dp on embedding.
privacy_spent_rdp
(step[, orders])Get accountant using RDP.
privacy_spent_gdp
(step, sampling_type)Get accountant using GDP.
- __init__(noise_multiplier: float, batch_size: int, num_samples: int, l2_norm_clip: float = 1.0, delta: Optional[float] = None, is_secure_generator: bool = False) None [源代码]#
- 参数:
epnoise_multipliers – Epsilon for pure DP.
batch_size – Batch size.
num_samples – Number of all samples.
l2_norm_clip – The clipping norm to apply to the embedding.
is_secure_generator – whether use the secure generator to generate noise.
- class secretflow.security.privacy.GaussianModelDP(noise_multiplier: float, num_clients: int, num_updates: Optional[int] = None, l2_norm_clip: float = 1.0, delta: Optional[float] = None, is_secure_generator: bool = False, is_clip_each_layer: bool = False)[源代码]#
基类:
object
global model differential privacy perturbation using gaussian noise
Methods:
__init__
(noise_multiplier, num_clients[, ...])- param epnoise_multipliers:
Epsilon for pure DP.
privacy_spent_rdp
(step[, orders])Get accountant using RDP.
- __init__(noise_multiplier: float, num_clients: int, num_updates: Optional[int] = None, l2_norm_clip: float = 1.0, delta: Optional[float] = None, is_secure_generator: bool = False, is_clip_each_layer: bool = False) None [源代码]#
- 参数:
epnoise_multipliers – Epsilon for pure DP.
num_clients – Number of all clients.
num_updates – Number of Clients that participate in the update.
l2_norm_clip – The clipping norm to apply to the parameters or gradients.
is_secure_generator – whether use the secure generator to generate noise.
is_clip_prelayer – The 2norm of each layer is dynamically assigned.
- class secretflow.security.privacy.LabelDP(eps: float)[源代码]#
基类:
object
Label differential privacy perturbation
Methods:
__init__
(eps)- param eps:
epsilon for pure DP.
- class secretflow.security.privacy.DPStrategy(embedding_dp: Optional[EmbeddingDP] = None, label_dp: Optional[LabelDP] = None, accountant_type='rdp', sampling_type=None)[源代码]#
基类:
object
Methods:
__init__
([embedding_dp, label_dp, ...])- param embedding_dp:
Embedding dp layer.
get_privacy_spent
(step[, orders])Get accountant of all used dp mechanism.
- __init__(embedding_dp: Optional[EmbeddingDP] = None, label_dp: Optional[LabelDP] = None, accountant_type='rdp', sampling_type=None)[源代码]#
- 参数:
embedding_dp – Embedding dp layer.
label_dp – Label dp layer.
accountant_type – Method of calculating accountant, which must be “rdp” or “gdp”.
sampling_type – Sampling type for GDP, which must be “poisson” or “uniform”.
- class secretflow.security.privacy.DPStrategyFL(model_gdp: Optional[GaussianModelDP] = None, accountant_type='rdp')[源代码]#
基类:
object
Methods:
__init__
([model_gdp, accountant_type])- param model_gdp:
global dp strategy on model parameters or gradients.
get_privacy_spent
(step[, orders])Get accountant of all used dp mechanism.
- __init__(model_gdp: Optional[GaussianModelDP] = None, accountant_type='rdp')[源代码]#
- 参数:
model_gdp – global dp strategy on model parameters or gradients.
accountant_type – Method of calculating accountant, only supports “rdp”.
secretflow.security.privacy.strategy#
Classes:
|
- class secretflow.security.privacy.strategy.DPStrategy(embedding_dp: Optional[EmbeddingDP] = None, label_dp: Optional[LabelDP] = None, accountant_type='rdp', sampling_type=None)[源代码]#
基类:
object
Methods:
__init__
([embedding_dp, label_dp, ...])- param embedding_dp:
Embedding dp layer.
get_privacy_spent
(step[, orders])Get accountant of all used dp mechanism.
- __init__(embedding_dp: Optional[EmbeddingDP] = None, label_dp: Optional[LabelDP] = None, accountant_type='rdp', sampling_type=None)[源代码]#
- 参数:
embedding_dp – Embedding dp layer.
label_dp – Label dp layer.
accountant_type – Method of calculating accountant, which must be “rdp” or “gdp”.
sampling_type – Sampling type for GDP, which must be “poisson” or “uniform”.
secretflow.security.privacy.strategy_fl#
Classes:
|
- class secretflow.security.privacy.strategy_fl.DPStrategyFL(model_gdp: Optional[GaussianModelDP] = None, accountant_type='rdp')[源代码]#
基类:
object
Methods:
__init__
([model_gdp, accountant_type])- param model_gdp:
global dp strategy on model parameters or gradients.
get_privacy_spent
(step[, orders])Get accountant of all used dp mechanism.
- __init__(model_gdp: Optional[GaussianModelDP] = None, accountant_type='rdp')[源代码]#
- 参数:
model_gdp – global dp strategy on model parameters or gradients.
accountant_type – Method of calculating accountant, only supports “rdp”.