Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Gaussian Mechanism Local DP for SKLearn Pipeline

Abierto
#387 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
python, scikit-learn

Línea de trabajo

Start with src/pydp/ml/mechanisms/sklearn_pipeline.py and inspect the existing LaplaceMechanism implementation, then review the linked SKLearn_Pipeline_Laplace_Mechanism.ipynb example. Determine the Gaussian Mechanism initialization parameters from the PyDP API and how it should fit into sklearn's Pipeline. Done means a GaussianMechanism operator can be used in a Pipeline as shown in the issue.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Type: New Feature :heavy_plus_sign:

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.

Lenguaje dominante
Python
Estrellas
550
Forks
143
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de OpenMined/PyDP

Todos los issues de OpenMined/PyDP

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.