Back to Search
Start Over
Symbolic conditioning of arrays in probabilistic programs
- Source :
- Proceedings of the ACM on Programming Languages. 1:1-25
- Publication Year :
- 2017
- Publisher :
- Association for Computing Machinery (ACM), 2017.
-
Abstract
- Probabilistic programming systems make machine learning more modular by automating inference . Recent work by Shan and Ramsey makes inference more modular by automating conditioning . Their technique uses a symbolic program transformation that treats conditioning generally via the measure-theoretic notion of disintegration . This technique, however, is limited to conditioning a single scalar variable. As a step towards modular inference for realistic machine learning applications, we have extended the disintegration algorithm to symbolically condition arrays in probabilistic programs. The extended algorithm implements lifted disintegration , where repetition is treated symbolically and without unrolling loops. The technique uses a language of index variables for tracking expressions at various array levels. We find that the method works well for arbitrarily-sized arrays of independent random choices, with the conditioning step taking time linear in the number of indices needed to select an element.
- Subjects :
- Theoretical computer science
Computer science
business.industry
05 social sciences
Probabilistic logic
050401 social sciences methods
Program transformation
Inference
020207 software engineering
02 engineering and technology
Modular design
0504 sociology
0202 electrical engineering, electronic engineering, information engineering
Conditioning
Element (category theory)
Safety, Risk, Reliability and Quality
business
Algorithm
Software
Subjects
Details
- ISSN :
- 24751421
- Volume :
- 1
- Database :
- OpenAIRE
- Journal :
- Proceedings of the ACM on Programming Languages
- Accession number :
- edsair.doi...........2c5c814685964280d4dcc7000d1fad35
- Full Text :
- https://doi.org/10.1145/3110255