English

PClean: Bayesian Data Cleaning at Scale with Domain-Specific Probabilistic Programming

Machine Learning 2022-11-22 v5 Artificial Intelligence Computation Machine Learning

Abstract

Data cleaning is naturally framed as probabilistic inference in a generative model of ground-truth data and likely errors, but the diversity of real-world error patterns and the hardness of inference make Bayesian approaches difficult to automate. We present PClean, a probabilistic programming language (PPL) for leveraging dataset-specific knowledge to automate Bayesian cleaning. Compared to general-purpose PPLs, PClean tackles a restricted problem domain, enabling three modeling and inference innovations: (1) a non-parametric model of relational database instances, which users' programs customize; (2) a novel sequential Monte Carlo inference algorithm that exploits the structure of PClean's model class; and (3) a compiler that generates near-optimal SMC proposals and blocked-Gibbs rejuvenation kernels based on the user's model and data. We show empirically that short (< 50-line) PClean programs can: be faster and more accurate than generic PPL inference on data-cleaning benchmarks; match state-of-the-art data-cleaning systems in terms of accuracy and runtime (unlike generic PPL inference in the same runtime); and scale to real-world datasets with millions of records.

Keywords

Cite

@article{arxiv.2007.11838,
  title  = {PClean: Bayesian Data Cleaning at Scale with Domain-Specific Probabilistic Programming},
  author = {Alexander K. Lew and Monica Agrawal and David Sontag and Vikash K. Mansinghka},
  journal= {arXiv preprint arXiv:2007.11838},
  year   = {2022}
}

Comments

Published version

R2 v1 2026-06-23T17:20:19.590Z