Supplementary Material for "A Comparative Evaluation of Privacy-Preserving Data Publication Techniques"

Read full text
Authors: Qianying Liao
Cited by: 0

Abstract

This repository contains the code, detailed privacy–utility results, and analysis notebooks used in the comparative evaluation of privacy-preserving data publication techniques. Top-level directories and files data/ Raw and intermediate data files used for privacy and utility analysis. figures/ Generated figures used in the paper (e.g., heatmaps, trade-off plots, correlation matrices). helper.py Shared utility functions used across analysis notebooks (e.g., data loading, preprocessing, metric computation, plotting helpers). privacy_gain_analysis.ipynb Analysis notebook for computing and aggregating privacy gain metrics across datasets, scenarios, and settings (QID vs. all columns). privacy_metrics_correlation_analysis.ipynb Notebook for analysing correlations among privacy metrics and between privacy and utility metrics. privacy_utility_trade_off_analysis.ipynb Notebook for studying privacy–utility trade-offs using cross-correlation matrices and visualisations. utility_loss_analysis.ipynb Analysis of downstream utility loss, including ML efficacy, optimisation utility (RAU), and count query error (CQE). README.md Documentation describing the project structure, experimental setup, and how to reproduce the results. source-code/ Contains scripts, datasets, and configuration files related to data processing and experiment execution. Datasets/ Original datasets used in the experiments. It contains the ACSIncome dataset. We, however, do exclude the patient data set from this publication, as it was retracted at the request of the data subject or controller. Hierarchies/ Attribute generalisation hierarchies used for de-identification (e.g., QID generalisation). We used the same hierarchies to calculate categorical distances for both datasets. output/ Generated outputs from experiments, including intermediate results and processed datasets. intellij/ The IntelliJ folder contains an IntelliJ project that implements de-identification using the ARX anonymisation library. From this code, a .jar file is generated, used to produce de-identified datasets. pycharm/ The PyCharm folder contains all the Python code needed to reproduce the results. This folder is structured as follows: dataset_preparation: contains code to obtain the ACSIncome dataset and preprocess both the ACSIncome and Patients datasets (results in ACSIncome.csv and Patients_cleaned.csv) privacy: contains the privacy metric implementations and additional helper functions to perform the metric calculations utility: contains the use-case-specific and statistical utility metric implementations DistanceMetrics: contains the custom distance calculations pipeline: contains code to run all experiments in order results_condenser: contains code to merge the obtained results into a limited set of files

Publication details

Journal / source
Zenodo (CERN European Organization for Nuclear Research)
Publication date
2 January 2026
Language
EN