DP-2Stage: Adapting Language Models as Differentially Private Tabular Data Generators

Tejumade Afonja, Hui-Po Wang, Raouf Kerkouche, Mario Fritz
12/3/2024
cs.LGcs.CLcs.CR

Official code: tejuafonja/DP-2Stage (1 star, last commit 2025-05-08).

Abstract

Generating tabular data under differential privacy (DP) protection ensures theoretical privacy guarantees but poses challenges for training machine learning models, primarily due to the need to capture complex structures under noisy supervision signals. Recently, pre-trained Large Language Models (LLMs) -- even those at the scale of GPT-2 -- have demonstrated great potential in synthesizing tabular data. However, their applications under DP constraints remain largely unexplored. In this work, we address this gap by applying DP techniques to the generation of synthetic tabular data. Our findings shows that LLMs face difficulties in generating coherent text when fine-tuned with DP, as privacy budgets are inefficiently allocated to non-private elements like table structures. To overcome this, we propose DP-2Stage, a two-stage fine-tuning framework for differentially private tabular data generation. The first stage involves non-private fine-tuning on a pseudo dataset, followed by DP fine-tuning on a private dataset. Our empirical results show that this approach improves performance across various settings and metrics compared to directly fine-tuned LLMs in DP contexts. We release our code and setup at https://github.com/tejuafonja/DP-2Stage.

View on arXivView PDF

Code Implementations(1)

Official implementation of "DP-2Stage: Adapting Language Models as Differentially Private Tabular Data Generators" (Published at TMLR 2025)

10Shell, PythonNov 15, 20241 years ago
differential-privacylanguage-modelsynthetic-datatabular-data

Similar Papers

Cite this paper

@article{afonja2024dpstage,
  title  = {DP-2Stage: Adapting Language Models as Differentially Private Tabular Data Generators},
  author = {Tejumade Afonja and Hui-Po Wang and Raouf Kerkouche and Mario Fritz},
  year   = {2024},
  eprint = {2412.02467},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2412.02467v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2412.02467.svg)](https://codeofpaper.com/paper/2412.02467)

Discussion