⚠️ Credits- 🏗️ Installation and setup
- 🧑🎓 Tutorials are organized in Jupyter Notebooks as follows:
- Tabular data
- PATE-CTGAN
- DP-CTGAN
- CTGAN
- PGM and PATE-CTGAN, using generated/artificial n-class classification problem
- Tabular data
privgem
uses codes from other libraries as listed below.
Method | Original version | Notes |
---|---|---|
PATE-CTGAN | smartnoise-sdk | tabular_patectgan of privgem is based on smartnoise-sdk with some minor changes (e.g., data preproc., logging, plotting and etc). |
DP-CTGAN | smartnoise-sdk | tabular_dpctgan of privgem is based on smartnoise-sdk with some minor changes (e.g., data preproc., logging, plotting and etc). |
Private-PGM | private-data-generation | tabular_ppgm of privgem is based on private-data-generation with some minor changes. |
CTGAN | sdv-dev | currently, privgem uses a forked version of ctgan , link. |
We strongly recommend installation via Anaconda:
-
Create a new environment for
privgem
calledprivgem_py38
:
conda create -n privgem_py38 python=3.8
- Activate the environment:
conda activate privgem_py38
- Clone
privgem
source code:
git clone https://github.com/kasra-hosseini/privgem.git
- Install
privgem
dependencies:
pip install -r requirements.txt
- Finally, install
privgem
library:
cd /path/to/privgem
pip install -v -e .
Alternatively:
cd /path/to/privgem
python setup.py install
- To allow the newly created
privgem_py38
environment to show up in Jupyter Notebook:
python -m ipykernel install --user --name privgem_py38 --display-name "Python (privgem_py38)"