Skip to main content

Module dp

Module dp 

Source
Expand description

Differential Privacy Module (MLOPS-015)

DP-SGD implementation following Abadi et al. (2016) for privacy-preserving training.

§Toyota Way: Jidoka (Autonomation)

Built-in privacy protection stops data leakage. The privacy budget acts as an Andon system, halting training when privacy guarantees would be violated.

§Example

use entrenar::optim::dp::{DpSgdConfig, DpSgd, PrivacyBudget};
use entrenar::optim::SGD;

let config = DpSgdConfig::new()
    .with_max_grad_norm(1.0)
    .with_noise_multiplier(1.1)
    .with_budget(PrivacyBudget::new(8.0, 1e-5));

let dp_sgd = DpSgd::new(SGD::new(0.01), config);

§References

[3] Abadi et al. (2016) - Deep Learning with Differential Privacy [4] Mironov (2017) - Renyi Differential Privacy

Re-exports§

pub use accountant::compute_rdp_gaussian;
pub use accountant::rdp_to_dp;
pub use accountant::RdpAccountant;
pub use budget::PrivacyBudget;
pub use config::DpSgdConfig;
pub use dp_sgd::DpSgd;
pub use error::DpError;
pub use error::Result;
pub use gradient::add_gaussian_noise;
pub use gradient::clip_gradient;
pub use gradient::grad_norm;
pub use utils::estimate_noise_multiplier;
pub use utils::privacy_cost_per_step;

Modules§

accountant
RDP (Renyi Differential Privacy) accountant.
budget
Privacy budget tracking.
config
Configuration for DP-SGD.
dp_sgd
Differentially private SGD wrapper.
error
Error types for the Differential Privacy module.
gradient
Gradient operations for differential privacy.
utils
Utility functions for differential privacy.