Decision Trees with Differential Privacy
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 20/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- python
- Área
- machine-learning
Línea de trabajo
The issue names no source files, tests, or entry points, and covers several decision-tree, privacy, distributed-data, bagging, and boosting capabilities. Start by reading the linked design document and cited papers, then split the broad request into a specific, testable sub-issue. Done should mean that one agreed capability has defined scope and acceptance criteria.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Feature Description
This feature will eventually add Decision Trees into the PyDP library, along with the necessary control mechanism needed to use it as part of a pipeline.
Is your feature request related to a problem?
No, it is due to a lack of support.
What alternatives have you considered?
No alternatives currently exist.
Are you interested in working on this yourself?
Yes.
Additional Context
Given that scope of this issue is widespread, it will eventually be broken down into smaller issues. Here's an outline of the functionalities to be implemented:
-
Base Decision Tree Model
-
The base Decision Tree model: a vanilla ID3 based decision tree.
-
ID3 construction algorithm
-
Differentially Private algorithm: to construct and update the tree in a differentially private way.
-
References:
- Semi-Supervised Learning Approach to Differential Privacy by G. Jagannathan, C. Monteleoni, and K. Pillaipakkamnatt
- A Practical Differentially Private Random Decision Tree Classifier by Geetha Jagannathan, Krishnan Pillaipakkamnatt, and Rebecca N. Wright.
- Differentially Private Random Decision Forests using Smooth Sensitivity by Sam Fletcher, Md Zahidul Islam
-
Differentially Private Bagging
-
An algorithm to partition data multiple times in order to achieve differentially private subsample-and-aggregate.
-
References:
- Differentially Private Bagging: Improved utility and cheaper privacy than subsample-and-aggregate by James Jordon, Jinsung Yoon, Mihaela van der Schaar
-
Support for Horizontally and Vertically Partitioned Data
-
This will extend the functionality of the Private Decision Tree to be able to work with horizontally distributed data (by means of incremental learning) and vertically distributed data.
-
Vertically distributed data requires each stakeholder to construct a differentially private decision tree (assuming no overlap in the attributes) and makes a union.
-
References:
- A Practical Differentially Private Random Decision Tree Classifier by Geetha Jagannathan, Krishnan Pillaipakkamnatt, and Rebecca N. Wright.
-
Boosted Differential Private ensembles
-
Add boosting to differentially private decisions trees to enable ensemble formation.
-
References:
- Boosted and Differentially Private Ensembles of Decision Trees by Richard Nock, Wilko Henecka
More details can be found here as well as in the reference papers.
- 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