PyDP icon indicating copy to clipboard operation
PyDP copied to clipboard

Gaussian Mechanism Local DP for SKLearn Pipeline

Open grilhami opened this issue 4 years ago • 1 comments

Feature Description

Enabling the use of Gaussian Mechanism for Local DP in SKLean Pipeline. This should be in the form of an "operator" that should be inserted between the layers in SKLearn's Pipeline class.

Additional Context

Current development for the SKLean Pipeline is in branch feature/machine-learning-1.

Preferably, the name of the "operator" imported from PyDP should be called GaussianMechanism. The use should be as seamless and convenient as possible in SKLearn's Pipeline class. For example:

pipe = Pipeline([
    ('scaler', StandardScaler()),
    ('laplace', GaussianMechanism()), 
    ('nb', GaussianNB())
])

For more examples, please have look at the notebook example of Laplace Mechanism's implementation.

As starting guidance, please refer to the source code for LaplaceMechanism in here.

Note: the Gaussian Mechanism would most likely need different parameters to be initialized compare to the Laplace Mechanism.

grilhami avatar Aug 31 '21 11:08 grilhami

Hi @grilhami. I'd like to work on this.

duynht avatar Aug 31 '23 13:08 duynht