[24 de noviembre de 2024] ¡Agregamos un nuevo sintetizador SOTA HP REaLTabFormer a SynMeter! ¡Pruébalo!
[18 de septiembre de 2024] ¡Agregamos un nuevo sintetizador SOTA HP TabSyn a SynMeter! ¡Pruébalo!
Cree un nuevo entorno y configuración de conda:
conda create -n synmeter python==3.9
conda activate synmeter
pip install -r requirements.txt # install dependencies
pip install -e . # package the library
Cambie el diccionario base en ./lib/info/ROOT_DIR
:
ROOT_DIR = root_to_synmeter
./dataset
../exp/evaluators
.python scripts/tune_evaluator.py -d [dataset] -c [cuda]
Proporcionamos un objetivo de sintonización unificado para la sintonización de modelos, por lo tanto, se pueden sintonizar todo tipo de sintetizadores con un solo comando:
python scripts/tune_synthesizer.py -d [dataset] -m [synthesizer] -s [seed] -c [cuda]
Después del ajuste, se debe registrar una configuración en /exp/dataset/synthesizer
, SynMeter puede usarla para entrenar y almacenar el sintetizador:
python scripts/train_synthesizer.py -d [dataset] -m [synthesizer] -s [seed] -c [cuda]
Evaluación de la fidelidad de los datos sintéticos:
python scripts/eval_fidelity.py -d [dataset] -m [synthesizer] -s [seed] -t [target]
Evaluación de la privacidad de los datos sintéticos:
python scripts/eval_privacy.py -d [dataset] -m [synthesizer] -s [seed]
Evaluación de la utilidad de los datos sintéticos:
python scripts/eval_utility.py -d [dataset] -m [synthesizer] -s [seed]
Los resultados de las evaluaciones deben guardarse en el diccionario correspondiente /exp/dataset/synthesizer
.
Una ventaja de SynMeter es proporcionar la forma más sencilla de agregar nuevos algoritmos de síntesis; se necesitan tres pasos:
./synthesizer/my_synthesiszer
./exp/base_config
../synthesizer
, que contenga tres funciones: train
, sample
y tune
.¡Entonces podrás sintonizar, ejecutar y probar el nuevo sintetizador!
Método | Tipo | Descripción | Referencia |
---|---|---|---|
MST | PD | El método utiliza modelos gráficos probabilísticos para conocer la dependencia de los marginales de baja dimensión para la síntesis de datos. | Papel, Código |
PrivSyn | PD | Un sintetizador DP no paramétrico, que actualiza iterativamente el conjunto de datos sintéticos para que coincida con los márgenes de ruido objetivo. | Papel, Código |
Método | Tipo | Descripción | Referencia |
---|---|---|---|
CTGAN | caballos de fuerza | Una red adversarial generativa condicional que puede manejar datos tabulares. | Papel, Código |
PATE-GAN | PD | El método utiliza el marco de agregación privada de conjuntos de profesores (PATE) y lo aplica a las GAN. | Papel, Código |
Método | Tipo | Descripción | Referencia |
---|---|---|---|
TVAE | caballos de fuerza | Una red VAE condicional que puede manejar datos tabulares. | Papel, Código |
Método | Tipo | Descripción | Referencia |
---|---|---|---|
PestañaDDPM | caballos de fuerza | Utilice el modelo de difusión para la síntesis de datos tabulares. | Papel, Código |
Sincronización de pestañas | caballos de fuerza | Utilice el modelo de difusión latente y VAE para la síntesis. | Papel, Código |
MesaDifusión | PD | Generación de conjuntos de datos tabulares bajo privacidad diferencial. | Papel, Código |
Método | Tipo | Descripción | Referencia |
---|---|---|---|
Excelente | caballos de fuerza | Utilice LLM para ajustar un conjunto de datos tabulares. | Papel, Código |
REaLTabFormer | caballos de fuerza | Utilice GPT-2 para conocer la dependencia relacional de los datos tabulares. | Papel, Código |
Métricas de fidelidad : consideramos la distancia de Wasserstein como una métrica de fidelidad basada en principios, que se calcula mediante todos los marginales unidireccionales y bidireccionales.
Métricas de privacidad : diseñamos el Membership Disclosure Score (MDS) para medir los riesgos de privacidad de los miembros de los sintetizadores HP y DP.
Métricas de utilidad : utilizamos la afinidad del aprendizaje automático y el error de consulta para medir la utilidad de los datos sintéticos.
Consulte nuestro documento para obtener detalles y usos.
En este proyecto se utilizan muchos algoritmos de síntesis excelentes y bibliotecas de código abierto: