Releases: brubinstein/diffpriv
Releases · brubinstein/diffpriv
diffpriv v0.4.2
Released to CRAN.
- Virtual
DPMechclass for representing (largely sensitivity-induced) mechanisms for differential privacy.DPParamsEpsand subclasses for representing privacy budget parameters. sensitivitySampler()method ofDPMechimplements the Rubinstein & Alda (2017) technique for estimating sensitivity of non-private target functions given toDPMech. Uses anoracleargument that samples random databases; and built-insensitivityNorm()methods housed in objects.DPMechLaplaceclass implementing the Laplace mechanism, which achieves epsilon-differential privacy by adding Laplace noise to numeric responses calibrated by L1-norm sensitivity. Objects can be initialized without specifying non-privatetargetresponse dimensiondim. In such cases, calls to the sensitivity sampler will perform an additionaltargetprobe to determinedim.DPMechGaussianclass implementing the Gaussian mechanism, which achieves (epsilon,delta)-differential privacy by adding Gaussian noise to numeric responses calibrated by L2-norm sensitivity.DPMechNumericclass implements common code for numeric response mechanisms such asDPMechLaplaceandDPMechGaussian, particularly aroundreleaseResponse()method.DPMechExponentialclass implementing the exponential mechanism for private maximization of atargetutility function.DPMechBernsteinclass implementing the Bernstein mechanism of Alda and Rubinstein (AAAI'2017), for privately releasing functions.S3constructor andpredict()generic implementation for fitting (non-iterated) Bernstein polynomial function approximations. Useful beyond differential privacy applications.roxygen2documentation; two vignettes, on:diffprivthe package overall, andbernsteinon theDPMechBernsteinclass.- GitHub Pages produced by
pkgdown - Extensive test coverage via
testthat, integration with travis CI, code coverage by codecov.