Gaussian Mechanism Local DP for SKLearn Pipeline
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
- Área
- machine-learning
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
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
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de OpenMined/PyDP
-
Type: New Feature :heavy_plus_sign:
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Type: Question :grey_question:
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
-
Type: Question :grey_question:
Dificultad 4/5 3-5 días Aptitud para principiantes 32/100
-
Type: Improvement :chart_with_upwards_trend:
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
-
Type: New Feature :heavy_plus_sign:
Dificultad 3/5 1-2 días Aptitud para principiantes 38/100
Todos los issues de OpenMined/PyDP
Issues similares
-
bug priority:low
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
CyberAgent/psd2svg#436 ·
-
area/install-update comp/cli comp/desktop P3 sweeper:risk-compatibility type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
NousResearch/hermes-agent#122386 · 1 comentario ·
-
ai-generated
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
vllm-project/production-stack#1105 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100