Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Open Access Articles
  3. MIT Open Access Articles
  4. GenSQL: A Probabilistic Programming System for Querying Generative Models of Database Tables

GenSQL: A Probabilistic Programming System for Querying Generative Models of Database Tables

Thumbnail Image
Download
Name

3656409.pdf

Size

2.85 MB

Format

Adobe PDF

Checksum (MD5)

e59cf278810ee07965514ed535e8a8f2

Download all files submitted through automated deposit
3656409.zip (2.72 MB)
Author(s)
Huot, Mathieu
•
Ghavami, Matin
•
Lew, Alexander K.
•
Schaechtle, Ulrich
•
Freer, Cameron E.
•
Shelby, Zane
•
Rinard, Martin C.
•
Saad, Feras A.
•
Mansinghka, Vikash K.
Date Issued
June 20, 2024
Journal
Proceedings of the ACM on Programming Languages
Publisher
Association for Computing Machinery
Citation
Huot, Mathieu, Ghavami, Matin, Lew, Alexander K., Schaechtle, Ulrich, Freer, Cameron E. et al. 2024. "GenSQL: A Probabilistic Programming System for Querying Generative Models of Database Tables." Proceedings of the ACM on Programming Languages, 8 (PLDI).
Version
Final published version
Abstract
We present GenSQL, a probabilistic programming system for querying probabilistic generative models of database tables. By augmenting SQL with only a few key primitives for querying probabilistic models, GenSQL enables complex Bayesian inference workflows to be concisely implemented. GenSQL’s query planner rests on a unified programmatic interface for interacting with probabilistic models of tabular data. This enables using models written in a variety of probabilistic programming languages tailored to specific workflow. Probabilistic models may be automatically learned via probabilistic program synthesis, hand-designed, or a combination of both. We formalize GenSQL using a novel type system and denotational semantics; together, these enable us to establish proofs that precisely characterize its soundness guarantees. We evaluate our system on two case studies, an anomaly detection in clinical trials and conditional synthetic data generation for a virtual wet lab, and show that GenSQL captures much more accurately the complexity of the data compared to GLM and CTGAN baselines. We show that GenSQL’s declarative syntax is more concise and less error-prone compared to several alternatives. Finally, GenSQL delivers a 1.7-6.8x speedup compared to its closest competitor on a representative benchmark set, and runs in comparable time to hand-written code, in part due to its reusable optimizations and code specialization.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Creative Commons Attribution
https://creativecommons.org/licenses/by/4.0/
Persistent DSpace Link
https://hdl.handle.net/1721.1/155514
DOI of Published Version
https://doi.org/10.1145/3656409
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.