Skip to content

Gaussian Mechanism Global DP for SKLearn Pipeline #396

@grilhami

Description

@grilhami

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.

This is the Global DP Version of the already existing Gaussian Mechanism extension for Local DP mentioned in issue #387.

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()),
    ('nb', GaussianNB()),
    ('gaussian', GaussianMechanism()),
])

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 examples mentioned above are for Local DP. Laplace Mechanism's LocalDP implementation should provide a good starting point to figure out the Global DP's version.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: New Feature ➕Introduction of a completely new addition to the codebase

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions