Revisiting Differentially Private Regression: Lessons From Learning Theory and their Consequences

Xi Wu, Matthew Fredrikson, Wentao Wu, Somesh Jha, Jeffrey F. Naughton

Add an identifier
Abstract:Private regression has received attention from both database and security communities. Recent work by Fredrikson et al. (USENIX Security 2014) analyzed the functional mechanism (Zhang et al. VLDB 2012) for training linear regression models over medical data. Unfortunately, they found that model accuracy is already unacceptable with differential privacy when $\varepsilon = 5$. We address this issue, presenting an explicit connection between differential privacy and stable learning theory through which a ...
Implementing an algorithm
1
1
Entering edit mode
2.3 years ago
FrankS ▴ 55

I am trying to implement algorithm 2 and would like to know a simple way to randomly sample points from the unit sphere in d-dimensional Euclidean space which I can code up in python.

Random Sampling • 1.2k views
ADD COMMENT
2
Entering edit mode
2.3 years ago
Andy 46

Use a distibution that's symmetric around the origin and normalize the results so they lie on the sphere. E.g. you can use a Gaussian. Here's some code.

def sample_sphere_uniformly(d, n_samples):
    """Sample uniformly from d-sphere.

    Args:
        d: dimension of sphere
        n: number of sample points to generate

    Returns:
        array of shape (n, d+1)

    """
    import numpy as np
    x = np.random.normal(0, 1, (n_samples, d+1))
    return x / np.linalg.norm(x, axis=1, keepdims=True)

Login before adding your answer.

Traffic: 1 users visited in the last hour